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 de migration d'utilisateur
Quand un utilisateur n'existe pas dans le groupe d'utilisateurs au moment de la connexion avec un mot de passe, ou dans le flux de mot de passe oublié, Amazon Cognito appelle ce déclencheur. Lorsque la fonction Lambda renvoie une réponse positive, Amazon Cognito crée l'utilisateur dans le groupe d'utilisateurs. Pour en savoir plus sur le flux d'authentification avec le déclencheur Lambda de migration d'utilisateur, consultez Importation d'utilisateurs avec un déclencheur Lambda de migration d'utilisateur.
Pour migrer des utilisateurs de votre annuaire d'utilisateurs existant vers des groupes d'utilisateurs Amazon Cognito au moment de la connexion ou pendant le flux de mot de passe oublié, utilisez ce déclencheur Lambda.
Rubriques
Sources du déclencheur Lambda Migration d'utilisateur
triggerSource valeur | Événement |
---|---|
UserMigration_Authentication |
Migration des utilisateurs lors de la connexion. |
UserMigration_ForgotPassword |
Migration de l'utilisateur dans le cadre du flux de mot de passe oublié. |
Paramètres du déclencheur Lambda Migration d'utilisateur
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 de migration d'utilisateur
- userName
-
Nom d'utilisateur que l'utilisateur saisit lors de la connexion.
- mot de passe
-
Mot de passe que l'utilisateur saisit lors de la connexion. Amazon Cognito n'envoie pas cette valeur dans une demande initiée par un flux de mot de passe oublié.
- validationData
-
Une ou plusieurs paires clé-valeur contenant les données de validation dans la demande de connexion de l'utilisateur. Pour transmettre ces données à votre fonction Lambda, vous pouvez utiliser le ClientMetadata paramètre dans les actions InitiateAuthet AdminInitiateAuthAPI.
- clientMetadata
-
Une ou plusieurs paires clé-valeur que vous pouvez fournir en tant qu'entrée personnalisée à la fonction Lambda pour le déclencheur de migration d'utilisateur. Pour transmettre ces données à votre fonction Lambda, vous pouvez utiliser le ClientMetadata paramètre dans les actions AdminRespondToAuthChallengeet ForgotPasswordAPI.
Paramètres de réponse de migration d'utilisateur
- userAttributes
-
Ce champ est obligatoire.
Ce champ doit contenir une ou plusieurs paires nom-valeur qu'Amazon Cognito stocke dans le profil utilisateur dans votre groupe d'utilisateurs et utilise comme attributs utilisateur. Vous pouvez inclure les attributs utilisateur standard et personnalisés. Les attributs personnalisés ont besoin du préfixe
custom:
pour se distinguer des attributs standard. Pour plus d'informations, consultez Attributs personnalisés.Note
Pour réinitialiser son mot de passe dans le flux de mot de passe oublié, un utilisateur doit avoir une adresse e-mail vérifiée ou un numéro de téléphone vérifié. Amazon Cognito envoie un message contenant un code de réinitialisation de mot de passe à l'adresse e-mail ou au numéro de téléphone spécifiés dans les attributs utilisateur.
Attributs Exigence Tous les attributs signalés comme obligatoires lorsque vous avez créé le groupe d'utilisateurs Si des attributs requis sont manquants au cours de la migration, Amazon Cognito utilise les valeurs par défaut. username
Requis si vous avez configuré votre groupe d'utilisateurs avec des attributs d'alias en plus du nom d'utilisateur pour la connexion, et que l'utilisateur a entré une valeur d'alias valide comme nom d'utilisateur. Cette valeur d'alias peut être une adresse e-mail, un nom d'utilisateur préféré ou un numéro de téléphone.
Si la demande et le groupe d'utilisateurs répondent aux exigences relatives aux alias, la réponse de votre fonction doit attribuer le paramètre
username
qu'elle a reçu à un attribut d'alias. De plus, la réponse doit attribuer votre propre valeur à l'attributusername
. Si votre groupe d'utilisateurs ne répond pas aux conditions requises pour mapper le paramètreusername
reçu sur un alias, le paramètreusername
figurant dans la réponse doit correspondre exactement à la demande ou être omis.Note
username
doit être unique dans le groupe d'utilisateurs. - finalUserStatus
-
Vous pouvez définir ce paramètre sur
CONFIRMED
pour confirmer automatiquement vos utilisateurs afin qu'ils puissent se connecter avec leurs mots de passe précédents. Lorsque vous définissez un utilisateur surCONFIRMED
, il n'a pas besoin de prendre des mesures supplémentaires avant de pouvoir se connecter. Si vous ne définissez pas cet attribut surCONFIRMED
, il est réglé surRESET_REQUIRED
.Un paramètre
finalUserStatus
égal àRESET_REQUIRED
signifie que l'utilisateur doit modifier son mot de passe immédiatement après la migration lors de la connexion, et que votre application cliente doit gérer l'exceptionPasswordResetRequiredException
pendant le flux d'authentification.Note
Amazon Cognito n'applique pas la politique de complexité de mot de passe que vous avez configurée pour le groupe d'utilisateurs lors de la migration à l'aide du déclencheur Lambda. Si le mot de passe ne répond pas à la politique de mot de passe que vous avez configurée, Amazon Cognito accepte toujours le mot de passe pour pouvoir continuer à migrer l'utilisateur. Pour appliquer la politique de sécurité du mot de passe et rejeter les mots de passe non conformes à celle-ci, validez la sécurité du mot de passe dans votre code. Ensuite, si le mot de passe n'est pas conforme à la politique, finalUserStatus définissez-le sur
RESET_REQUIRED
. - messageAction
-
Vous pouvez définir ce paramètre sur
SUPPRESS
pour refuser d'envoyer le message de bienvenue qu'Amazon Cognito envoie habituellement aux nouveaux utilisateurs. Si votre fonction ne renvoie pas ce paramètre, Amazon Cognito envoie le message de bienvenue. - desiredDeliveryMediums
-
Vous pouvez définir ce paramètre pour
EMAIL
envoyer le message de bienvenue par e-mail ouSMS
pour envoyer le message de bienvenue parSMS. Si votre fonction ne renvoie pas ce paramètre, Amazon Cognito envoie le message de bienvenue par. SMS - forceAliasCreation
-
Si vous définissez ce paramètre sur
TRUE
et que le numéro de téléphone ou l'adresse e-mail figurant dans le UserAttributes paramètre existe déjà sous forme d'alias auprès d'un autre utilisateur, l'APIappel fait migrer l'alias de l'utilisateur précédent vers l'utilisateur nouvellement créé. L'utilisateur précédent ne peut plus se connecter à l'aide de cet alias.Si vous définissez ce paramètre sur
FALSE
et que l'alias existe, Amazon Cognito ne migre pas l'utilisateur et renvoie une erreur à l'application cliente.Si vous ne renvoyez pas ce paramètre, Amazon Cognito suppose que sa valeur est « false ».
- activer SMSMFA
-
Définissez ce paramètre sur pour
true
obliger l'utilisateur migré à effectuer une authentification multifactorielle par SMS SMS (MFA) pour se connecter. Votre groupe d'utilisateurs doit avoir été MFA activé. Les attributs de votre utilisateur dans les paramètres de demande doivent inclure un numéro de téléphone, sans quoi la migration de cet utilisateur échouera.
Exemple de migration de l'utilisateur : Migration d'un utilisateur avec un mot de passe existant
Cet exemple de fonction Lambda migre l'utilisateur avec un mot de passe existant et supprime le message de bienvenue d'Amazon Cognito.