Point de terminaison de déconnexion - 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.

Point de terminaison de déconnexion

Le point de terminaison /logout est un point de terminaison de redirection. Il déconnecte l'utilisateur et le redirige soit vers une déconnexion autorisée URL pour le client de votre application, soit vers le /login terminal. Les paramètres disponibles dans une GET demande adressée au point de /logout terminaison sont adaptés aux cas d'utilisation de l'interface utilisateur hébergée par Amazon Cognito.

Pour rediriger votre utilisateur vers l’interface utilisateur hébergée afin de se reconnecter, ajoutez un paramètre redirect_uri à votre demande. Une demande logout avec un paramètre redirect_uri doit également inclure les paramètres de votre demande suivante au Point de terminaison de connexion, comme client_idresponse_type et scope.

Le point de terminaison de déconnexion est une application Web frontale pour les sessions utilisateur interactives avec vos clients. Votre application doit invoquer cet élément et d’autres points de terminaison d’interface utilisateur hébergés dans les navigateurs de vos utilisateurs.

Pour rediriger votre utilisateur vers la page de votre choix, ajoutez la fonction de déconnexion autorisée URLs à votre client d'application. Dans les demandes que vos utilisateurs adressent au point de terminaison logout, ajoutez les paramètres logout_uri et client_id. Si la valeur de logout_uri est l'une des déconnexions autorisées URLs pour votre client d'application, Amazon Cognito redirige les utilisateurs vers cette option. URL

Avec single logout (SLO) pour la SAML version 2.0 IdPs, Amazon Cognito redirige d'abord votre utilisateur vers SLO le point de terminaison que vous avez défini dans votre configuration IdP. Une fois que votre IdP a redirigé votre utilisateur vers, Amazon saml2/logout Cognito répond par une autre redirection vers ou depuis votre demande. redirect_uri logout_uri Pour plus d’informations, consultez SAMLflux de déconnexion.

Le point de terminaison de déconnexion ne déconnecte pas les utilisateurs OIDC ni les fournisseurs d'identité sociale (IdPs). Pour déconnecter les utilisateurs de leur session avec un IdP externe, dirigez-les vers la page de déconnexion de ce fournisseur.

GET/déconnexion

Le point de terminaison /logout prend uniquement en charge HTTPS GET. Le client du groupe d’utilisateurs adresse généralement cette demande via le navigateur du système. Ce navigateur est généralement l’onglet Chrome personnalisé sous Android ou Safari View Control sous iOS.

Paramètres de demande

client_id

ID client d’application pour votre application. Pour obtenir un ID client d’application, vous devez inscrire l’application dans le groupe d’utilisateurs. Pour plus d’informations, consultez Clients de l’application de groupe d’utilisateurs.

Obligatoire.

logout_uri

Redirigez votre utilisateur vers une page de déconnexion personnalisée avec un paramètre logout_uri. Définissez sa valeur sur la déconnexion du client de l'application vers URL laquelle vous souhaitez rediriger votre utilisateur après sa déconnexion. Utilisez logout_uri uniquement avec un paramètre client_id. Pour plus d’informations, consultez Clients de l’application de groupe d’utilisateurs.

Vous pouvez également utiliser le paramètre logout_uri pour rediriger votre utilisateur vers la page de connexion d’un autre client d’application. Définissez la page de connexion de l'autre client d'application en tant que rappel autorisé URL dans votre client d'application. Dans votre demande au /logout point de terminaison, définissez la valeur du paramètre logout_uri sur la page de URL connexion codée.

Amazon Cognito nécessite un paramètre logout_uri ou redirect_uri dans votre demande au point de terminaison /logout. Un paramètre logout_uri redirige votre utilisateur vers un autre site web. Si les paramètres logout_uri et redirect_uri sont inclus dans votre demande au point de terminaison /logout, Amazon Cognito utilisera exclusivement le paramètre logout_uri, en remplaçant le paramètre redirect_uri.

redirect_uri

Redirigez votre utilisateur vers votre page de connexion pour qu’il s’authentifie avec un paramètre redirect_uri. Définissez sa valeur sur le callback autorisé du client de l'application URL auquel vous souhaitez rediriger votre utilisateur une fois qu'il se sera reconnecté. Ajoutez les paramètres client_id, scope, state et response_type que vous souhaitez transmettre à votre point de terminaison /login.

Amazon Cognito nécessite un paramètre logout_uri ou redirect_uri dans votre demande au point de terminaison /logout. Pour rediriger votre utilisateur vers votre /login point de terminaison afin de s'authentifier à nouveau et de transmettre des jetons à votre application, ajoutez un paramètre redirect_uri. Si les paramètres logout_uri et redirect_uri sont inclus dans votre demande au point de terminaison, /logout Amazon Cognito remplace le paramètre redirect_uri et traite le paramètre logout_uri exclusivement.

response_type

La réponse OAuth 2.0 que vous souhaitez recevoir d'Amazon Cognito une fois que votre utilisateur s'est connecté. codeet token sont les valeurs valides pour le paramètre response_type.

Nécessaire si vous utilisez un paramètre redirect_uri.

state

Lorsque votre application ajoute un paramètre d'état à une demande, Amazon Cognito renvoie sa valeur à votre application lorsque le /oauth2/logout point de terminaison redirige votre utilisateur.

Ajoutez cette valeur à vos demandes pour vous prémunir contre les CSRFattaques.

Vous ne pouvez pas définir la valeur d'un state paramètre sur une JSON chaîne URL codée. Pour transmettre une chaîne correspondant à ce format dans un state paramètre, codez la chaîne en base64, puis décodez-la dans votre application.

Fortement recommandée si vous utilisez un paramètre redirect_uri.

scope

Les étendues OAuth 2.0 que vous souhaitez demander à Amazon Cognito après les avoir déconnectées avec un paramètre redirect_uri. Amazon Cognito redirige votre utilisateur vers le point de terminaison /login avec le paramètre scope dans votre demande au point de terminaison /logout.

Facultatif si vous utilisez un paramètre redirect_uri. Si vous n’incluez pas de paramètre scope, Amazon Cognito redirige votre utilisateur vers le point de terminaison /login avec un paramètre scope. Quand Amazon Cognito redirige votre utilisateur et renseigne automatiquement scope, le paramètre inclut toutes les étendues autorisées pour votre client d’application.

Exemples de demandes

Exemple : déconnexion et redirection de l'utilisateur vers le client

À l'exception de logout_uri etclient_id, tous les paramètres de requête possibles pour ce point de terminaison sont transmis auPoint de terminaison d’autorisation. Amazon Cognito redirige les sessions utilisateur vers la valeur URL in delogout_uri, en ignorant tous les autres paramètres de demande, lorsque les demandes incluent et. logout_uri client_id URLIl doit s'agir d'une déconnexion autorisée URL pour le client de l'application.

Voici un exemple de demande de déconnexion et de redirection vers https://www.example.com/welcome.

GET https://mydomain.auth.us-east-1.amazoncognito.com/logout? client_id=1example23456789& logout_uri=https%3A%2F%2Fwww.example.com%2Fwelcome

Exemple : déconnectez-vous et demandez à l'utilisateur de se connecter en tant qu'autre utilisateur

Lorsque les demandes omettent logout_uri, mais fournissent les paramètres qui constituent une demande bien formée adressée au point de terminaison autorisé, Amazon Cognito redirige les utilisateurs vers une interface utilisateur hébergée. Le point de terminaison de déconnexion ajoute les paramètres de votre demande initiale à la destination de redirection. Le paramètre redirect_uri d'une demande adressée au point de terminaison de déconnexion n'est pas une déconnexionURL, mais une connexion URL que vous souhaitez transmettre au point de terminaison autorisé.

Voici un exemple de demande qui déconnecte un utilisateur, le redirige vers la page de connexion et fournit un code d'autorisation https://www.example.com après la connexion.

GET https://mydomain.auth.us-east-1.amazoncognito.com/logout? response_type=code& client_id=1example23456789& redirect_uri=https%3A%2F%2Fwww.example.com& state=example-state-value& nonce=example-nonce-value& scope=openid+profile+aws.cognito.signin.user.admin