Point de terminaison CONNEXION - Amazon Cognito

Point de terminaison CONNEXION

Le point de terminaison /login connecte l'utilisateur. Il charge la page de connexion et présente les options d'authentification configurées pour le client à l'utilisateur.

GET /login

Le point de terminaison /login prend uniquement en charge HTTPS GET. Le client du groupe d'utilisateurs adresse généralement cette demande via un navigateur système. Les navigateurs système pour JavaScript incluent Chrome ou Firefox. Les navigateurs Android comprennent l'onglet Chrome personnalisé. Les navigateurs iOS incluent le contrôle Vue Safari.

Paramètres de requête

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 Configuration d'un client d'application pour un groupe d'utilisateurs..

Obligatoire.

redirect_uri

L'URI vers lequel l'utilisateur est redirigé après une authentification réussie. Il doit être configuré sur le response_type du client_id spécifié.

Obligatoire.

response_type

Le type de réponse OAuth, qui peut être code pour un flux d'attribution de code et token pour un flux implicite.

Obligatoire.

état

Valeur opaque que le client ajoute à la demande initiale. La valeur est ensuite retournée au client lors de la redirection.

Cette valeur doit être utilisée par le client pour empêcher les attaques de type CSRF.

Facultative mais recommandée.

portée

Peut être une combinaison de toute portée dédiée à un système ou personnalisée et associée à un client. Les périmètres doivent être séparés par des espaces. Les périmètres dédiés à un système sont openid, email, phone, profile et aws.cognito.signin.user.admin. Toute étendue que vous demandez doit être activée pour le client d'application, ou Amazon Cognito l'ignorera.

Si le client ne demande pas de paramètre scope, le serveur d'authentification utilise tous les paramètres scope associés au client.

Un jeton d'identification est renvoyé uniquement si une portée openid est demandée. Le jeton d'accès ne peut être utilisé avec des groupes d'utilisateurs Amazon Cognito que si une portée aws.cognito.signin.user.admin est demandée. Les périmètres phone, email et profile ne peuvent être demandés que si un périmètre openid est également demandé. Ces paramètres scope régissent les demandes qui font partie du jeton d'identification.

Facultatif.

code_challenge_method

Méthode utilisée pour générer la stimulation. Le PKCE RFC définit deux méthodes, S256 et « plain » . Cependant, le serveur d'authentification Amazon Cognito ne prend en charge que la méthode S256.

Facultatif.

code_challenge

Stimulation générée à partir de code_verifier.

Obligatoire uniquement lorsque le paramètre code_challenge_method est spécifié.

Exemple de demande : Inviter l'utilisateur à se connecter

Cet exemple affiche l'écran de connexion.

GET https://mydomain.auth.us-east-1.amazoncognito.com/login? response_type=code& client_id=ad398u21ijw3s9w3939& redirect_uri=https://YOUR_APP/redirect_uri& state=STATE& scope=openid+profile+aws.cognito.signin.user.admin

Exemple de réponse

Le serveur d'authentification procède à une redirection vers votre application avec l'état et le code d'autorisation. Le serveur doit renvoyer le code et l'état dans les paramètres de chaîne de requête et non pas dans le fragment.

HTTP/1.1 302 Found Location: https://YOUR_APP/redirect_uri?code=AUTHORIZATION_CODE&state=STATE

Pour plus d'exemples de demandes et des exemples de réponses positives et négatives, consultez Point de terminaison AUTORISATION.