仕組み
-
プロファイル定義
管理者は User Attribute Profile を作成し、次のような属性を定義します。
- 属性の表示方法
- 属性を必須にする方法
- 属性を Auth0 や外部のアイデンティティシステムにどのようにマッピングするか
- 柔軟な適用範囲 プロファイルは Self-Service Enterprise Configuration フローに関連付けられていますが、プロビジョニング、オンボーディング、権限管理に対応できるよう設計されています。
- 統合マッピングレイヤー 各属性は認証プロトコル全体にわたるマッピングに対応しており、Okta や Entra ID などの特定のプロバイダーや接続戦略向けに値を上書きすることもできます。
属性マッピングとオーバーライド
認証ストラテジーのオーバーライド
一部のプロバイダーでは、標準外のマッピングが使用されます。UAP ではオーバーライドを設定できます。
User ID
user_id プロパティは、OIDC クレーム、SAML 属性、または SCIM 属性を Auth0 の User ID にどのようにマッピングするかを定義します。Auth0 のすべてのユーザーには ID が必要なため、このマッピングは必須です。
- OIDC の場合、選択肢は固定されています (通常は
sub、Azure AD ではoid、Google ではemail) 。- SAML と SCIM の場合は、マッピングの自由度が高く、複数の属性候補を指定できます。
ユーザー属性
user_attributes プロパティには、システムが IdP から受信したクレームを解釈し、それらを Auth0 ユーザープロファイルの属性として保存するためのマッピング情報が含まれます。
各属性はキーと値のペアで指定する必要があります。
- キーは属性名に対応します。
- 値は以下を含むオブジェクトです。
labeldescriptionprofile_requiredauth0_mappingsaml_mappingscim_mappingoidc_mappingは、次のプロパティを持つオブジェクトですmappingは IdP から受信するクレームを表します (固定値、動的な context object、またはその両方。${variable}構文を使用し、context object をサポートします)display_nameはセルフサービス フローでエンドユーザーに表示されるラベルです
- 値は以下を含むオブジェクトです。
認証ストラテジーのオーバーライド
strategy_overrides プロパティを使用すると、個々のアイデンティティプロバイダー (IdP) ごとに例外を指定できます。すべての IdP が同じ識別子やクレームを提供するわけではないためです。
各オーバーライドでは、user_id または user_attributes で定義されたデフォルトを置き換える、プロトコル固有のマッピングを定義します。
例
ユーザー識別子
- デフォルトの識別子: SCIM 経由の
externalId。 - SAML: 複数の識別子 URI に対応。
- OIDC:
subを使用。 - 上書き設定: SAML と WAAD ではマッピングをカスタマイズできます。
メールアドレス属性
- ほとんどのプロファイルで推奨されます。
- Auth0、OIDC、SAML、SCIM 間で統一されています。
- WAAD の上書きにより、勤務先メールへの正しいマッピングが確保されます。
User Attribute Profile を作成する
Auth0 Dashboard で設定する
- Authentication > Enterprise > Self-Service Enterprise Configuration に移動します。
- +Create Profile を選択します。
- 新しいプロファイルの Name と、必要に応じて Description を入力します。
- 既存のプロファイルを選択するか、+Create New を選択して、User Attribute Profile エントリを追加します。
- 新しいプロファイルの場合は、User Profile Attribute Name を入力します。
- プロファイル属性が希望する Auth0 属性にマッピングされていることを確認します。
- Create を選択します。
Management API で設定する
POST/api/v2/user-attribute-profilesGET/api/v2/user-attribute-profilesPATCH/api/v2/user-attribute-profiles/{id}GET/api/v2/user-attribute-profiles/{id}GET/api/v2/user-attribute-profiles/templatesGET/api/v2/user-attribute-profiles/templates/{id}