Un'immersione nell'autenticazione SAML
Capire SAML nel single sign-on con Salesforce
Nell’ambito dell’autenticazione, SAML (Security Assertion Markup Language) ha un ruolo chiave nel garantire un accesso fluido tra le applicazioni. Approfondiamo SAML, capiamo la sua importanza nel single sign-on (SSO) ed esploriamo la sua implementazione con Salesforce.
Il contesto
Immagina uno scenario con due org Salesforce: un provider di identità (IDP) e un service provider. Il service provider ha i dati a cui vuoi accedere, ma invece di usare più credenziali vuoi farlo con un solo set di dati di accesso. L’idea sembra semplice, ma i meccanismi dietro le quinte possono essere complessi.

I termini chiave di SAML
Accesso dell’utente: quando un utente tenta di raggiungere una risorsa protetta del service provider prima di essersi autenticato.
Reindirizzamento: se l’utente non è autenticato, il service provider lo reindirizza al provider di identità con una richiesta SAML. Se serve, insieme può essere inviato un relay state (l’URL che l’utente voleva visitare all’inizio).
Autenticazione presso l’IDP: il provider di identità verifica l’identità dell’utente, di solito con nome utente, password o autenticazione a più fattori.
Asserzione SAML: dopo l’autenticazione, l’IDP invia un’asserzione SAML al service provider.
Fiducia del service provider: il service provider convalida l’asserzione SAML, ne estrae le informazioni sull’utente e concede l’accesso. Se prima era stato fornito un relay state, il service provider porta a quell’URL.

I vantaggi del single sign-on
Accesso semplificato: agli utenti basta un solo set di credenziali per accedere a più servizi.
Sicurezza: SAML usa firme digitali per garantire l’integrità dei dati e impedire manomissioni.
Interoperabilità: essendo un protocollo standard, SAML può dialogare con vari IDP e service provider su tecnologie diverse.
Più a fondo: esaminare i flussi SAML
Richiesta SAML: inviata dal service provider all’IDP per chiedergli di autenticare un utente.

Risposta SAML: un messaggio dell’IDP dopo l’autenticazione, che contiene i dettagli sull’utente.

Asserzioni: dichiarazioni dell’IDP sull’utente, con attributi come il nome utente o l’email.
Firme digitali: servono a verificare le asserzioni, garantendo che non siano state modificate illecitamente.
Relay state: un URL di deep link che garantisce che l’utente torni alla destinazione prevista dopo l’autenticazione.
Quando un utente avvia l’accesso, viene inviata una richiesta SAML all’IDP, che dopo la verifica restituisce un’asserzione SAML. Quando il service provider convalida questa asserzione, l’utente ottiene l’accesso desiderato.

Con strumenti come SAML Tracer per i browser si può visualizzare questo flusso. In questo modo il processo di autenticazione diventa trasparente, dalla richiesta iniziale fino al reindirizzamento finale.
Le misure di sicurezza nelle asserzioni SAML
Per contrastare le possibili minacce:
I timestamp impediscono gli attacchi di replay, facendo sì che l’asserzione SAML sia valida solo per una breve finestra.
Le firme digitali garantiscono che i dati non siano stati manomessi durante lo scambio.
Inoltre, le asserzioni possono contenere attributi dell’utente, come indirizzi email o tipi di utente, consentendo controlli di accesso più dettagliati lato service provider.
Conclusione
In sostanza, SAML è un protocollo basato su XML che contiene gli elementi chiave dell’autenticazione. Può sembrare magia, ma è il risultato di una tecnologia ben pensata per sventare attacchi come il “man-in-the-middle” o il replay.
La sua capacità di integrare più service provider con IDP basati su tecnologie diverse ne fa una pietra angolare dell’autenticazione digitale.
Resta sintonizzato
Inizia con fiducia il tuo percorso in Salesforce Identity! Per altri spunti e consigli, resta sintonizzato qui su www.SteveTechArc.com e sul canale YouTube @SteveTechArc (opens in a new tab). Iscriviti e approfondisci la tua comprensione di Salesforce Identity.
Contribuire a cambiare il mondo condividendo conoscenze sull’integrazione con altri architetti e con chi è in cammino per diventarlo!
Trascrizione realizzata con l’aiuto dell’IA
STA 3.6