テナントで Flexible Identifiers を有効にすると、本番環境に互換性のない変更が生じる可能性があります。この機能は開発環境で十分にテストし、広くリリースする前に現在の接続設定を控えておいてください。
Flexible Identifier とは、ユーザーがログイン画面で本人確認のために入力する属性です。メールアドレス、ユーザー名、電話番号、またはそれらのうち 2 つ以上を組み合わせたものから選択できます。
Attribute と Identifier の定義
この製品では、Attribute とは、メールアドレス、電話番号、ユーザー名など、保存できるユーザーデータのことです。すべての Identifiers は Attributes ですが、Identifiers に該当するのは特定の属性だけです。
Identifier とは、特定の接続において個々のユーザーを識別する一意の Attribute です。Email、phone、ユーザー名 は個人を一意に識別できるため、Identifiers として使用できます。一方、その他の属性はユーザーを一意に識別するものではなく、ユーザーのプロファイルを構成する情報となります。
Flexible Identifiers を使用する
Flexible Identifiers は一般的な利用向けですが、次の制限があります。
phone 属性を含む Flexible Identifiers は、Universal Login でのみ利用でき、電話プロバイダーを設定 する必要があります。
サインアップ時に電話による確認を使用するには、Identifier First を設定する必要があります。
Adaptive MFA を使用するには、メールアドレス属性を有効にする必要があります。
Organizations の Signup プロンプトを使用するには、ユーザープロファイルにメールアドレスが必要です。
ブルートフォース対策 によってブロックされたエンドユーザーは、SMS メッセージで自分自身のブロックを解除できません。ほかの方法は利用できます。詳しくは、ブルートフォース対策 を参照してください。
Flexible Identifiers では、識別子フィールドが最初のログイン画面に移動し、パスワード再設定のプロンプトがメールアドレスからユーザー名に変わります。
phone および email 識別子の確認に使用する OTP トークンの有効期間は 900 秒です。
Flexible Identifiers の使用時の問題
以下は、Flexible Identifiers の設定および管理時に発生する可能性がある問題の一覧です。
アプリケーションの認可リクエストで scope phone が指定されていない場合、phone_number claim は取得できません。scope の詳細については、Scopes を参照してください 。
Import Users to Auth0 が on に設定されている場合は、Get User カスタムデータベースアクションスクリプトが有効である必要があります。詳細については、Configure Automatic Migration from Your Database を参照してください 。
接続タイプに関係なく、各ユーザーには一意のユーザー名、メールアドレス、電話番号を割り当てる必要があります。電話番号は、属性として追加されていない場合でも一意である必要があります。
カスタムデータベースアクションスクリプト Change Password を使用し、email と email_verified を True に設定する場合は、オブジェクトで意図した email_verified state を返す必要があります。詳細については、Change Password を参照してください 。
Import Users to Auth0 をオフにしたカスタムデータベース接続を使用する場合は、ユーザープロファイルのプロパティを Auth0 の Normalized User Profile に合わせる必要があります。詳細については、Normalized User Profile を参照してください 。
Import Users to Auth0 をオンにしたカスタムデータベース接続を使用する場合、Auth0 は phone_number と phone_verified の一意性を確認します。
Identifier First プロンプトでは、最初の画面にすべての identifier が表示され、以前の設定は削除されます。また、Reset Password プロンプトでは、Email ではなく ユーザー名 の入力フィールドが表示されます。
SMS Pumping 攻撃を回避するためのベストプラクティスを確認しておきましょう。詳細については、SMS Pumping に関するホワイトペーパー をご覧ください。