Skip to main content
MFA n’est pas compatible avec les transactions d’échange de jetons personnalisé où un acteur est défini au moyen de api.authentication.setActor(). Si MFA est requis (par une politique ou une Action post-login) et que l’Action d’échange de jetons personnalisé définit un acteur, la transaction échoue avec une erreur 400 : MFA is not supported using actor_token with the requested token exchange profile.
Pour ajouter une protection contre le vol de jetons ou d’autres risques de sécurité, vous pouvez ajouter l’authentification multifacteur à une requête d’échange de jetons personnalisé à l’aide de l’une des méthodes suivantes : Lorsque vous ajoutez MFA, le serveur d’autorisation Auth0 rejette la requête initiale d’échange de jetons personnalisé vers le endpoint /token avec une erreur mfa_required. Vous pouvez utiliser cette erreur dans l’API MFA Auth0 pour lancer une demande de vérification, puis vérifier un facteur afin d’obtenir les jetons d’accès, d’ID et d’actualisation Auth0 demandés.
L’échange de jetons personnalisé ne prend pas en charge api.authentication.challengeWith() ni api.authentication.enrollWith(). Si vous utilisez ces méthodes avec votre Action post-login, la transaction échouera avec une erreur non récupérable. Assurez-vous de ne pas utiliser ces méthodes lorsque event.transaction.protocol==oauth2-token-exchange, selon la valeur de subject_token_type.
Lorsqu’une transaction d’échange de jetons personnalisé est associée à une organisation, api.multifactor.enable() et les politiques MFA ne sont pas pris en charge non plus. Pour en savoir plus sur l’utilisation du grant MFA, consultez S’authentifier à l’aide du flux Resource Owner Password avec MFA, car l’échange de jetons personnalisé suit le même modèle. Vous pouvez aussi consulter un exemple détaillé dans Cas d’utilisation : effectuer MFA pendant l’échange de jetons personnalisé.