api.authentication.setActor() を使用して actor が設定された Custom Token Exchange のトランザクションでは、MFA はサポートされません。MFA が必要な場合 (ポリシーまたは Post-Login Action による) に、Custom Token Exchange Action で actor を設定すると、トランザクションは 400 エラー MFA is not supported using actor_token with the requested token exchange profile. で失敗します。- テナントで MFA ポリシーを有効にして設定する
- Post-Login Action で
api.multifactor.enable()を使用する
/token エンドポイントへの最初の Custom Token Exchange 呼び出しを mfa_required エラーで拒否します。Auth0 MFA API では、このエラーを使って要素のチャレンジと検証を行い、要求された Auth0 のアクセストークン、ID トークン、リフレッシュトークンを取得できます。
Custom Token Exchange では
api.authentication.challengeWith() と api.authentication.enrollWith() はサポートされていません。これらのメソッドを Post-Login Action で使用すると、トランザクションは回復不能なエラーで失敗します。subject_token_type の値に応じて event.transaction.protocol==oauth2-token-exchange となる場合は、これらのメソッドを使用しないでください。api.multifactor.enable() と MFA ポリシーもサポートされません。
MFA grant の使用方法について詳しくは、Custom Token Exchange は同じモデルに従うため、MFA を使用して Resource Owner Password Flow で認証する を参照してください。詳細な例については、Use case: Perform MFA during Custom Token Exchange も参照してください。