Linguaggio di marcatura delle asserzioni di sicurezza

Article

February 1, 2023

Security Assertion Markup Language (SAML, pronunciato SAM-el, ) è uno standard aperto per lo scambio di dati di autenticazione e autorizzazione tra le parti, in particolare tra un provider di identità e un provider di servizi. SAML è un linguaggio di markup basato su XML per asserzioni di sicurezza (dichiarazioni che i fornitori di servizi utilizzano per prendere decisioni sul controllo degli accessi). SAML è anche: Un insieme di messaggi di protocollo basati su XML Un insieme di associazioni di messaggi di protocollo Un insieme di profili (che utilizzano tutto quanto sopra) Un importante caso d'uso che SAML affronta è il single sign-on (SSO) del browser web. Il single sign-on è relativamente facile da realizzare all'interno di un dominio di sicurezza (usando i cookie, ad esempio), ma estendere l'SSO tra i domini di sicurezza è più difficile e ha portato alla proliferazione di tecnologie proprietarie non interoperabili. Il profilo SSO del browser Web SAML è stato specificato e standardizzato per promuovere l'interoperabilità.

Panoramica

La specifica SAML definisce tre ruoli: il principale (tipicamente un utente umano), il provider di identità (IdP) e il provider di servizi (SP). Nel caso d'uso primario affrontato da SAML, il principale richiede un servizio al fornitore di servizi. Il provider di servizi richiede e ottiene un'asserzione di autenticazione dal provider di identità. Sulla base di tale asserzione, il fornitore di servizi può prendere una decisione di controllo degli accessi, cioè può decidere se eseguire il servizio per il principale connesso. Al centro dell'asserzione SAML c'è un soggetto (un principal nel contesto di un particolare dominio di sicurezza) su cui viene asserito qualcosa. Il soggetto è solitamente (ma non necessariamente) un essere umano. Come nella Panoramica tecnica SAML V2.0, i termini soggetto e principale sono utilizzati in modo intercambiabile in questo documento. Prima di consegnare l'asserzione basata sul soggetto all'SP, l'IdP può richiedere alcune informazioni al principale, come un nome utente e una password, per autenticare il principale. SAML specifica il contenuto dell'asserzione che viene passata dall'IdP all'SP. In SAML, un provider di identità può fornire asserzioni SAML a molti provider di servizi. Allo stesso modo, un SP può fare affidamento e fidarsi delle asserzioni di molti IdP indipendenti. SAML non specifica il metodo di autenticazione presso il provider di identità. L'IdP può utilizzare un nome utente e una password o qualche altra forma di autenticazione, inclusa l'autenticazione a più fattori. Un servizio di directory come RADIUS, LDAP o Active Directory che consente agli utenti di accedere con un nome utente e una password è una tipica fonte di token di autenticazione presso un provider di identità. I popolari servizi di social networking su Internet forniscono anche servizi di identità che in teoria potrebbero essere utilizzati per supportare gli scambi SAML.

Storia

L'OASIS Security Services Technical Committee (SSTC), che si è riunito per la prima volta nel gennaio 2001, è stato nominato "per definire un framework XML per lo scambio di informazioni di autenticazione e autorizzazione". A tal fine, la seguente proprietà intellettuale è stata conferita al SSTC durante i primi due mesi di quell'anno: Security Services Markup Language (S2ML) di Netegrity AuthXML da Securant XML Trust Assertion Service Specification (X-TASS) di VeriSign Information Technology Markup Language (ITML) di Jamcracker Basandosi su questi contributi iniziali, nel novembre 2002 OASIS ha annunciato la specifica Security Assertion Markup Language (SAML) V1.0 come standard OASIS. Nel frattempo, la Liberty Alliance, un grande consorzio di aziende, non profit e organizzazioni governative, hanno proposto un'estensione dello standard SAML chiamato Liberty Identity Federation Framework (ID-FF). Come il suo predecessore SAML, Liberty ID-FF ha proposto un framework Single Sign-On standardizzato, interdominio, basato sul Web. Inoltre, Liberty ha descritto un circolo di fiducia in cui ogni dominio partecipante è attendibile per documentare accuratamente i processi utilizzati per identificare un utente, il tipo di sistema di autenticazione utilizzato e qualsiasi politica associata all'autenticazione risultante.