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.
Personnalisation des flux de travail de groupe d'utilisateurs avec des déclencheurs Lambda
Amazon Cognito utilise des AWS Lambda fonctions permettant de modifier le comportement d'authentification de votre groupe d'utilisateurs. Vous pouvez configurer votre groupe d'utilisateurs pour qu'il invoque automatiquement les fonctions Lambda avant la première inscription, une fois l'authentification terminée, et à plusieurs étapes intermédiaires. Vos fonctions peuvent modifier le comportement par défaut de votre flux d'authentification, effectuer des API demandes pour modifier votre groupe d'utilisateurs ou d'autres AWS ressources, et communiquer avec des systèmes externes. Le code de vos fonctions Lambda vous appartient. Amazon Cognito envoie des données d'événement à votre fonction, attend que la fonction traite les données et, dans la plupart des cas, anticipe un événement de réponse qui reflète les modifications que vous souhaitez apporter à la session.
Dans le système des événements de demande et de réponse, vous pouvez introduire vos propres défis d'authentification, faire migrer les utilisateurs entre votre groupe d'utilisateurs et un autre magasin d'identités, personnaliser les messages et modifier les jetons JSON Web (JWTs).
Les déclencheurs Lambda peuvent personnaliser la réponse qu'Amazon Cognito fournit à l'utilisateur une fois qu'il a lancé une action dans votre groupe d'utilisateurs. Par exemple, vous pouvez empêcher la connexion d'un utilisateur qui réussirait autrement à se connecter. Ils peuvent également effectuer des opérations d'exécution sur votre AWS environnement, sur des applications externesAPIs, sur des bases de données ou sur des banques d'identités. Le déclencheur de migration d'utilisateur, par exemple, peut associer une action externe à une modification dans Amazon Cognito : vous pouvez rechercher les informations utilisateur dans un annuaire externe, puis définir les attributs d'un nouvel utilisateur en fonction de ces informations externes.
Quand un déclencheur Lambda est attribué à votre groupe d'utilisateurs, Amazon Cognito interrompt son flux par défaut pour demander des informations à votre fonction. Amazon Cognito génère un JSON événement et le transmet à votre fonction. Cet événement contient des informations concernant la demande de votre utilisateur de créer un compte d'utilisateur, de se connecter, de réinitialiser un mot de passe ou de mettre à jour un attribut. Votre fonction a alors la possibilité d'agir ou de renvoyer l'événement sans le modifier.
Le tableau suivant résume certaines des façons dont vous pouvez utiliser les déclencheurs Lambda pour personnaliser les opérations de groupe d'utilisateurs :
Flux de groupe d'utilisateurs | Opération | Description |
---|---|---|
Flux d'authentification personnalisé |
Définition de la stimulation d'authentification | Détermine la question de sécurité (stimulation) dans un flux d'authentification personnalisé |
Création d'une stimulation d'authentification | Crée une question de sécurité (stimulation) dans un flux d'authentification personnalisé | |
Vérification de la réponse à la stimulation d'authentification | Détermine si une réponse est correcte dans un flux d'authentification personnalisé | |
Événements d'authentification | Déclencheur Lambda avant authentification | Validation personnalisée pour accepter ou refuser la demande de connexion |
Déclencheur Lambda après l'authentification | Enregistre les événements pour une analytique personnalisée | |
Déclencheur Lambda avant génération de jeton | Augmente ou supprime les revendications de jeton | |
Inscription | Déclencheur Lambda Avant l'inscription | Effectue une validation personnalisée qui accepte ou refuse la demande d'inscription |
Déclencheur Lambda après confirmation. | Ajoute des messages personnalisés de bienvenue ou une journalisation des événements pour une analytique personnalisée | |
Déclencheur Lambda de migration d'utilisateur | Effectue la migration d'un utilisateur à partir d'un annuaire d'utilisateurs existant vers des groupes d'utilisateurs | |
Messages | Déclencheur Lambda message personnalisé | Effectue une personnalisation et une localisation avancées de messages |
Création de jeton | Déclencheur Lambda avant génération de jeton | Ajoute ou supprime des attributs dans les jetons d'ID |
Fournisseurs de messagerie et fournisseurs SMS tiers | Déclencheurs Lambda Expéditeur personnalisé | Utilise un fournisseur tiers pour envoyer SMS et envoyer des e-mails |
Rubriques
- Considérations Importantes
- Ajout d'un déclencheur Lambda à un groupe d'utilisateurs
- Événement déclencheur Lambda d'un groupe d'utilisateurs
- Paramètres communs des déclencheurs Lambda de groupe d'utilisateurs
- Connecter API les opérations aux déclencheurs Lambda
- Connexion de déclencheurs Lambda aux opérations fonctionnelles du groupe d'utilisateurs
- Déclencheur Lambda Avant l'inscription
- Déclencheur Lambda après confirmation.
- Déclencheur Lambda avant authentification
- Déclencheur Lambda après l'authentification
- Déclencheurs Lambda création d'une stimulation d'authentification personnalisée
- Déclencheur Lambda avant génération de jeton
- Déclencheur Lambda de migration d'utilisateur
- Déclencheur Lambda message personnalisé
- Déclencheurs Lambda Expéditeur personnalisé
Considérations Importantes
Lorsque vous préparez vos groupes d'utilisateurs pour les fonctions Lambda, prenez en compte les éléments suivants :
-
Les événements qu'Amazon Cognito envoie aux déclencheurs Lambda peuvent changer en fonction des nouvelles fonctionnalités. Les positions des éléments de réponse et de demande dans la JSON hiérarchie peuvent changer, ou des noms d'éléments peuvent être ajoutés. Dans votre fonction Lambda, vous pouvez vous attendre à recevoir les paires clé-valeur d'entrée décrites dans ce guide, mais une validation d'entrée plus stricte peut entraîner l'échec de vos fonctions.
-
Vous pouvez choisir l'une des nombreuses versions des événements qu'Amazon Cognito envoie à certains déclencheurs. Certaines versions peuvent nécessiter que vous acceptiez une modification de la tarification d'Amazon Cognito. Pour de plus amples informations sur la tarification, consultez Tarification d'Amazon Cognito
. Pour personnaliser les jetons d'accès dans une Déclencheur Lambda avant génération de jeton, vous devez configurer votre groupe d'utilisateurs avec des fonctionnalités de sécurité avancées et mettre à jour la configuration de votre déclencheur Lambda pour utiliser la version 2 de l'événement. -
À l'exception des Déclencheurs Lambda Expéditeur personnalisé, Amazon Cognito appelle les fonctions Lambda de manière synchrone. Quand Amazon Cognito appelle votre fonction Lambda, elle doit répondre dans un délai de 5 secondes. Si elle ne le fait pas et si l'appel peut être retenté, Amazon Cognito retente l'appel. Après trois tentatives infructueuses, la fonction expire. Vous ne pouvez pas modifier ce délai d'attente de cinq secondes. Pour plus d'informations, consultez le modèle de programmation Lambda dans le Guide du AWS Lambda développeur.
Amazon Cognito ne réessaie pas les appels de fonction qui renvoient une erreur Invoke avec un code d'HTTPétat 500-599. Ces codes indiquent un problème de configuration qui empêche Lambda de lancer la fonction. Pour plus d'informations, consultez la section Gestion des erreurs et tentatives automatiques. AWS Lambda
-
Vous ne pouvez pas déclarer une version de fonction dans la configuration de votre déclencheur Lambda. Les groupes d'utilisateurs Amazon Cognito invoquent la dernière version de votre fonction par défaut. Cependant, vous pouvez associer une version de fonction à un alias et définir votre déclencheur
LambdaArn
sur l'alias ARN d'une UpdateUserPoolAPIdemande CreateUserPoolor. Cette option n'est pas disponible dans la AWS Management Console. Pour plus d'informations sur l'utilisation des alias, consultez Alias de fonction Lambda dans le Guide du développeur AWS Lambda . -
Si vous supprimez un déclencheur Lambda, vous devez mettre à jour le déclencheur correspondant dans le groupe d'utilisateurs. Par exemple, si vous supprimez le déclencheur d'authentification, vous devez définir le déclencheur Post authentication (Après l'authentification) dans le groupe d'utilisateurs correspondant sur none.
-
Si votre fonction Lambda ne renvoie pas les paramètres de demande et de réponse à Amazon Cognito, ou renvoie une erreur, l'événement d'authentification échoue. Vous pouvez renvoyer une erreur dans votre fonction pour empêcher l'inscription d'un utilisateur, son authentification, la génération de jetons ou toute autre phase de son flux d'authentification qui invoque le déclencheur Lambda.
L'interface utilisateur hébergée par Amazon Cognito renvoie les erreurs générées par les déclencheurs Lambda sous forme de texte d'erreur au-dessus de l'invite de connexion. Le groupe d'utilisateurs Amazon Cognito API renvoie les erreurs de déclenchement au format indiqué.
Conformément à la bonne pratique, générez uniquement les erreurs dans vos fonctions Lambda que vous voulez que les utilisateurs voient. Utilisez des méthodes de sortie telles que[trigger]
failed with error[error text from response]
print()
l'enregistrement de toute information sensible ou de débogage dans CloudWatch Logs. Pour obtenir un exemple, consultez Exemple de pré-inscription : Refuser l'inscription si le nom d'utilisateur comporte moins de cinq caractères. -
Vous pouvez ajouter une fonction Lambda dans une autre en Compte AWS tant que déclencheur pour votre groupe d'utilisateurs. Vous devez ajouter des déclencheurs entre comptes avec les UpdateUserPoolAPIopérations CreateUserPoolet, ou leurs équivalents, dans AWS CloudFormation et le. AWS CLI Vous ne pouvez pas ajouter de fonctions multi-comptes dans le AWS Management Console.
-
Lorsque vous ajoutez un déclencheur Lambda dans la console Amazon Cognito, Amazon Cognito ajoute une politique basée sur les ressources à votre fonction qui permet à votre groupe d'utilisateurs d'appeler la fonction. Lorsque vous créez un déclencheur Lambda en dehors de la console Amazon Cognito, y compris une fonction entre comptes, vous devez ajouter des autorisations à la politique basée sur les ressources de la fonction Lambda. Les autorisations que vous avez ajoutées doivent autoriser Amazon Cognito à appeler la fonction au nom de votre groupe d'utilisateurs. Vous pouvez ajouter des autorisations depuis la console Lambda ou utiliser l'opération Lambda. AddPermissionAPI
Exemple de politique basée sur les ressources Lambda
L'exemple suivant de politique basée sur les ressources Lambda accorde une capacité limitée à Amazon Cognito pour appeler une fonction Lambda. Amazon Cognito ne peut invoquer la fonction que lorsqu'elle le fait au nom du groupe d'utilisateurs dans le
aws:SourceArn
et le compte dans la Conditionaws:SourceAccount
.{ "Version": "2012-10-17", "Id": "default", "Statement": [ { "Sid": "lambda-allow-cognito", "Effect": "Allow", "Principal": { "Service": "cognito-idp.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "
<your Lambda function ARN>
", "Condition": { "StringEquals": { "AWS:SourceAccount": "<your account number>
" }, "ArnLike": { "AWS:SourceArn": "<your user pool ARN>
" } } } ] }
Ajout d'un déclencheur Lambda à un groupe d'utilisateurs
Pour ajouter un déclencheur Lambda à un groupe d'utilisateurs à l'aide de la console
-
Utilisez la console Lambda
pour créer une fonction Lambda. Pour plus d'informations sur les fonctions Lambda, consultez le Guide du développeur AWS Lambda. -
Accédez à la console Amazon Cognito
, puis choisissez User Pools (Groupes d'utilisateurs). -
Choisissez un groupe d’utilisateurs existant dans la liste ou créez-en un.
-
Choisissez l'onglet User pool properties (Propriétés du groupe d'utilisateurs) et localisez Lambda triggers (Déclencheurs Lambda).
-
Choisissez Ajouter un déclencheur Lambda.
-
Sélectionnez un déclencheur Lambda Category (Catégorie) en fonction de l'étape de l'authentification que vous souhaitez personnaliser.
-
Sélectionnez Affecter une fonction Lambda et sélectionnez une fonction identique à celle de votre Région AWS groupe d'utilisateurs.
Note
Si vos informations d'identification AWS Identity and Access Management (IAM) sont autorisées à mettre à jour la fonction Lambda, Amazon Cognito ajoute une politique basée sur les ressources Lambda. Avec cette politique, Amazon Cognito peut invoquer la fonction que vous sélectionnez. Si les informations d'identification connectées ne disposent pas d'IAMautorisations suffisantes, vous devez mettre à jour la politique basée sur les ressources séparément. Pour de plus amples informations, veuillez consulter Considérations Importantes.
-
Sélectionnez Save Changes (Enregistrer les modifications).
-
Vous pouvez l'utiliser CloudWatch dans la console Lambda pour enregistrer votre fonction Lambda. Pour plus d'informations, consultez la section Accès aux CloudWatch journaux pour Lambda.
Événement déclencheur Lambda d'un groupe d'utilisateurs
Amazon Cognito transmet les informations d’événement à votre fonction Lambda. La fonction Lambda renvoie à Amazon Cognito le même objet d'événement, avec des modifications dans la réponse. Cet événement affiche les paramètres communs des déclencheurs Lambda :
Paramètres communs des déclencheurs Lambda de groupe d'utilisateurs
- version
-
Numéro de version de votre fonction Lambda.
- triggerSource
-
Nom de l'événement qui a déclenché la fonction Lambda. Pour une description de chacun, triggerSource voirConnexion de déclencheurs Lambda aux opérations fonctionnelles du groupe d'utilisateurs.
- region
-
Le Région AWS en tant qu'
AWSRegion
instance. - userPoolId
-
ID du groupe d'utilisateurs.
- userName
-
Nom d'utilisateur de l'utilisateur actuel.
- callerContext
-
Métadonnées relatives à la demande et à l'environnement de code. Il contient les champs awsSdkVersionet clientId.
- awsSdkVersion
-
Version du AWS SDK qui a généré la demande.
- clientId
-
Identifiant du client d'application du groupe d'utilisateurs.
- de la demande
-
Détails de la API demande de votre utilisateur Cela inclut les champs suivants, ainsi que tous les paramètres de demande spécifiques au déclencheur. Par exemple, un événement envoyé par Amazon Cognito à un déclencheur avant authentification contient également un paramètre
userNotFound
. Vous pouvez traiter la valeur de ce paramètre pour effectuer une action personnalisée lorsque votre utilisateur essaie de se connecter avec un nom d'utilisateur non enregistré.- userAttributes
-
Une ou plusieurs paires clé-valeur de noms et de valeurs d'attributs utilisateur, par exemple
"email": "john@example.com"
.
- réponse
-
Ce paramètre ne contient aucune information dans la demande d'origine. Votre fonction Lambda doit renvoyer l'intégralité de l'événement à Amazon Cognito et ajouter tous les paramètres de retour au paramètre
response
. Pour voir quels paramètres de retour votre fonction peut inclure, consultez la documentation du déclencheur que vous souhaitez utiliser.
Connecter API les opérations aux déclencheurs Lambda
Les sections suivantes décrivent les déclencheurs Lambda qu'Amazon Cognito invoque à partir de l'activité dans votre groupe d'utilisateurs.
Lorsque votre application connecte des utilisateurs via les groupes d'utilisateurs Amazon CognitoAPI, l'interface utilisateur hébergée ou les points de terminaison du groupe d'utilisateurs, Amazon Cognito invoque vos fonctions Lambda en fonction du contexte de session. Pour plus d'informations sur les groupes d'utilisateurs et les points de terminaison des groupes API d'utilisateurs Amazon Cognito, consultez. Utilisation des groupes d'utilisateurs API et du serveur d'autorisation Les tableaux des sections suivantes décrivent les événements qui amènent Amazon Cognito à invoquer une fonction, ainsi que la chaîne triggerSource
qu'Amazon Cognito inclut dans la demande.
Rubriques
Déclencheurs Lambda dans Amazon Cognito API
Le tableau suivant décrit les chaînes sources des déclencheurs Lambda qu'Amazon Cognito peut invoquer quand votre application crée, connecte ou met à jour un utilisateur local.
Sources de déclenchement par les utilisateurs locaux dans Amazon Cognito API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
APIopération | Déclencheur Lambda | Source du déclencheur | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Avant l'inscription |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expéditeur d'e-mail personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMSExpéditeur personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Avant l'inscription |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expéditeur d'e-mail personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMSExpéditeur personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Après la confirmation |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Avant l'authentification |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Define auth challenge |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Create auth challenge |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Migration de l'utilisateur (Migrate user) |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expéditeur d'e-mail personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMSExpéditeur personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Migration de l'utilisateur (Migrate user) |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expéditeur d'e-mail personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMSExpéditeur personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Après la confirmation |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expéditeur d'e-mail personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMSExpéditeur personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expéditeur d'e-mail personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMSExpéditeur personnalisé |
|
Déclencheurs Lambda pour les utilisateurs locaux Amazon Cognito dans l'interface utilisateur hébergée
Le tableau suivant décrit les chaînes sources des déclencheurs Lambda qu'Amazon Cognito peut invoquer quand un utilisateur local se connecte à votre groupe d'utilisateurs avec l'interface utilisateur hébergée.
Sources des déclencheurs d'utilisateur locaux dans l'interface utilisateur hébergée | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Interface utilisateur hébergée URI | Déclencheur Lambda | Source du déclencheur | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/signup |
Avant l'inscription |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expéditeur d'e-mail personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMSExpéditeur personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/confirmuser |
Après la confirmation |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/login |
Avant l'authentification |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Define auth challenge |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Create auth challenge |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Migration de l'utilisateur (Migrate user) |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expéditeur d'e-mail personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMSExpéditeur personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/forgotpassword |
Migration de l'utilisateur (Migrate user) |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expéditeur d'e-mail personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SMSExpéditeur personnalisé |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
/confirmforgotpassword |
Après la confirmation |
|
Déclencheurs Lambda pour utilisateurs fédérés
Vous pouvez utiliser les déclencheurs Lambda suivants pour personnaliser les flux de travail de votre groupe d'utilisateurs pour les utilisateurs qui se connectent avec un fournisseur fédéré.
Note
Les utilisateurs fédérés peuvent utiliser l'interface utilisateur hébergée par Amazon Cognito pour se connecter, ou vous pouvez générer une demande auprès du Point de terminaison d’autorisation, qui les redirige silencieusement vers la page de connexion de leur fournisseur d'identité. Vous ne pouvez pas connecter d'utilisateurs fédérés aux groupes d'utilisateurs Amazon Cognito. API
Sources des déclencheurs d'utilisateurs fédérés | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Événement de connexion | Déclencheur Lambda | Source du déclencheur | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Première connexion | Avant l'inscription |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Après la confirmation |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Connexions suivantes | Avant l'authentification |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Après l'authentification |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation |
|
La connexion fédérée n'appelle aucun Déclencheurs Lambda création d'une stimulation d'authentification personnalisée, Déclencheur Lambda de migration d'utilisateur, Déclencheur Lambda message personnalisé ou Déclencheurs Lambda Expéditeur personnalisé dans votre groupe d'utilisateurs.
Connexion de déclencheurs Lambda aux opérations fonctionnelles du groupe d'utilisateurs
Chaque déclencheur Lambda joue un rôle fonctionnel dans votre groupe d'utilisateurs. Par exemple, un déclencheur peut modifier votre flux d'inscription ou ajouter une stimulation d'authentification personnalisée. L'événement qu'Amazon Cognito envoie à une fonction Lambda peut refléter l'une des actions qui constituent ce rôle fonctionnel. Par exemple, Amazon Cognito invoque un déclencheur avant inscription lorsque votre utilisateur s'inscrit et quand vous créez un utilisateur. Chacun de ces différents cas pour le même rôle fonctionnel a sa propre valeur triggerSource
. Votre fonction Lambda peut traiter les événements entrants différemment en fonction de l'opération qui l'a invoquée.
Amazon Cognito invoque également toutes les fonctions affectées quand un événement correspond à une source de déclencheur. Par exemple, quand un utilisateur se connecte à un groupe d'utilisateurs dans lequel vous avez attribué des déclencheurs de migration d'utilisateur et avant authentification, il active les deux.
Déclencheurs d'inscription, de confirmation et de connexion (authentification) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Déclencheur | triggerSource valeur | Événement | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Avant l'inscription | PreSignUp_SignUp |
Avant l'inscription. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Avant l'inscription | PreSignUp_AdminCreateUser |
Pré-inscription quand un administrateur crée un nouvel utilisateur. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Avant l'inscription | PreSignUp_ExternalProvider |
Avant l'inscription pour les fournisseurs d'identité externes. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Après la confirmation | PostConfirmation_ConfirmSignUp |
Confirmation après l'inscription. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Après la confirmation | PostConfirmation_ConfirmForgotPassword |
Confirmation après l'oubli de mot de passe de confirmation. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Avant l'authentification | PreAuthentication_Authentication |
Avant l'authentification. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Après l'authentification | PostAuthentication_Authentication |
Après l'authentification. |
Déclencheurs de stimulation d'authentification personnalisés | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Déclencheur | triggerSource valeur | Événement | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Define auth challenge | DefineAuthChallenge_Authentication |
Définition de la stimulation d'authentification. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Create auth challenge | CreateAuthChallenge_Authentication |
Création d'une stimulation d'authentification. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Vérification de la stimulation d'authentification | VerifyAuthChallengeResponse_Authentication |
Vérification de la réponse à la stimulation d'authentification. |
Déclencheurs avant génération de jeton | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Déclencheur | triggerSource valeur | Événement | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation | TokenGeneration_HostedAuth |
Amazon Cognito authentifie l'utilisateur à partir de votre page de connexion de l'interface utilisateur hébergée. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation | TokenGeneration_Authentication |
Les flux d'authentification utilisateur sont terminés. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation | TokenGeneration_NewPasswordChallenge |
L'administrateur crée l'utilisateur. Amazon Cognito appelle cela quand l'utilisateur doit modifier un mot de passe temporaire. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation | TokenGeneration_AuthenticateDevice |
Fin de l'authentification d'un appareil utilisateur. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pre token generation | TokenGeneration_RefreshTokens |
L'utilisateur tente d'actualiser les jetons d'identité et d'accès. |
Déclencheur de migration d'utilisateur | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Déclencheur | triggerSource valeur | Événement | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Migration d'utilisateur | UserMigration_Authentication |
Migration de l'utilisateur au moment de la connexion. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Migration d'utilisateur | UserMigration_ForgotPassword |
Migration de l'utilisateur dans le cadre du flux de mot de passe oublié. |
Déclencheurs de message personnalisé | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Déclencheur | triggerSource valeur | Événement | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé | CustomMessage_SignUp |
Message personnalisé lorsqu'un utilisateur s'inscrit dans votre groupe d'utilisateurs. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé | CustomMessage_AdminCreateUser |
Message personnalisé lorsque vous créez un utilisateur en tant qu'administrateur et qu'Amazon Cognito lui envoie un mot de passe temporaire. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé | CustomMessage_ResendCode |
Message personnalisé lorsque l'utilisateur existant demande un nouveau code de confirmation. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé | CustomMessage_ForgotPassword |
Message personnalisé lorsque l'utilisateur demande la réinitialisation d'un mot de passe. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé | CustomMessage_UpdateUserAttribute |
Message personnalisé lorsqu'un utilisateur change son adresse e-mail ou son numéro de téléphone et qu'Amazon Cognito envoie un code de vérification. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé | CustomMessage_VerifyUserAttribute |
Message personnalisé lorsqu'un utilisateur ajoute une adresse e-mail ou un numéro de téléphone et qu'Amazon Cognito envoie un code de vérification. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Message personnalisé | CustomMessage_Authentication |
Message personnalisé lorsqu'un utilisateur qui a configuré se SMS MFA connecte. |