Auth0 では、組織内の他のユーザーや管理者にテナントの利用権限を設定するには、Tenant Members の設定を使用することを推奨しています。詳しくは、Dashboard Access をご覧ください。
DAE を設定する
- アプリケーションを Auth0 に登録する
- データベース接続を作成する
- Auth0 アプリケーションの他のすべての接続を無効にする
- データベース接続用のユーザーを作成する
- ユーザーにロールを割り当てる
- 拡張機能をインストールして設定する
- 拡張機能を使用する
アプリケーションをAuth0に登録する
データベース接続を作成する
HelpDeskなど、適切な接続名を使用します。- Disable Sign Ups トグルを有効にします。セキュリティ上の理由から、これにより、データベース接続へのリンクを知っているユーザーでも、自分でサインアップできないようにします。
Auth0 アプリケーションの他のすべての接続を無効にする
データベース接続用のユーザーを作成する
ユーザーにロールを割り当てる
Delegated Administration Extension (DAE) と Authorization Core は完全に別の機能ですが、Authorization Core の機能セットを使うことで、Actions によって DAE 用のロールを作成および管理できます。詳しくは、サンプルユースケース: Authorization と Actions をご覧ください。
Organizations と Delegated Administration Extension (DAE) を使用してユーザーとしてログインした場合、ユーザーロールは利用できません。
event.authorization.roles. 内で利用できるのは、Organization メンバーロールのみです。Organization メンバーにロールを追加する方法については、Organization メンバーにロールを追加する をご覧ください。
ロールを扱う際は、Authorization Core の機能セットを使用することをおすすめします。
- DAE ロールを作成する。作成するロール名は、上記の事前定義された DAE ロール名と一致している必要があります。
- DAE ロールを手動でユーザーに割り当てる。
-
Actions を使用して、ID トークン内の DAE 名前空間にユーザーロールを追加します**:**
CLIENT_ID プレースホルダーは delegated admin アプリケーションの Client ID に、{yourTenant} はテナント名に置き換えてください。たとえば、テナント名が “tenant_name_example” の場合、名前空間は次のようになります: https://tenant_name_example/auth0-delegated-admin
Actions の作成方法について詳しくは、初めての Action を作成する をご覧ください。
Authorization Core を使用すると、
context.authorization オブジェクトにロールが定義されます。Authorization Core を使用しない場合は、ユーザープロフィールの次のいずれかのフィールドに DAE ロールを定義する必要があります。user.app_metadata.rolesuser.app_metadata.authorization.roles
拡張機能をインストールして設定する
拡張機能を使用する
新しいタブが開き、ログイン画面が表示されます。
(この例では) 設定時にデータベース接続のサインアップを無効にしているため、ログイン画面には Sign Up オプションは表示されません。
有効な認証情報を入力すると、Auth0 によってカスタムの Delegated Administration Dashboard ページが表示されます。このページの上部には指定した Title が表示され、 (カスタム CSS ファイルを指定している場合は) そのデザインが反映されます。
Delegated Administration のセッションタイムアウト
デフォルトでは、トークンの有効期限は 10 時間です。ただし、セキュリティ上の理由から、Delegated Administration を使用する場合、Auth0 はトークンを Cookie や
sessionStorage に保存しません。そのため、ページを再読み込みするたびに新しいセッションを開始する必要があります。