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.
TOTPjeton logiciel MFA
Lorsque vous configurez un jeton TOTP logiciel MFA dans votre groupe d'utilisateurs, celui-ci se connecte avec un nom d'utilisateur et un mot de passe, puis utilise un TOTP pour terminer l'authentification. Une fois que votre utilisateur a défini et vérifié un nom d'utilisateur et un mot de passe, il peut activer un jeton TOTP logiciel pourMFA. Si votre application utilise l'interface utilisateur hébergée par Amazon Cognito pour connecter les utilisateurs, votre utilisateur envoie son nom d'utilisateur et son mot de passe, puis le soumet sur une page TOTP de connexion supplémentaire.
Vous pouvez l'activer TOTP MFA pour votre groupe d'utilisateurs dans la console Amazon Cognito ou utiliser les opérations Amazon API Cognito. Au niveau du groupe d'utilisateurs, vous pouvez appeler SetUserPoolMfaConfigpour configurer MFA et activer TOTPMFA.
Note
Si vous n'avez pas activé le jeton TOTP logiciel MFA pour le groupe d'utilisateurs, Amazon Cognito ne peut pas utiliser le jeton pour associer ou vérifier des utilisateurs. Dans ce cas, les utilisateurs reçoivent une exception SoftwareTokenMFANotFoundException
avec la description Software Token MFA has not been enabled by the userPool
. Si vous désactivez ultérieurement le jeton logiciel MFA pour le groupe d'utilisateurs, les utilisateurs qui ont précédemment associé et vérifié un TOTP jeton peuvent continuer à l'utiliser pourMFA.
La configuration TOTP pour votre utilisateur est un processus en plusieurs étapes au cours duquel celui-ci reçoit un code secret qu'il valide en saisissant un mot de passe à usage unique. Ensuite, vous pouvez l'activer TOTP MFA pour votre utilisateur ou la définir TOTP comme MFA méthode préférée pour votre utilisateur.
Lorsque vous configurez votre groupe d'utilisateurs pour qu'il l'exige TOTP MFA et que vos utilisateurs s'inscrivent à votre application dans l'interface utilisateur hébergée, Amazon Cognito automatise le processus utilisateur. Amazon Cognito invite votre utilisateur à choisir une MFA méthode, affiche un code QR pour configurer son application d'authentification et vérifie son inscription. MFA Dans les groupes d'utilisateurs où vous avez autorisé les utilisateurs à choisir entre SMS et TOTPMFA, Amazon Cognito propose également à votre utilisateur un choix de méthode. Pour plus d’informations sur l’expérience d’inscription à l’interface utilisateur hébergée, veuillez consulter Comment créer un nouveau profil utilisateur.
Important
Lorsqu'un AWS WAF site Web est ACL associé à un groupe d'utilisateurs et qu'une règle de votre site Web ACL présente unCAPTCHA, cela peut provoquer une erreur irrécupérable lors de l'enregistrement de l'interface utilisateur hébergée. TOTP Pour créer une règle comportant une CAPTCHA action et n'affectant pas l'interface utilisateur hébergéeTOTP, consultezConfiguration de votre AWS WAF site Web ACL pour une interface utilisateur hébergée TOTP MFA. Pour plus d'informations sur AWS WAF le Web ACLs et Amazon Cognito, consultez. Associer un AWS WAF site Web ACL à un groupe d'utilisateurs
Pour l'implémenter TOTP MFA dans une interface utilisateur personnalisée dans laquelle vous utilisez Amazon CognitoAPI, consultez. Configuration MFA pour un utilisateur dans les groupes d'utilisateurs Amazon Cognito API
Pour ajouter MFA à votre groupe d'utilisateurs, consultezAjouter MFA à un groupe d'utilisateurs.
TOTPMFAconsidérations et limites
-
Amazon Cognito prend en charge les jetons logiciels MFA via une application d'authentification qui génère des codes. TOTP Amazon Cognito ne prend pas en charge les applications basées sur le matériel. MFA
-
Lorsque votre groupe d'utilisateurs a besoin TOTP d'un utilisateur qui ne l'a pas configuré, celui-ci reçoit un jeton d'accès unique que votre application peut utiliser pour l'activer TOTP MFA pour l'utilisateur. Les tentatives de connexion suivantes échouent tant que l'utilisateur n'a pas enregistré un facteur de TOTP connexion supplémentaire.
-
Un utilisateur qui s'inscrit dans votre groupe d'utilisateurs via l'
SignUp
APIopération ou via l'interface utilisateur hébergée reçoit des jetons uniques lorsqu'il termine son inscription. -
Une fois que vous avez créé un utilisateur et que l’utilisateur a défini son mot de passe initial, Amazon Cognito émet des jetons uniques à partir de l’interface utilisateur hébergée vers l’utilisateur. Si vous définissez un mot de passe permanent pour l’utilisateur, Amazon Cognito émet des jetons uniques lorsque l’utilisateur se connecte pour la première fois.
-
Amazon Cognito n'émet pas de jetons à usage unique à un utilisateur créé par un administrateur qui se connecte à l'aide des opérations or. InitiateAuthAdminInitiateAuthAPI Une fois que votre utilisateur a réussi à définir son mot de passe initial, ou si vous avez défini un mot de passe permanent pour l'utilisateur, Amazon Cognito le met immédiatement au défi de le configurer. MFA
-
-
Si un utilisateur d'un groupe d'utilisateurs qui en MFA a besoin a déjà reçu un jeton d'accès unique mais qu'il ne l'a pas configuré TOTPMFA, il ne peut pas se connecter avec l'interface utilisateur hébergée tant qu'il n'a pas configuréMFA. Au lieu du jeton d'accès, vous pouvez utiliser la valeur de
session
réponse d'unMFA_SETUP
défi envoyé à une AssociateSoftwareTokendemande InitiateAuthou contenue AdminInitiateAuthdans celle-ci. -
Si vos utilisateurs l'ont configuréTOTP, ils peuvent l'utiliser pour le groupe d'utilisateursMFA, même si vous le désactivez ultérieurement TOTP pour le groupe d'utilisateurs.
-
Amazon Cognito n'accepte que les applications TOTPs d'authentification qui génèrent des codes avec la HMAC fonction de hachage -. SHA1 Les codes générés avec le hachage SHA -256 renvoient une
Code mismatch
erreur.
Configuration MFA pour un utilisateur dans les groupes d'utilisateurs Amazon Cognito API
Lorsqu'un utilisateur se connecte pour la première fois, votre application utilise son jeton d'accès à usage unique pour générer la clé TOTP privée et la présenter à votre utilisateur sous forme de texte ou de code QR. Votre utilisateur configure son application d'authentification et fournit une TOTP pour les tentatives de connexion ultérieures. Votre application ou l'interface utilisateur hébergée les présente TOTP à Amazon Cognito dans les réponses aux MFA défis.
Rubriques
Associer le jeton TOTP logiciel
Pour associer le TOTP jeton, envoyez à votre utilisateur un code secret qu'il doit valider à l'aide d'un mot de passe à usage unique. L’association du jeton nécessite trois étapes.
-
Lorsque votre utilisateur choisit un jeton TOTP logicielMFA, appelez AssociateSoftwareTokenpour renvoyer un code secret partagé unique généré pour le compte utilisateur. Vous pouvez autoriser à l' AssociateSoftwareToken aide d'un jeton d'accès ou d'une chaîne de session.
-
Votre application présente à l’utilisateur la clé privée ou un code QR généré à partir de la clé privée. Votre utilisateur doit saisir la clé dans une application TOTP génératrice telle que Google Authenticator. Vous pouvez utiliser libqrencode
pour générer un code QR. -
Votre utilisateur saisit la clé ou scanne le code QR dans une application d’authentification telle que Google Authenticator, et l’application commence à générer des codes.
Vérifiez le TOTP jeton
Vérifiez ensuite le TOTP jeton. Demandez des exemples de codes à votre utilisateur et fournissez-les au service Amazon Cognito pour confirmer que l'utilisateur génère correctement TOTP les codes, comme suit.
-
Votre application demande à votre utilisateur de fournir un code pour démontrer qu’il a correctement configuré son application d’authentification.
-
L’application d’authentification de l’utilisateur affiche un mot de passe temporaire. L’application d’authentification base le mot de passe sur la clé secrète que vous avez donnée à l’utilisateur.
-
Votre utilisateur saisit son mot de passe temporaire. Votre application transmet le mot de passe temporaire à Amazon Cognito dans le cadre d'une
VerifySoftwareToken
API demande. -
Amazon Cognito a conservé la clé secrète associée à l'utilisateur, génère une clé TOTP et la compare à celle fournie par votre utilisateur. S’ils correspondent,
VerifySoftwareToken
renvoie une réponseSUCCESS
. -
Amazon Cognito associe le TOTP facteur à l'utilisateur.
-
Si l’opération
VerifySoftwareToken
renvoie une réponseERROR
, assurez-vous que l’horloge de l’utilisateur est correcte et que ce dernier n’a pas dépassé le nombre maximal de nouvelles tentatives. Amazon Cognito accepte les TOTP jetons placés dans les 30 secondes qui précèdent ou suivent la tentative, afin de tenir compte d'un léger décalage horaire. Une fois le problème résolu, recommencez l' VerifySoftwareToken opération.
Connectez-vous avec TOTP MFA
À ce stade, l’utilisateur se connecte à l’aide du mot de passe à usage unique à durée limitée. Le processus est le suivant.
-
L’utilisateur saisit son nom d’utilisateur et son mot de passe pour se connecter à votre application cliente.
-
Le TOTP MFA défi est lancé et votre utilisateur est invité par votre application à saisir un mot de passe temporaire.
-
Votre utilisateur obtient le mot de passe temporaire d'une application de TOTP génération associée.
-
Votre utilisateur saisit le TOTP code dans votre application cliente. L’appli demande au service Amazon Cognito de le vérifier. Pour chaque connexion, vous RespondToAuthChallengedevez être appelé pour obtenir une réponse au nouveau défi TOTP d'authentification.
-
Si le jeton est vérifié par Amazon Cognito, la connexion est réussie et l’utilisateur poursuit le flux d’authentification.
Supprimer le TOTP jeton
Enfin, votre application doit autoriser votre utilisateur à désactiver sa TOTP configuration. Actuellement, vous ne pouvez pas supprimer le jeton TOTP logiciel d'un utilisateur. Pour remplacer le jeton logiciel de votre utilisateur, associez et vérifiez un nouveau jeton logiciel. Pour désactiver TOTP MFA pour un utilisateur, appelez SetUserMFAPreferencepour modifier votre utilisateur afin qu'il utilise non MFA ou uniquement SMSMFA.
-
Créez une interface dans votre application pour les utilisateurs qui souhaitent effectuer une réinitialisationMFA. Dans cette interface, invitez un utilisateur à saisir son mot de passe.
-
Si Amazon Cognito renvoie un TOTP MFA défi, mettez à jour les MFA préférences de votre utilisateur avec. SetUserMFAPreference
-
Dans votre application, informez votre utilisateur qu'il a désactivé l'application MFA et demandez-lui de se reconnecter.
Configuration de votre AWS WAF site Web ACL pour une interface utilisateur hébergée TOTP MFA
Lorsqu'un AWS WAF site Web est ACL associé à un groupe d'utilisateurs et qu'une règle de votre site Web ACL présente unCAPTCHA, cela peut provoquer une erreur irrécupérable lors de l'enregistrement de l'interface utilisateur hébergée. TOTP AWS WAF CAPTCHAles règles ne s'appliquent TOTP MFA que de cette manière à l'interface utilisateur hébergée. SMSMFAn'est pas affecté.
Amazon Cognito affiche l'erreur suivante lorsque votre CAPTCHA règle ne permet pas à un utilisateur de terminer TOTP MFA la configuration.
Demande non autorisée en raison du WAF captcha.
Cette erreur se produit AWS WAF lorsque votre groupe CAPTCHA d'utilisateurs vous VerifySoftwareTokenAPIdemande AssociateSoftwareTokende répondre à une demande en arrière-plan. Pour créer une règle comportant une CAPTCHA action et n'affectant pas l'interface utilisateur hébergéeTOTP, excluez les valeurs d'x-amzn-cognito-operation-name
en-tête de AssociateSoftwareToken
et VerifySoftwareToken
de l'CAPTCHAaction dans votre règle.
La capture d'écran suivante montre un exemple de AWS WAF règle qui applique une CAPTCHA action à toutes les demandes dont la valeur d'x-amzn-cognito-operation-name
en-tête n'est pas AssociateSoftwareToken
ouVerifySoftwareToken
.
Pour plus d'informations sur AWS WAF le Web ACLs et Amazon Cognito, consultez. Associer un AWS WAF site Web ACL à un groupe d'utilisateurs