メインコンテンツへスキップ
パスワードレス接続を構成して、SMS経由でユーザーにワンタイムパスワード(OTP)を送信し、認証を完了できます。 詳細については、「パスワードレス認証にメールまたはSMSを構成する」をお読みください。 Auth0は、TwilioとカスタムSMSゲートウェイを使用したOTPの送信をサポートしています。カスタムSMSゲートウェイを使用する場合は、「パスワードレス接続用にカスタムSMSゲートウェイを設定する」をお読みください。

仕組み

新しいユーザーがコードを受け取り、アプリケーションで初めて入力すると、Auth0によって認証される前に、sms接続でユーザープロファイルが作成されます。 OTPが送信された電話番号が既存のユーザーと一致する場合、Auth0はユーザーを認証します。

埋め込みログイン

SMS workflow for passwordless authentication

ユニバーサルログイン

Passwordless sms workflow diagram with universal login

カスタムSMSゲートウェイ

埋め込みログインまたはユニバーサルログイン用にカスタムSMSゲートウェイを構成することもできます。
Custom SMS gateway workflow for passwordless authentication

接続を構成する

  1. Auth0 Dashboardで、[Authentication(認証)]>[Passwordless(パスワードレス)]に移動し、 [SMS] トグルを有効にします。
  2. [SMS] を選択して構成ウィンドウを開きます。

Twilio設定を構成する

TwilioアカウントSIDTwilio認証トークンが必要になります。これらは、Auth0がユーザーにSMSを送信するために使用するTwilio API資格情報です。
  1. TwilioアカウントSIDTwilio認証トークンを入力します。
    Twilio SIDとAuthトークンを確認する方法については、Twilioドキュメントの「How to create an Application SID(アプリケーションSIDの作成方法)」と「Auth Tokens and how to change them(Authトークンとその変更方法)」を参照してください。
  2. SMSソース を選択し、 TwilioメッセージングサービスSID または 送信元 電話番号を入力します。ユーザーには、SMSの送信者として入力したものが表示されます。
    Twilioのメッセージングサービスについては、Twilioドキュメントの「Messaging Services(メッセージングサービス)」を参照してください。

カスタムSMSゲートウェイを構成する

独自のSMSゲートウェイを使用する場合は、パスワードレス接続を作成し、Auth0 を使用して変更する必要があります。詳細については、「パスワードレス接続用にカスタムSMSゲートウェイを設定する」をお読みください。

パスワードレスSMS設定を構成する

  1. メッセージ に、SMSの本文を入力します。
    @@password@@ placeholderは、ユーザーに送信されたワンタイムパスワードで自動的に置換されます。
  2. OTPの有効期限OTPの長さ の設定を調整します。
    • 最後に発行されたワンタイムパスワード(またはリンク)のみが受け入れられます。最新のパスワードが発行されると、他のパスワードは無効になります。最新のパスワードも、一度使用すると無効になります。
    • ワンタイムパスワードの入力は、3回しか試行できません。その後は、新しいコードを要求する必要があります。
    • 発行されたワンタイムパスワードは、期限が切れるまで(デフォルトでは)3分間有効です。
    • ワンタイムパスワードの有効期限を延長する場合は、ワンタイムパスワードコードの長さも延長する必要があります。そうしないと、攻撃者が短いコードを推測しようとする時間が長くなります。
  3. サインアップを無効にする かどうかを決定します。この設定を有効にすると、既存のユーザーのみにパスワードレスアクセスを許可できますが、アプリケーションがユーザー列挙攻撃の脅威にさらされる可能性があります。詳細については、「パスワードレス接続のベストプラクティス」をお読みください。
  4. [Save(保存)] を選択します。

多言語サポート

メッセージ 領域は複数の言語をサポートしています。 言語を指定するには、Auth0 Authentication API Get CodeまたはLinkエンドポイントを呼び出して、x-request-languageヘッダーの値を設定します。このヘッダーが設定されていない場合、言語はブラウザによって自動的に設定されるaccept-languageヘッダーから抽出されます。

メッセージ構文

メッセージ 領域はLiquid構文を受け入れます。この構文をパラメーター値と組み合わせて使用​​して、プログラムでメッセージの要素を構築できます。 たとえば、request_languageパラメーターを参照してメッセージの言語を変更できます。
{% if request_language contains 'dutch' %}
   Hier is uw verificatie code: {{ password }}
{% endif %}
{% if request_language contains 'fr-FR' %}
   Ceci est votre code: {{ password }}
{% endif %}
メッセージテンプレートを定義するときに使用できるパラメーターは次のとおりです。
パラメーター説明
passwordまたはcode使用するパスワード。
phone_numberユーザーの電話番号。
application.nameユーザーがサインアップしているアプリケーションの名前。
request_languageメッセージの内容で要求されている言語。
Liquidの使用について詳しくは、「Liquid for Designers on GitHub」をご覧ください。

アプリケーションを有効にする

アプリケーション ビューに切り替えて、パスワードなしの SMS を使用するアプリケーションを有効にします。

もっと詳しく

I