- を実装し、Auth0 と連携するために auth0.js を使ってログインページをカスタマイズしたい場合。
- アプリケーションにログインフローを埋め込みたい場合。
パスワードレス エンドポイント
POST /passwordless/start
アプリケーションの設定にある Advanced Settings > Grant Types で、Auth0 Dashboard > アプリケーション > アプリケーション から Passwordless OTP グラントを有効にする必要があります。
- メールまたは SMS による使い捨てコード
- メールによる使い捨てリンク
yourAuth0Tenant}.auth0.com/passwordless/verify-redirect への呼び出しがトリガーされます。Auth0 はユーザーをアプリケーションにリダイレクトし、ユーザーはログインされます。
コードを使用する場合、アプリケーションはそのコードの入力を求める必要があります。その後、そのコードを認証トークンと交換するために、/oauth/token エンドポイントまたは auth0.js SDK の passwordlessLogin メソッドを使用します。
POST /oauth/token
/oauth/token を使用する必要があります。このエンドポイントはシングルページアプリケーションからは使用できません。
これを行うには、まず Auth0 Dashboard > アプリケーション > アプリケーション のアプリケーションの 設定 にある Advanced Settings > Grant Types で、Passwordless OTP グラントを有効にする必要があります。
ユーザーはOTPコードを受け取り、ネイティブアプリケーションまたは Web アプリケーションでその入力を求められます。ユーザーがコードを入力したら、以下のパラメーターを指定して /oauth/token エンドポイントを呼び出すことで、認証フローを完了できます。
問題なく進めば、Auth0 は次のようなレスポンスを返します。
Auth0.js の使用
パスワードレスのエンドポイントにおけるレート制限
auth0-forwarded-for ヘッダーを指定できますが、これが考慮されるのは次の場合に限られます。
- API 呼び出しが機密アプリケーションに対して行われる場合。
- API 呼び出しに が含まれている場合。
- Trust IP Header トグルがオンになっている場合。
MFA をカスタマイズする
/oauth/token エンドポイントを呼び出すと、 は mfa_required エラーを返します。このエラーには次が含まれます。
-
登録とチャレンジのために MFA API を呼び出す際に必要な
mfa_token。 -
mfa_requirementsパラメーター。チャレンジでアプリケーションがサポートする認証要素のtypeを示します。
mfa_token を使用して mfa/authenticator エンドポイントを呼び出し、ユーザーが登録済みの認証要素をすべて一覧取得したうえで、アプリケーションがサポートする type と一致するものを特定します。チャレンジを発行するには、一致する authenticator_type も取得する必要があります:
request/mfa/challenge エンドポイントを呼び出して、MFA チャレンジを必須にします。
Auth0 Actions を使用すると、MFA フローをさらにカスタマイズできます。詳しくは、Actions トリガー: post-challenge - API オブジェクト をお読みください。