Passer au contenu principal

Avant de commencer

  • Activez le type d’octroi MFA pour votre application. Pour en savoir plus, consultez Update Grant Types.
Auth0 fournit plusieurs points de terminaison d’API pour vous aider à gérer les authentificateurs utilisés avec une application pour l’ (MFA). Vous pouvez utiliser ces points de terminaison pour créer une interface utilisateur complète permettant aux utilisateurs de gérer leurs facteurs d’authentification.

Obtenir des jetons d’accès pour l’API MFA

Pour appeler l’API MFA afin de gérer les inscriptions, vous devez d’abord obtenir un pour l’API MFA. Pour utiliser l’API MFA dans le cadre d’un flux d’authentification, vous pouvez suivre les étapes détaillées dans Authentifier avec l’octroi de mot de passe du propriétaire de la ressource et MFA. Si vous créez une interface utilisateur pour gérer les facteurs d’authentification, vous devrez obtenir un jeton que vous pourrez utiliser avec l’API MFA à tout moment, et pas seulement pendant l’authentification. Un jeton d’accès MFA, ou un jeton d’accès avec l’ https://{yourDomain}/mfa/, authentifie simultanément et déclenche une demande de défi MFA. L’activation des facteurs dans votre locataire et l’inscription de vos utilisateurs déterminent si le défi MFA est lancé :
  • Si votre locataire permet l’inscription à plusieurs facteurs et que vos utilisateurs sont inscrits à un facteur valide (à l’exclusion du courriel), comme un mot de passe à usage unique (OTP), l’utilisateur reçoit un défi MFA à la connexion.
  • Si vos utilisateurs ne sont inscrits à aucun facteur d’authentification, ou s’ils sont uniquement inscrits au facteur email, le jeton MFA est émis et l’utilisateur ne reçoit aucun défi.
La durée de validité par défaut des jetons d’accès avec l’audience https://{yourDomain}/mfa/* est de 10 minutes. Cette valeur ne peut pas être configurée.

Universal Login

Si vous utilisez Universal Login, redirigez vers le point de terminaison Authorize en précisant l’audience https://{yourDomain}/mfa/.
Lorsque https://{yourDomain}/mfa/ est précisée comme audience, la MFA est exigée. Si les utilisateurs finaux activent Se souvenir de ce navigateur alors que .../mfa/ est précisée comme audience, ce paramètre n’aura aucun effet.Auth0 recommande aux administrateurs du locataire de créer une Action qui définit allowRememberBrowser sur false. Cela masquera Se souvenir de ce navigateur dans l’expérience utilisateur finale.

Octroi par mot de passe du propriétaire de la ressource

Si vous utilisez l’octroi par mot de passe du (ROPG), vous avez 3 options :
  • Demandez l’audience https://{yourDomain}/mfa/ à la connexion, puis utilisez un jeton d’actualisation pour renouveler le jeton plus tard.
  • Si vous devez lister et supprimer des authentificateurs, demandez à l’utilisateur de s’authentifier de nouveau avec /oauth/token, en précisant l’audience https://{yourDomain}/mfa/. Les utilisateurs devront compléter la MFA avant de pouvoir lister ou supprimer des facteurs d’authentification.
  • Si vous devez seulement lister des authentificateurs, demandez à l’utilisateur de s’authentifier de nouveau au moyen de /oauth/token avec un nom d’utilisateur et un mot de passe. Le point de terminaison retournera une erreur mfa_required, ainsi qu’un mfa_token que vous pourrez utiliser pour lister les authentificateurs. Les utilisateurs devront fournir leur mot de passe pour voir leurs authentificateurs.

Scopes

Lorsque vous demandez un jeton pour l’audience MFA, vous pouvez demander les scopes suivants :
ScopeDescription
enrollPour inscrire un nouvel authentificateur.
read:authenticatorsPour lister les authentificateurs existants.
remove:authenticatorsPour supprimer un authentificateur.

Lister les authentificateurs

Pour obtenir la liste des authentificateurs d’un utilisateur, vous pouvez appeler le point de terminaison des authentificateurs MFA : La réponse devrait contenir des renseignements sur le ou les types d’authentificateurs :
[
  {
    "authenticator_type": "recovery-code",
    "id": "recovery-code|dev_IsBj5j3H12VAdOIj",
    "active": true
  },
  {
    "authenticator_type": "otp",
    "id": "totp|dev_nELLU4PFUiTW6iWs",
    "active": true,
  },
  {
    "authenticator_type": "oob",
    "oob_channel": "sms",
    "id": "sms|dev_sEe99pcpN0xp0yOO",
    "name": "+1123XXXXX",
    "active": true
  }
]
Pour créer une interface utilisateur permettant aux utilisateurs finaux de gérer leurs facteurs, vous devez ignorer les authentificateurs dont active a la valeur false. Ces authentificateurs n’ont pas été confirmés par les utilisateurs; ils ne peuvent donc pas être utilisés pour un défi MFA. L’API MFA liste les inscriptions suivantes selon le type d’authentificateur :
AuthentificateurActions
Push et OTPSi push est activé, Auth0 crée aussi une inscription OTP. Vous verrez les deux dans la liste des inscriptions.
SMS et voixSi SMS et voix sont tous deux activés, lorsqu’un utilisateur s’inscrit à l’aide de SMS ou de la voix, Auth0 crée automatiquement deux authentificateurs pour le numéro de téléphone : un pour SMS et un autre pour la voix.
CourrielTous les courriels vérifiés seront listés comme authentificateurs.

Inscrire des authentificateurs

Consultez les liens suivants pour savoir comment inscrire des authentificateurs pour différents facteurs : Vous pouvez aussi utiliser le flux Universal Login pour inscrire des utilisateurs en tout temps.

Supprimer des authentificateurs

Pour supprimer un authentificateur associé, envoyez une requête DELETE au point de terminaison authentificateur MFA en remplaçant AUTHENTICATOR_ID par l’ID de l’authentificateur approprié. Vous pouvez obtenir cet ID lorsque vous listez les authentificateurs. Si un mfa_token a été utilisé pour lister les authentificateurs, les utilisateurs devront effectuer la vérification MFA pour obtenir un jeton d’accès avec une audience de https://{yourDomain}/mfa/ afin de supprimer un authentificateur. Si l’authentificateur a été supprimé, une réponse 204 est renvoyée. Lorsque vous supprimez un authentificateur, les actions suivantes se produisent selon le type d’authentificateur :
AuthentificateurAction
Push et OTPLorsqu’un utilisateur inscrit un authentificateur Push, Auth0 inscrit également OTP. Si vous supprimez l’un des deux, l’autre est également supprimé.
SMS et voixLorsqu’un utilisateur inscrit SMS ou le mode voix, Auth0 crée deux authentificateurs, SMS et voix. Si vous supprimez l’un des deux, l’autre est également supprimé.
CourrielTous les courriels vérifiés sont répertoriés comme authentificateurs, mais vous ne pouvez pas les supprimer. Vous pouvez seulement supprimer les authentificateurs par courriel qui ont été inscrits explicitement.

Régénérer des codes de récupération

Pour supprimer un code de récupération et en générer un nouveau, obtenez un jeton d’accès à la Management API d’Auth0 et utilisez le point de terminaison de régénération du code de récupération de la . Vous obtiendrez un nouveau code de récupération que l’utilisateur final devra noter, par exemple :
{  
   "recovery_code": "FA45S1Z87MYARX9RG6EVMAPE"
}

En savoir plus