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éclencheur Lambda Avant l'inscription
Vous souhaiterez peut-être personnaliser le processus d'inscription dans les groupes d'utilisateurs dotés d'options d'inscription en libre-service. Le déclencheur de pré-inscription est souvent utilisé pour effectuer une analyse personnalisée et un enregistrement des nouveaux utilisateurs, appliquer des normes de sécurité et de gouvernance ou relier les utilisateurs d'un IdP tiers à un profil utilisateur consolidé. Vous pouvez également avoir des utilisateurs de confiance qui ne sont pas tenus de se soumettre à une vérification et à une confirmation.
Peu de temps avant qu'Amazon Cognito n'enregistre un nouvel utilisateur local ou fédéré, il active la fonction Lambda préalable à l'inscription. Dans le cadre du processus d'inscription, vous pouvez utiliser cette fonction pour analyser l'événement de connexion avec une logique personnalisée et modifier ou refuser le nouvel utilisateur.
Rubriques
- Flux Lambda Avant l'inscription
- Paramètres du déclencheur Lambda avant l'inscription
- Didacticiels relatifs à l'inscription
- Exemple d'avant inscription : confirmation automatique d'utilisateurs à partir d'un domaine enregistré
- Exemple d'avant inscription : confirmation et vérification automatiques de tous les utilisateurs
- Exemple de pré-inscription : Refuser l'inscription si le nom d'utilisateur comporte moins de cinq caractères
Flux Lambda Avant l'inscription
Flux d'inscription client
Flux d'inscription serveur
La demande inclut les données de validation provenant du client. Ces données proviennent des ValidationData
valeurs transmises au groupe d'utilisateurs SignUp et aux AdminCreateUser API méthodes.
Paramètres du déclencheur Lambda avant l'inscription
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.
Paramètres de demande avant l'inscription
- userAttributes
-
Une ou plusieurs paires nom-valeur représentant des attributs utilisateur. Les noms d'attributs sont les clés.
- validationData
-
Une ou plusieurs paires clé-valeur avec les données d'attribut utilisateur que votre application a transmises à Amazon Cognito dans la demande de création d'un utilisateur. Envoyez ces informations à votre fonction Lambda dans le ValidationData paramètre de votre requête AdminCreateUserou SignUpAPIde votre requête.
Amazon Cognito ne définit pas vos ValidationData données en tant qu'attributs de l'utilisateur que vous créez. ValidationData sont des informations utilisateur temporaires que vous fournissez aux fins de votre déclencheur Lambda préalable à l'inscription.
- clientMetadata
-
Une ou plusieurs paires clé-valeur que vous pouvez fournir en tant qu'entrée personnalisée pour la fonction Lambda que vous spécifiez pour le déclencheur Avant l'inscription. Vous pouvez transmettre ces données à votre fonction Lambda en utilisant le ClientMetadata paramètre dans les API actions suivantes : AdminCreateUser, AdminRespondToAuthChallengeForgotPassword, et. SignUp
Paramètres de réponse avant inscription
Dans la réponse, vous pouvez définir autoConfirmUser
sur true
si vous voulez confirmer automatiquement l'utilisateur. Vous pouvez définir autoVerifyEmail
sur true
pour vérifier automatiquement l'e-mail de l'utilisateur. Vous pouvez définir autoVerifyPhone
sur true
pour vérifier automatiquement le numéro de téléphone de l'utilisateur.
Note
Paramètres de réponseautoVerifyPhone
, autoVerifyEmail
et autoConfirmUser
sont ignorés par Amazon Cognito lorsque la fonction Lambda de pré-inscription est déclenchée par le. AdminCreateUser
API
- autoConfirmUser
-
Défini sur
true
pour confirmer automatiquement l'utilisateur, ou surfalse
dans le cas contraire. - autoVerifyEmail
-
Affectez-lui la valeur
true
pour que l'adresse e-mail d'un utilisateur qui s'inscrit soit définie comme vérifiée, sinon affectez-lui la valeurfalse
. SiautoVerifyEmail
est défini surtrue
, l'attributemail
doit comporter une valeur valide et non nulle. Dans le cas contraire, une erreur survient et l'utilisateur ne pourra pas finaliser l'inscription.Si l'attribut
email
est sélectionné en tant qu'alias, un alias est créé pour l'adresse e-mail de l'utilisateur quand le paramètreautoVerifyEmail
est défini. S'il existe déjà un alias avec cette adresse e-mail, l'alias est déplacé vers le nouvel utilisateur et l'adresse e-mail de l'utilisateur précédent est marquée comme non vérifiée. Pour de plus amples informations, veuillez consulter Personnalisation des attributs de connexion. - autoVerifyPhone
-
Définir sur
true
pour que le numéro de téléphone d'un utilisateur qui s'inscrit soit défini comme vérifié, sinon définir surfalse
. SiautoVerifyPhone
est défini surtrue
, l'attributphone_number
doit comporter une valeur valide et non nulle. Dans le cas contraire, une erreur survient et l'utilisateur ne pourra pas finaliser l'inscription.Si l'attribut
phone_number
est sélectionné en tant qu'alias, un alias est créé pour le numéro de téléphone de l'utilisateur lorsque le paramètreautoVerifyPhone
est défini. Si un alias existe déjà avec ce numéro de téléphone, l'alias sera déplacé vers le nouvel utilisateur et le numéro de téléphone de l'utilisateur précédent sera marqué comme non vérifié. Pour de plus amples informations, veuillez consulter Personnalisation des attributs de connexion.
Didacticiels relatifs à l'inscription
La fonction Lambda Avant l'inscription est déclenchée juste avant l'inscription d'un utilisateur. Consultez ces didacticiels d'inscription à Amazon Cognito pour JavaScript Android et iOS.
Plateforme | Didacticiel |
---|---|
JavaScript Identité SDK | Inscrivez les utilisateurs avec JavaScript |
Identité Android SDK | Inscrivez des utilisateurs avec Android |
Identité iOS SDK | Inscrivez des utilisateurs avec iOS |
Exemple d'avant inscription : confirmation automatique d'utilisateurs à partir d'un domaine enregistré
Vous pouvez utiliser le déclencheur Lambda de pré-inscription afin d'ajouter une logique personnalisée pour valider les nouveaux utilisateurs qui s'inscrivent pour votre groupe d'utilisateurs. Il s'agit d'un exemple de JavaScript programme qui montre comment inscrire un nouvel utilisateur. Il appelle un déclencheur Lambda de pré-inscription dans le cadre de l'authentification.
Voici un exemple de déclencheur Lambda appelé juste avant l'inscription avec le déclencheur Lambda Avant l'inscription du groupe d'utilisateurs. Il utilise un attribut personnalisé custom:domain pour confirmer automatiquement les nouveaux utilisateurs à partir d'un domaine de messagerie en particulier. Tous les nouveaux utilisateurs ne figurant pas dans le domaine personnalisé seront ajoutés au groupe d'utilisateurs, mais ne seront pas automatiquement confirmés.
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 :
Exemple d'avant inscription : confirmation et vérification automatiques de tous les utilisateurs
Cet exemple confirme tous les utilisateurs et définit les attributs email
et phone_number
sur « verified » si l'attribut est présent. De même, si l'option d'attribution d'un alias est activée, des alias sont créés pour phone_number
et email
lorsque la vérification automatique est définie.
Note
S'il existe déjà un alias avec ce numéro de téléphone, l'alias est déplacé vers le nouvel utilisateur et l'attribut phone_number
de l'utilisateur précédent est marqué comme non vérifié. Il en va de même pour les adresses e-mail. Pour éviter que cela ne se produise, vous pouvez utiliser les groupes d'utilisateurs ListUsers APIpour voir s'il existe un utilisateur existant qui utilise déjà le numéro de téléphone ou l'adresse e-mail du nouvel utilisateur comme alias.
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 :
Exemple de pré-inscription : Refuser l'inscription si le nom d'utilisateur comporte moins de cinq caractères
Cet exemple vérifie la longueur du nom d'utilisateur dans une demande d'inscription. L'exemple renvoie une erreur si l'utilisateur a saisi un nom de moins de cinq caractères.
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 :