Skip to main content
Auth0 offre un flux intégré d’inscription à et d’authentification à l’aide de Universal Login. Toutefois, si vous souhaitez créer votre propre interface utilisateur, vous pouvez utiliser la API MFA pour y parvenir.

Prérequis

Avant de pouvoir utiliser les API MFA, vous devrez activer le type d’octroi MFA pour votre application. Accédez à Auth0 Dashboard > Applications > Advanced Settings > Grant Types et sélectionnez MFA.

Inscription avec OTP

Obtenir un jeton MFA

Selon le moment où vous déclenchez l’inscription, vous pouvez obtenir un pour utiliser l’API MFA de différentes façons :

Inscrire un authentificateur

Envoyez une requête POST au point de terminaison MFA Associate pour inscrire l’authentificateur de l’utilisateur. Le bearer token requis par ce point de terminaison est le MFA token obtenu à l’étape précédente. Pour l’inscription avec OTP, définissez le paramètre authenticator_types sur [otp]. Si la requête réussit, vous recevrez une réponse comme celle-ci :
Si vous obtenez l’erreur User is already enrolled, c’est que l’utilisateur a déjà un facteur de MFA configuré. Avant d’associer un autre facteur à l’utilisateur, vous devez d’abord lui présenter une demande de vérification avec le facteur existant. S’il s’agit de la première fois que l’utilisateur associe un authentificateur, vous remarquerez que la réponse comprend recovery_codes. Les codes de récupération servent à accéder au compte de l’utilisateur s’il perd l’accès à son compte ou à l’appareil utilisé pour l’authentification à deux facteurs. Ces codes ne peuvent être utilisés qu’une seule fois, et de nouveaux codes sont générés au besoin.

Confirmer l’inscription à l’OTP

Pour confirmer l’inscription, l’utilisateur final devra saisir le secret obtenu à l’étape précédente dans une application de génération d’OTP comme Google Authenticator. Il peut saisir le secret en numérisant un code QR avec le barcode_uri ou en entrant manuellement le code secret dans cette application OTP. Vous devriez offrir aux utilisateurs un moyen d’obtenir le secret sous forme de texte s’ils ne peuvent pas numériser le code QR (par exemple, s’ils effectuent l’inscription depuis un appareil mobile ou utilisent une application OTP sur ordinateur). Une fois le secret saisi, l’application OTP affichera un code à 6 chiffres que l’utilisateur devra entrer dans votre application. L’application devra ensuite envoyer une requête POST au , en y incluant cette valeur otp. Si la requête a réussi, vous recevrez une réponse au format suivant, contenant l’access token :
À ce stade, l’authentificateur est entièrement associé et prêt à être utilisé, et vous disposez des jetons d’authentification de l’utilisateur. Vous pouvez à tout moment vérifier si un authentificateur a été confirmé en appelant le point de terminaison MFA Authenticators. Si l’authentificateur est confirmé, la valeur renvoyée pour active est true.

Vérification par OTP

Obtenir un jeton MFA

Obtenez un jeton MFA en suivant les étapes décrites dans S’authentifier avec Resource Owner Password Grant et MFA.

Récupérer les authentificateurs inscrits

Vous pouvez obtenir la liste de tous les authentificateurs inscrits à l’aide du point de terminaison MFA Authenticators : Vous recevrez une liste d’authentificateurs au format suivant :

Terminer l’authentification à l’aide du code reçu

L’utilisateur recevra un mot de passe à usage unique, que vous devrez ensuite lui demander. Vous pouvez vérifier le code et obtenir des jetons d’authentification à l’aide du point de terminaison de jeton OAuth0, en indiquant le mot de passe à usage unique dans le paramètre otp : Si la requête a réussi, vous recevrez une réponse au format ci-dessous contenant l’access token :

Personnaliser la MFA

La MFA personnalisable avec les flux Resource Owner Password Grant, Embedded ou Refresh Token est offerte en accès anticipé. En utilisant cette fonctionnalité, vous acceptez les conditions d’essai gratuit applicables énoncées dans le Master Subscription Agreement d’Okta. Pour en savoir plus sur les étapes de publication d’Auth0, consultez Product Release Stages. Pour participer à l’accès anticipé, communiquez avec Auth0 Support.
La MFA personnalisable permet aux utilisateurs d’enregistrer les facteurs de leur choix pris en charge par votre application et de répondre aux demandes de vérification associées. Lors de l’authentification au point de terminaison oauth/token, la réponse renvoie l’erreur mfa_required, qui inclut le mfa_token à utiliser avec la API MFA ainsi que le paramètre mfa_requirements, qui contient une liste d’authentificateurs :
Utilisez le mfa_token pour effectuer une requête à l’endpoint mfa/authenticator afin d’obtenir la liste de tous les facteurs que l’utilisateur a enregistrés, puis repérez celui du type pris en charge par votre application. Vous devez également obtenir le authenticator_type correspondant pour émettre des challenges :
Imposez la vérification MFA en appelant l’endpoint request/mfa/challenge. Personnalisez davantage votre processus MFA avec Auth0 Actions. Pour en savoir plus, consultez Déclencheurs d’Actions : post-challenge - objet de l’API.

En savoir plus