検討事項
Non-Unique Emails を使用している場合、メールアドレスを主識別子として使用することはできません。主識別子には別の属性を設定する必要があり、その属性が認証、パスワードリセット、アカウント管理に使用されます。
識別子と属性の詳細については、Flexible Identifiers を参照してください。
パスワードリセット
元に戻せない設定
Flexible Identifiers
API の動作変更
GET /api/v2/users-by-email は、同じメールアドレスを共有しているすべてのユーザーを返します。
DELETE /api/v2/connections/{id}/users は、非一意メール接続には対応していません。
POST /dbconnections/change_password は、ユーザーアカウントを特定するために一意のメールアドレスを必要とするため、非一意メール接続では使用できません。ユーザーは、主識別子を利用するフローを使ってパスワードをリセットする必要があります。
Auth0 Dashboard で非一意のメールアドレスを有効にする
- Authentication > Database に移動し、新しい接続を作成します。
- Choose one or more attributes as user identifiers セクションで、Email Address を On に切り替え、表示される Allow non-unique email addresses トグルを有効にします。
- ログインとパスワードリセットのフローで主識別子として使用するため、ユーザー名 または電話番号のいずれかも On に切り替えます。
- メールアドレスが識別子として使用されないことを確認したら、Create を選択して接続を保存します。

Management API で Non-Unique Emails を有効にする
POST /api/v2/connections エンドポイントを使用して、Non-Unique Emails をサポートするデータベース接続を作成します。
接続を作成する際は、次のように設定します。
- 同じメールアドレスを持つ複数のアカウントを許可するには、
options.attributes.emailオブジェクトで unique: false を設定します。メールアドレスが一意でない場合に主識別子として使われないよう、identifier.active: false を設定します。 - 別の属性を主識別子として選択し、選択した属性に identifier.active: true を設定します。
リクエストの例
- すべてのメール連絡 (例: パスワードリセットリンク、通知) は、どのユーザーが操作を開始したかにかかわらず、同じ受信トレイに配信されます。
- その結果、ユーザーが混乱したり、受信トレイが共有されている場合にはメールベースのリンクに意図せずアクセスされる可能性があります。
- 共有メールの利用が、あなたのユースケースに適していること。
- エンドユーザーに対して適切な案内とトレーニングが行われること。
- メールベースのワークフローで起こり得る重複を考慮したアプリケーション設計になっていること。