正規化ユーザープロファイルスキーマ
Auth0が共通スキーマにマップする属性は以下の通りです。
常に生成されるフィールド:
name
:ユーザーのフルネームです。nickname
:デフォルトでは、ユーザーのメールのローカル部分です。picture
:ユーザー写真のURLです。使用できない場合、Auth0はユーザーのメールアドレスに関連付けられたGravatar画像を使用します。user_id
:ユーザーの一意の識別子です。これは接続ごとに一意ですが、その接続経由で認証するすべてのアプリにとって同じです。
デフォルトでは、Auth0以外のIDプロバイダー(Google、Facebook、Xなど)によって提供されるユーザーのname
、nickname
、picture
の属性は、ユーザーがログインするたびにIDプロバイダーから更新されるため、直接編集することはできません。これらの属性を編集できるようにするには、ユーザー属性がIDプロバイダーからユーザープロファイル作成時にのみ更新されるように、接続がAuth0と同期されるように構成する必要があります。そうすれば、Management APIを使用して、ルート属性を個別に、または一括インポートを通じて編集できるようになります。
詳細が使用可能になった際に生成されるフィールド:
email
:ユーザーのメールアドレスです。email_verified
:ユーザーのメールアドレスが検証されたかを示すブール値です。given_name
:ユーザーの名です。family_name
:ユーザーの姓です。
ユーザー管理APIエンドポイントを作成する際に、given_name
とfamily_name
を送信できます。デフォルトでは、Auth0以外のIDプロバイダー(Google、Facebook、Xなど)によって提供されるユーザーのgiven_name
、family_name
の属性は、ユーザーがログインするたびにIDプロバイダーから更新されるため、直接編集することはできません。これらの属性を編集できるようにするには、ユーザー属性がIDプロバイダーからユーザープロファイル作成時にのみ更新されるように、接続がAuth0と同期されるように構成する必要があります。そうすれば、Management APIを使用して、ルート属性を個別に、または一括インポートを通じて編集できるようになります
カスタムデータベースのログインスクリプトを記述している場合、ユーザープロファイルの情報を返す責任があります。ユーザーを正しく識別するためには、一意で不変のuser_id
プロパティが必須です(「ユーザーを一意に識別する」を参照してください)。
追加の属性
ユーザープロファイルには、ID配列が含まれています。最も一般的なケース(単一のプロバイダーでログインする場合)では、配列には1つの要素のみが含まれます。ユーザーが複数のアカウントをリンクしている場合、配列には関連付けられた各アカウントの要素が含まれます。詳細については、「ユーザーアカウントのリンク」を参照してください。
ID
配列には、次の属性が含まれています:
connection
:接続の名前です。isSocial
:プロバイダーがソーシャルプロバイダであるかどうかを示します。provider
:接続のプロバイダーです。user_id
:この接続のためのユーザーの一意の識別子です。
Auth0は、上記の標準的な属性にマッピングされていない場合でも、IDプロバイダーによって提供される他のすべてのプロパティをアプリに渡します。