Traduit par IA. Pas encore relu par la communauté. Lire en anglais

Blog · 26 septembre 2023 · Steve Simpson · Identité

Plongée dans l'authentification SAML

Comprendre SAML dans l’authentification unique avec Salesforce

Dans le domaine de l’authentification, SAML (Security Assertion Markup Language) joue un rôle clé pour garantir un accès fluide d’une application à l’autre. Plongeons dans SAML, comprenons son importance dans l’authentification unique (SSO) et voyons sa mise en œuvre avec Salesforce.

Le contexte

Imaginez un scénario avec deux orgs Salesforce : un fournisseur d’identité (IDP) et un fournisseur de services. Le fournisseur de services détient les données auxquelles vous voulez accéder, mais au lieu d’utiliser plusieurs identifiants, vous voulez y arriver avec un seul jeu d’identifiants. L’idée paraît simple, mais les mécanismes en coulisses peuvent être complexes.

Schéma : authentification unique d'une org Salesforce vers une autre. Le navigateur est envoyé à l'org fournisseur d'identité avec une requête SAML et revient vers l'org fournisseur de services avec une assertion SAML ; chaque org détient le certificat de l'autre et les utilisateurs sont rapprochés par leur ID de fédération

Les termes clés de SAML

Accès de l’utilisateur : quand un utilisateur tente d’atteindre une ressource protégée du fournisseur de services avant de s’être authentifié.

Redirection : si l’utilisateur n’est pas authentifié, le fournisseur de services le redirige vers le fournisseur d’identité avec une requête SAML. Si nécessaire, un relay state (l’URL que l’utilisateur voulait visiter au départ) peut être envoyé en même temps.

Authentification par l’IDP : le fournisseur d’identité vérifie l’identité de l’utilisateur, généralement par nom d’utilisateur, mot de passe ou authentification multifacteur.

Assertion SAML : après l’authentification, l’IDP envoie une assertion SAML au fournisseur de services.

Confiance du fournisseur de services : le fournisseur de services valide l’assertion SAML, en extrait les informations sur l’utilisateur et accorde l’accès. Si un relay state a été fourni plus tôt, le fournisseur de services redirige vers cette URL précise.

Synthèse SAML : le déroulement de base (accès de l'utilisateur, redirection, authentification, assertion, retour, accès accordé), les avantages et les termes clés

Les avantages de l’authentification unique

Accès simplifié : les utilisateurs n’ont besoin que d’un seul jeu d’identifiants pour accéder à plusieurs services.

Sécurité : SAML utilise des signatures numériques pour garantir l’intégrité des données et empêcher toute falsification.

Interopérabilité : protocole standard, SAML peut dialoguer avec différents IDP et fournisseurs de services, quelles que soient leurs technologies.

Plus loin : examiner les flux SAML

Requête SAML : envoyée par le fournisseur de services à l’IDP pour lui demander d’authentifier un utilisateur.

Exemple de requête SAML (AuthnRequest) de l'org fournisseur de services vers l'org fournisseur d'identité

Réponse SAML : un message de l’IDP après l’authentification, qui contient les détails sur l’utilisateur.

Exemple de réponse SAML du fournisseur d'identité, avec l'émetteur et la signature numérique

Assertions : les déclarations de l’IDP sur l’utilisateur, avec des attributs comme le nom d’utilisateur ou l’e-mail.

Signatures numériques : elles servent à vérifier les assertions et à garantir qu’elles n’ont pas été modifiées de façon illicite.

Relay state : une URL de lien profond qui garantit que l’utilisateur revient vers la destination prévue après l’authentification.

Quand un utilisateur demande l’accès, une requête SAML est envoyée à l’IDP, qui, après vérification, renvoie une assertion SAML. Une fois cette assertion validée par le fournisseur de services, l’utilisateur obtient l’accès souhaité.

Diagramme de séquence : connexion SAML initiée par le fournisseur de services. L'utilisateur demande une page, est redirigé vers le fournisseur d'identité pour se connecter, revient avec une assertion SAML, et le fournisseur de services la valide et crée une session

Des outils comme SAML Tracer pour navigateurs permettent de visualiser ce flux. On voit ainsi clairement le processus d’authentification, de la requête initiale jusqu’à la redirection finale.

Les mesures de sécurité des assertions SAML

Pour contrer les menaces potentielles :

Des horodatages empêchent les attaques par rejeu, en garantissant que l’assertion SAML n’est valable que pendant une courte fenêtre.

Des signatures numériques garantissent que les données n’ont pas été falsifiées pendant l’échange.

En outre, les assertions peuvent contenir des attributs de l’utilisateur, comme l’adresse e-mail ou le type d’utilisateur, pour des contrôles d’accès plus fins côté fournisseur de services.

Conclusion

Au fond, SAML est un protocole basé sur XML qui contient les éléments clés de l’authentification. Cela peut ressembler à de la magie, mais c’est le fruit d’une technologie mûrement réfléchie pour déjouer des attaques comme l’« homme du milieu » ou le rejeu.

Sa capacité à relier plusieurs fournisseurs de services à des IDP de technologies diverses en fait une pierre angulaire de l’authentification numérique.

Restez à l’écoute

Lancez-vous avec confiance dans votre parcours Salesforce Identity ! Pour plus d’idées et de conseils, restez à l’écoute ici sur www.SteveTechArc.com et sur la chaîne YouTube @SteveTechArc (opens in a new tab). Abonnez-vous et approfondissez votre compréhension de Salesforce Identity.

Contribuer à changer le monde en partageant des connaissances sur l’intégration avec d’autres architectes et avec celles et ceux qui sont en chemin pour le devenir !

Transcription réalisée avec l’aide de l’IA

STA 3.6