Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Déclencheur Lambda après l'authentification

Mode de mise au point
Déclencheur Lambda après l'authentification - 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.

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.

Le déclencheur de post-authentification ne modifie pas le flux d'authentification d'un utilisateur. Amazon Cognito invoque ce Lambda une fois l'authentification terminée, avant qu'un utilisateur n'ait reçu des jetons. Ajoutez un déclencheur de post-authentification lorsque vous souhaitez ajouter un post-traitement personnalisé des événements d'authentification, par exemple la journalisation ou les ajustements du profil utilisateur qui seront reflétés lors de la prochaine connexion.

Un Lambda post-authentification qui ne renvoie pas le corps de la demande à Amazon Cognito peut toujours entraîner l'échec de l'authentification. Pour de plus amples informations, veuillez consulter Considérations Importantes.

Présentation du flux d'authentification

Déclencheur Lambda Après l'authentification - Flux client

Pour de plus amples informations, veuillez consulter Exemple de session d'authentification.

Paramètres du déclencheur Lambda après l'authentification

La demande qu’Amazon Cognito transmet à cette fonction Lambda est une combinaison des paramètres ci-dessous et des paramètres courants qu’Amazon Cognito ajoute à toutes les demandes.

JSON
{ "request": { "userAttributes": { "string": "string", . . . }, "newDeviceUsed": boolean, "clientMetadata": { "string": "string", . . . } }, "response": {} }
{ "request": { "userAttributes": { "string": "string", . . . }, "newDeviceUsed": boolean, "clientMetadata": { "string": "string", . . . } }, "response": {} }

Paramètres de demande après l'authentification

newDeviceUsed

Cet indicateur permet de savoir si l'utilisateur s'est connecté sur un nouvel appareil. Amazon Cognito définit cet indicateur seulement si la valeur des appareils mémorisés du groupe d'utilisateurs est Always ou User Opt-In.

userAttributes

Une ou plusieurs paires nom-valeur représentant des attributs utilisateur.

clientMetadata

Une ou plusieurs paires clé-valeur que vous pouvez fournir en tant qu'entrée personnalisée à la fonction Lambda que vous spécifiez pour le déclencheur Après l'authentification. Pour transmettre ces données à votre fonction Lambda, vous pouvez utiliser le ClientMetadata paramètre dans les actions AdminRespondToAuthChallengeet RespondToAuthChallengeAPI. Amazon Cognito n'inclut pas les données issues du ClientMetadata paramètre AdminInitiateAuthet des opérations d'InitiateAuthAPI dans la demande transmise à la fonction de post-authentification.

Paramètres de réponse après l'authentification

Amazon Cognito n'attend aucune information de retour supplémentaire dans la réponse. Votre fonction peut utiliser les opérations d'API pour interroger et modifier vos ressources, ou enregistrer des métadonnées d'événements dans un système externe.

Didacticiels relatifs à l'authentification

Immédiatement après qu'Amazon Cognito connecte un utilisateur, il active la fonction Lambda après authentification. Consultez ces didacticiels de connexion pour JavaScript Android et iOS.

Plateforme didacticiel
JavaScript SDK d'identité Connectez les utilisateurs avec JavaScript
Kit SDK d'identité pour Android Connectez des utilisateurs avec Android
Kit SDK d'identité pour iOS Connectez des utilisateurs avec iOS

Exemple de stade après l'authentification

Cet exemple de fonction Lambda après authentification envoie les données d'une connexion réussie à Logs. CloudWatch

Node.js
const handler = async (event) => { // Send post authentication data to Amazon CloudWatch logs console.log("Authentication successful"); console.log("Trigger function =", event.triggerSource); console.log("User pool = ", event.userPoolId); console.log("App client ID = ", event.callerContext.clientId); console.log("User ID = ", event.userName); return event; }; export { handler };
Python
import os def lambda_handler(event, context): # Send post authentication data to Cloudwatch logs print ("Authentication successful") print ("Trigger function =", event['triggerSource']) print ("User pool = ", event['userPoolId']) print ("App client ID = ", event['callerContext']['clientId']) print ("User ID = ", event['userName']) # Return to Amazon Cognito return event
const handler = async (event) => { // Send post authentication data to Amazon CloudWatch logs console.log("Authentication successful"); console.log("Trigger function =", event.triggerSource); console.log("User pool = ", event.userPoolId); console.log("App client ID = ", event.callerContext.clientId); console.log("User ID = ", event.userName); return event; }; export { handler };

Amazon Cognito transmet les informations d’événement à votre fonction Lambda. Cette fonction renvoie alors le même objet d’événement à Amazon Cognito, avec d’éventuelles modifications dans la réponse. Dans la console Lambda, vous pouvez configurer un événement de test avec des données pertinentes pour votre déclencheur Lambda. Voici un événement de test pour cet exemple de code :

JSON
{ "triggerSource": "testTrigger", "userPoolId": "testPool", "userName": "testName", "callerContext": { "clientId": "12345" }, "response": {} }
{ "triggerSource": "testTrigger", "userPoolId": "testPool", "userName": "testName", "callerContext": { "clientId": "12345" }, "response": {} }
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.