メインコンテンツへスキップ
Regular Web Applications で埋め込み型の API を使用するには、Auth0 Dashboard > Applications > Applications のアプリケーション設定で、Advanced Settings > Grant Types にある Passwordless OTP グラントを有効にしてください。 Regular Web Applications 向けのパスワードレス認証は、次の 2 つの手順で構成されます。
  1. アプリケーションでユーザー識別子 (ユーザーのメールアドレスまたは電話番号) を取得し、/passwordless/start エンドポイントを呼び出してパスワードレスフローを開始します。ユーザーには、メール、1 回限り使用できる code を含む SMS、またはマジックリンクが送信されます。
  2. マジックリンクを送信していない場合は、ユーザーに 1 回限り使用できる code の入力を求め、/oauth/token エンドポイントを呼び出して認証トークンを取得します。
マジックリンクを使用する場合は、/oauth/token を呼び出す必要はありません。ユーザーがマジックリンクをクリックすると、アプリケーションのコールバック URL にリダイレクトされます。 以下に、さまざまなシナリオでこれらの API エンドポイントを呼び出す際に使用できるコードスニペットをいくつか示します。 メールで 1 回限り使用できる code を送信する メールでマジックリンクを送信する send: link を指定します。 SMS 経由でワンタイムパスワードを送信する SMS ユーザーの認証 メールアドレスでユーザーを認証する マジックリンクでユーザーを認証する マジックリンクを送信する場合、ユーザーを認証するために API を呼び出す必要はありません。ユーザーはリンクをクリックすると、コールバック URL にリダイレクトされます。

レート制限対策として auth0-forwarded-for ヘッダーを設定する

/passwordless/start エンドポイントには、IP ごとに 1 時間あたり 50 リクエストのレート制限があります。サーバーサイドから API を呼び出す場合、バックエンドの IP がこのレート制限に達しやすくなります。この問題への対処方法については、Using Passwordless APIs の「パスワードレス Endpoints におけるレート制限」セクションを参照してください。

MFA をカスタマイズ

埋め込みフローで をカスタマイズできます。MFA API を使用すると、アプリケーションでサポートされている任意の認証要素について、ユーザーが登録したり、その要素を使って認証チャレンジを実行したりできるようになります。 Web 向け Lock を使用している場合、oauth/token エンドポイントは mfa_required エラーを返し、MFA API の使用に必要な mfa_token と、アプリケーションが現在サポートしている認証手段の一覧を含む mfa_requirements パラメーターを返します。
{
  "error": "mfa_required",
  "error_description": "Multifactor authentication required",
  "mfa_token": "Fe26...Ha",
  "mfa_requirements": {
    "challenge": [
      { "type": "otp" },
      { "type": "push-notification" },
      { "type": "phone" },
      { "type": "recovery-code" }
      { "type": "email"} //チャレンジでのみ使用可能
    ]
  }
}
mfa_token を使用して mfa/authenticator エンドポイントを呼び出し、ユーザーが登録しているすべての要素を一覧表示したうえで、アプリケーションでサポートしている type と一致するものを特定します。また、チャレンジを発行するには、対応する authenticator_type も取得する必要があります。
[
  {
    "type": "recovery-code",
    "id": "recovery-code|dev_qpOkGUOxBpw6R16t",
    "authenticator_type": "recovery-code",
    "active": true
  },
  {
    "type": "otp",
    "id": "totp|dev_6NWz8awwC8brh2dN",
    "authenticator_type": "otp",
    "active": true
  }
]
request/mfa/challenge エンドポイントを呼び出して、MFA チャレンジを強制します。 Auth0 Actions を使用すると、MFA フローをさらにカスタマイズできます。詳細については、Actions Triggers: post-challenge - API オブジェクト を参照してください。