メインコンテンツへスキップ
API は、次の 2 つのシナリオで使用できます。
  • を実装し、Auth0 と連携するために auth0.js を使ってログインページをカスタマイズしたい場合。
  • アプリケーションにログインフローを埋め込みたい場合。
各シナリオで Passwordless の Universal Login または埋め込みログインを実装する方法について詳しくは、Passwordless Authentication with Universal Login または Passwordless Authentication with Embedded Login を参照してください。

パスワードレスエンドポイント

POST /passwordless/start

アプリケーションの設定で、Auth0 Dashboard > Applications > ApplicationsAdvanced Settings > Grant Types にある Passwordless OTP グラントを有効にする必要があります。
POST /passwordless/start エンドポイントを呼び出すと、Classic Login と 埋め込みログイン の両方でパスワードレス認証プロセスを開始できます。 エンドポイントに指定したパラメーターに応じて、Auth0 は次のいずれかを送信してユーザーの検証プロセスを開始します。
  • 単一使用の code をメールまたは SMS で送信
  • 単一使用のリンクをメールで送信
API 呼び出しは、次の構造である必要があります。 マジックリンクを使用する場合、ユーザーは Authentication API によって生成されたリンクを受け取ります。ユーザーがそのリンクをクリックすると、{yourAuth0Tenant}.auth0.com/passwordless/verify-redirect が呼び出されます。Auth0 はユーザーをアプリケーションにリダイレクトし、ユーザーはログインします。 code を使用する場合、アプリケーションはその code の入力を求める必要があります。その後、/oauth/token エンドポイント、または Auth0.js SDK の passwordlessLogin メソッドを使用して、その code を認証トークンに引き換える必要があります。

POST /oauth/token

ネイティブアプリケーションまたは通常の Web アプリケーション向けにパスワードレスを実装している場合は、/oauth/token を使用して OTP code を認証トークンに交換する必要があります。シングルページアプリケーションからはこのエンドポイントを使用できません。 これを行うには、まず Auth0 Dashboard > Applications > Applications のアプリケーション設定にある Advanced Settings > Grant Types で、アプリケーションの Passwordless OTP グラントを有効にする必要があります。 ユーザーは OTP code を受け取り、ネイティブアプリケーションまたは Web アプリケーションはその入力をユーザーに求めます。ユーザーが code を入力したら、次のパラメーターを指定して /oauth/token エンドポイントを呼び出すことで、認証フローを完了できます。 問題がなければ、Auth0 は次のようなレスポンスを返します。
その後、 をデコードしてユーザー情報を取得するか、 を使って通常どおり API を呼び出すことができます。

Auth0.js の使用

シングルページアプリケーション でパスワードレス認証を実装する場合や、Universal Login ページをカスタマイズする場合は、Auth0.js と付属の passwordlessLogin メソッドを使用してください。実装は複雑なため、API を直接呼び出すのではなく、ライブラリを使用することをお勧めします。

パスワードレスエンドポイントでのレート制限

Auth0 のレート制限および 機能では、API 呼び出しを行うマシンの IP のみが考慮されます。API 呼び出しがバックエンドサーバーから行われる場合、通常、Auth0 に考慮させたいのはサーバーの IP ではなくエンドユーザーの IP です。 Auth0 では、API 呼び出しで auth0-forwarded-for ヘッダーを指定できますが、これが考慮されるのは次の場合のみです。
  • API 呼び出しが機密アプリケーションに対して行われる。
  • API 呼び出しに が含まれている。
  • Trust IP Header トグルがオンになっている。
詳しくは、Avoid Common Issues with Resource Owner Password Flow and Attack Protection を参照してください。

MFA をカスタマイズする

パスワードレス API を使用してをカスタマイズします。アプリケーションがアクセストークンをリクエストするために /oauth/token エンドポイントを呼び出すと、mfa_required エラーを返し、次の情報を提供します。
  • 登録とチャレンジのために MFA API を呼び出す際に必要な mfa_token
  • チャレンジでアプリケーションがサポートする認証要素の type を示す mfa_requirements パラメーター。
mfa_token を使用して mfa/authenticator エンドポイントを呼び出し、ユーザーが登録しているすべての認証要素を一覧取得し、アプリケーションでサポートしている type と一致するものを特定します。また、チャレンジを発行するには、対応する authenticator_type も取得する必要があります。
request/mfa/challenge エンドポイントを呼び出して、MFA チャレンジを実行します。 Auth0 Actions を使用すると、MFA フローをさらにカスタマイズできます。詳細については、Actions Triggers: post-challenge - API Object を参照してください。