View a markdown version of this page

Déconnexion des utilisateurs SAML à l'aide d'une déconnexion unique - Amazon Cognito

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Déconnexion des utilisateurs SAML à l'aide d'une déconnexion unique

Amazon Cognito prend en charge la déconnexion http://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0-cd-02.html#5.3.Single%20Logout%20Profile|outline unique (SLO) SAML 2.0. Avec SLO, votre application peut déconnecter les utilisateurs de leurs fournisseurs d'identité SAML (IdPs) lorsqu'ils se déconnectent de votre groupe d'utilisateurs. Ainsi, lorsque les utilisateurs souhaitent se reconnecter à votre application, ils doivent s'authentifier auprès de leur IdP SAML. Dans le cas contraire, ils peuvent disposer de cookies de navigateur IdP ou de groupe d'utilisateurs qui les transmettent à votre application sans qu'il soit nécessaire de fournir des informations d'identification.

Lorsque vous configurez votre IdP SAML pour qu'il prenne en charge le Sign-out flux, Amazon Cognito redirige votre utilisateur avec une demande de déconnexion SAML signée vers votre IdP. Amazon Cognito détermine l'emplacement de la redirection à partir de l'SingleLogoutServiceURL figurant dans les métadonnées de votre IdP. Amazon Cognito signe la demande de déconnexion à l'aide du certificat de signature de votre groupe d'utilisateurs.

Schéma du flux d'authentification de la déconnexion SAML à Amazon Cognito. L'utilisateur demande la déconnexion et Amazon Cognito le redirige vers son fournisseur avec une demande de déconnexion SAML.

Lorsque vous dirigez un utilisateur disposant d'une session SAML vers le point de /logout terminaison de votre groupe d'utilisateurs, Amazon Cognito redirige votre utilisateur SAML avec la demande suivante vers le point de terminaison SLO spécifié dans les métadonnées de l'IdP.

https://[SingleLogoutService endpoint]? SAMLRequest=[encoded SAML request]& RelayState=[RelayState]& SigAlg=http://www.w3.org/2001/04/xmldsig-more#rsa-sha256& Signature=[User pool RSA signature]

Votre utilisateur revient ensuite sur votre saml2/logout terminal avec un message LogoutResponse provenant de son IdP. Votre IdP doit envoyer LogoutResponse une HTTP POST demande. Amazon Cognito les redirige ensuite vers la destination de redirection depuis leur demande de déconnexion initiale.

Il se peut que votre fournisseur SAML envoie un message LogoutResponse contenant plusieurs AuthnStatement éléments. Le sessionIndex premier AuthnStatement élément d'une réponse de ce type doit correspondre sessionIndex à celui de la réponse SAML qui a initialement authentifié l'utilisateur. S'il s'sessionIndexagit d'une autre sessionAuthnStatement, Amazon Cognito ne reconnaîtra pas la session et votre utilisateur ne sera pas déconnecté.

Console de gestion AWS
Pour configurer la déconnexion SAML
  1. Créez un groupe d'utilisateurs, un client d'application et un IdP SAML.

  2. Lorsque vous créez ou modifiez votre fournisseur d'identité SAML, sous Informations sur le fournisseur d'identité, cochez la case intitulée Ajouter un flux de déconnexion.

  3. Dans le menu Réseaux sociaux et fournisseurs externes de votre groupe d'utilisateurs, choisissez votre IdP et localisez le certificat de signature.

  4. Choisissez Télécharger au format .crt.

  5. Configurez votre fournisseur SAML pour qu'il prenne en charge la déconnexion unique et la signature des demandes SAML, et téléchargez le certificat de signature du pool d'utilisateurs. Votre IdP doit être redirigé vers le /saml2/logout domaine de votre groupe d'utilisateurs.

API/CLI

Pour configurer la déconnexion SAML

Configurez une déconnexion unique avec le IDPSignout paramètre d'une requête CreateIdentityProvider ou d'une demande d'UpdateIdentityProviderAPI. Voici un exemple ProviderDetails d'IdP qui prend en charge la déconnexion unique SAML.

"ProviderDetails": { "MetadataURL" : "https://myidp.example.com/saml/metadata", "IDPSignout" : "true",, "RequestSigningAlgorithm" : "rsa-sha256", "EncryptedResponses" : "true", "IDPInit" : "true" }