Cos'è SAML? | Come funziona l'autenticazione SAML

SAML è lo standard tecnico utilizzato dai provider SSO per comunicare che un utente è autenticato.

Obiettivi di apprendimento

Dopo aver letto questo articolo sarai in grado di:

  • Definire il concetto di Security Assertion Markup Language (SAML)
  • Scoprire come SAML si inserisce in un flusso di lavoro Single Sign-On (SSO)
  • Spiegare cos'è un'asserzione SAML

Argomenti correlati


Vuoi saperne di più?

Abbonati a theNET, il riepilogo mensile di Cloudflare sulle tematiche più discusse in Internet.

Fai riferimento all'Informativa sulla privacy di Cloudflare per scoprire come raccogliamo ed elaboriamo i tuoi dati personali.

Copia link dell'articolo

Cos'è lo standard SAML?

Security Assertion Markup Language, o SAML, è un modo standardizzato per comunicare alle applicazioni e ai servizi esterni che un utente è davvero chi afferma di essere. SAML rende possibile la tecnologia Single Sign-on (SSO) fornendo un modo per autenticare un utente una volta e quindi comunicare tale autenticazione a più applicazioni. La versione più recente di SAML è SAML 2.0.

Pensa all'autenticazione SAML come a una carta di identità: un modo breve e standardizzato per mostrare l'identità di una persona. Ad esempio, anziché condurre una serie di test del DNA per confermare l'identità di qualcuno, è possibile semplicemente dare un'occhiata alla sua carta di identità.

Nel campo dell'elaborazione e delle reti, una delle principali problematiche è garantire il corretto e contemporaneo funzionamento dei sistemi e dei dispositivi realizzati da fornitori diversi per scopi diversi. Questa si chiama "interoperabilità": la capacità di macchine diverse di interagire tra loro, nonostante le loro specifiche tecniche diverse. SAML è uno standard interoperabile: è un modo ampiamente accettato per comunicare l'identità di un utente ai provider di servizi cloud.

Articolo
Aumentare la fiducia organizzativa con Zero Trust
Guida
La guida Zero Trust per garantire l'accesso alle applicazioni

Cos'è il Single Sign-On (SSO)?

Il Single Sign-On (SSO) consente agli utenti di essere autenticati per più applicazioni e servizi contemporaneamente. Con l'SSO, un utente accede a un'unica schermata di accesso e può quindi utilizzare una serie di applicazioni. Gli utenti non devono confermare la propria identità per ogni singolo servizio che utilizzano.

A tale scopo, il sistema SSO deve comunicare con ogni app esterna per comunicare loro che l'utente ha effettuato l'accesso, ed è qui che entra in gioco l'autenticazione SAML.

Come funziona l'autenticazione SAML?

Un tipico processo di autenticazione SSO coinvolge queste tre parti:

  • Principale (nota anche come "soggetto")
  • Provider di identità
  • Service provider

Principale/soggetto: si tratta quasi sempre di un utente umano che sta cercando di accedere a un'applicazione ospitata nel cloud.

Provider di identità: un provider di identità (IdP) è un servizio software cloud che archivia e conferma l'identità dell'utente, in genere tramite un processo di accesso. In sostanza, il ruolo di un IdP è dire: "Conosco questa persona ed ecco cosa può fare". Un sistema SSO può infatti essere separato dall'IdP, ma in questi casi l'SSO funge essenzialmente da rappresentante per l'IdP, quindi a tutti gli effetti sono gli stessi in un flusso di lavoro SAML.

Provider di servizi: si tratta dell'applicazione o del servizio ospitato nel cloud che l'utente desidera utilizzare. Esempi comuni includono piattaforme di posta elettronica cloud come Gmail e Microsoft Office 365, servizi di archiviazione cloud come Google Drive e AWS S3 e app di comunicazione come Slack e Skype. Di solito un utente accede direttamente a questi servizi, ma quando viene utilizzato SSO, l'utente accede invece all'SSO e viene utilizzato SAML per fornire loro l'accesso invece di un accesso diretto.

Ecco come potrebbe apparire un flusso tipico:

Il principale fa una richiesta al provider di servizi. Il provider di servizi richiede quindi l'autenticazione al provider di identità. Il provider di identità invia un'asserzione SAML al provider di servizi e il provider di servizi può quindi inviare una risposta al principale.

Se il principale (l'utente) non ha già effettuato l'accesso, il provider di identità potrebbe richiedere di accedere prima di inviare un'asserzione SAML.

Registrati
Sicurezza e velocità con qualsiasi piano Cloudflare

Cos'è un'asserzione SAML?

Un'asserzione SAML è il messaggio che indica a un provider di servizi che un utente ha effettuato l'accesso. Le asserzioni SAML contengono tutte le informazioni necessarie a un provider di servizi per confermare l'identità dell'utente, inclusa la fonte dell'asserzione, l'ora in cui è stata emessa e le condizioni che rendono valida l'asserzione.

Pensa a un'asserzione SAML come al contenuto di una referenza per un candidato: la persona che fornisce la referenza comunica quando e per quanto tempo ha lavorato con il candidato, quale era il suo ruolo e la sua opinione sul candidato. Sulla base di questa referenza, un'azienda può prendere una decisione sull'assunzione del candidato, proprio come un'applicazione SaaS o un servizio cloud può consentire o negare l'accesso dell'utente sulla base di un'asserzione SAML.

Cos'è SAML 2.0?

SAML 2.0 è la versione moderna di SAML ed è in uso dal 2005. SAML 2.0 combina diverse versioni di SAML che erano state precedentemente utilizzate. Molti sistemi supportano versioni precedenti, come SAML 1.1, per la compatibilità con le versioni precedenti, ma SAML 2.0 è lo standard moderno.

L'autenticazione SAML equivale all'autorizzazione degli utenti?

SAML è una tecnologia per l'autenticazione degli utenti, non l'autorizzazione degli utenti, e questa è una distinzione fondamentale. L'autorizzazione degli utenti è un'area separata della gestione delle identità e degli accessi.

L'autenticazione si riferisce all'identità di un utente: chi è e se la sua identità è stata confermata da un processo di accesso.

L'autorizzazione si riferisce ai privilegi o alle autorizzazioni di un utente: in particolare, quali azioni può eseguire all'interno dei sistemi di un'azienda.

Pensa alla differenza tra autenticazione e autorizzazione in questo modo: immagina che Alice partecipi a un festival musicale. All'ingresso del festival, presenta il suo biglietto e un ulteriore modulo di identificazione per dimostrare di avere il diritto di possedere il biglietto. In questo modo, le è permesso di partecipare al festival. È stata autenticata.

Tuttavia, solo perché Alice è all'interno del luogo in cui si svolge il festival non significa che possa andare ovunque e fare tutto quello che vuole. Può guardare gli spettacoli del festival, ma non può salire sul palco ed esibirsi, né può andare nel backstage e interagire con gli artisti, perché non è autorizzata a farlo. Se avesse acquistato dei pass per il backstage, o se fosse stata una performer oltre ad essere una partecipante, avrebbe avuto un maggior livello di autorizzazione.

Le tecnologie di gestione degli accessi gestiscono l'autorizzazione degli utenti. Le piattaforme di gestione degli accessi utilizzano diversi standard di autorizzazione (uno dei quali è OAuth), ma non SAML.

Cloudflare Zero Trust è un esempio di soluzione di gestione degli accessi. Cloudflare consente alle aziende di gestire l'accesso degli utenti alle risorse e ai dati interni senza l'uso di una rete privata virtuale (VPN, Virtual Private Network). Si integra facilmente con i provider SSO per offrire sia l'autorizzazione degli utenti che l'autenticazione degli utenti.

Scopri di più su SSO.

Informazioni sulla gestione degli accessi