組織
hoekstra 組織と、MetaHexa Bank を表す metahexa 組織を作成します。組織は、 から手動で、または Auth0 の を使用してプログラムで作成できます。
アプリケーション
organization パラメーターと、アプリケーション固有の client_id パラメーターの両方を、/authorize エンドポイントへのリクエストに含めて送信します。詳しくは、認証を参照してください。
ベストプラクティス設定を簡素化し、セキュリティ分離を最大化するため、Auth0 ではアプリケーションを個別に定義してください。これにより、Allowed Callback URLs のような項目を個別に設定できるほか、最小権限の原則に従って、クライアントIDやクライアントシークレットの情報が露出する可能性を最小限に抑えられます。
client_id を使用することになりますが、/authorize エンドポイントへのリクエストでは organization パラメーターは省略されます。
接続
ベストプラクティス単一のIDプロバイダー (IdP) を使用する組織では、さまざまなユースケースに柔軟に対応できるよう、定義した各組織に対して 1 つの接続を作成してください。たとえば、組織ごとに 1 つのデータベース接続または Custom Database 接続を用意すると、廃止された組織に関連付けられたユーザーを簡単に削除でき、さらに、パスワード複雑性の要件が異なる組織にも最大限柔軟に対応できます。
ユーザー
ユーザーに組織への Membership を手動で割り当てるには、そのユーザーに Auth0 で定義された ユーザープロフィール がすでに存在している必要があります。Membership を手動で割り当てるには、Auth0 テナントの Dashboard または Auth0 Management API を使用できます。
招待
データベース接続

-
Hoekstra & Associates の Jennifer は、Hoekstra & Associates の Travel0 Corporate Booking インスタンスに代わって Travel0 の Auth0 テナントから送信されたメールを受け取ります。
- このメールは、組織メンバーを招待で説明されているとおりに送信されたもので、Auth0 Dashboard または Auth0 Management API のいずれかから送信がトリガーされた可能性があります。
-
ジェニファーはメールを開き、その中のリンクをクリックします。これにより、ブラウザーは Hoekstra & Associates の Travel0 Corporate Booking インスタンスに遷移します。リンクで使用されるベース URL は Application Login URI として指定されており、これは Travel0 Auth0 テナント内にある Hoekstra & Associates の Travel0 Corporate Booking アプリケーション定義の一部です。
- リンクには
organizationパラメーターとorganization_nameパラメーターが含まれます。organizationパラメーターには、ご利用の Auth0 テナント内の対応する Auth0 組織の ID が設定されます。これはステップ 3 で Auth0 テナントに転送されます。 - リンクには
invitationパラメーターも含まれ、これもステップ 3 で転送されます。
- リンクには
-
Hoekstra & Associates の Travel0 Corporate Booking インスタンスは、通常 Auth0 SDK またはサードパーティのライブラリを使用して
/authorizeエンドポイントを呼び出し、次のようなパラメーターを渡すことで、Authorization Code Flow (PKCE の有無を問わず) を使用し、Travel0 の Auth0 テナントにリダイレクトします。redirect_uri:https://hoekstra.corp.travel0.net/login/callbackresponse_type:codestate: このセッションで生成される一意の statescope:openid profile…- ユーザーについて必要な情報に応じて、必要な追加の OIDC スコープ。
client_id: Hoekstra & Associates の Travel0 Corporate Booking インスタンス向けに、Travel0 の Auth0 テナントで作成されたアプリケーションに関連付けられたクライアントID。organization: 招待元の組織の ID。通常は、手順 2 で説明したメール内のリンクから取得します。organization=organization_id の形式で指定します。ここで organization_id は、Auth0 テナント内の対応する Auth0 組織定義に関連付けられた識別子です。invitation: 手順 2 で説明したとおり、メール内のリンクに関連付けられた追加のinvitationパラメーター。
-
Travel0 Auth0 テナントは、ユーザーからパスワードを取得するために
/signup/invitationにリダイレクトします。- Branding で説明しているように、組織固有のブランディング要素を表示するよう設定できる Universal Login ページが表示されます。
- ユーザーはパスワード (およびユーザー名などの追加の認証情報) を入力し、[続行] をクリックします。ユーザー ID には、ユーザーに関連付けられたメールアドレスが設定されており、変更できません。
-
Travel0 の Auth0テナントで認証情報が確認されます。有効な場合、ユーザーはプロビジョニングされ、Auth0 の組織メンバーシップが設定されます。ユーザーは自動的に認証され、Rules パイプラインが実行されます。認可 で説明されているように、Rules はアクセス制御の処理に使用できます。
- ユーザーの認証情報が無効な場合、再入力を求められます。
-
認証情報の検証と Rules の実行が正常に完了すると、ユーザーは手順 3 で渡された
stateおよびcodeとともに、redirect_uri(https://hoekstra.corp.travel0.net/login/callback) へリダイレクトされます。 -
Hoekstra & Associates の Travel0 Corporate Booking インスタンスは
stateを検証した後、https://auth.travel0.net/oauth/tokenにある Travel0 Auth0 Tenant に対してcodeと自身のclient id、client secretを送信し、IDトークン を取得します。次に、その IDトークンを使用してhttps://hoekstra.corp.travel0.netのセッションを生成します。 - Hoekstra & Associates の Travel0 Corporate Booking インスタンスでは、ユーザーに適切なページが表示されます。
エンタープライズ接続

-
MetaHexa Bank の Amintha は、MetaHexa Bank 向けの Travel0 Corporate Booking インスタンスを代表して、Travel0 の Auth0 テナントから送信されたメールを受け取ります。
- このメールは、組織メンバーを招待 で説明されている方法で送信されており、Auth0 Dashboard または Auth0 Management API のいずれかによってトリガーされた可能性があります。
-
Amintha はメールを開き、その中のリンクをクリックします。すると、ブラウザーは MetaHexa Bank の Travel0 Corporate Booking インスタンスに移動します。リンクで使用されるベース URL は Application Login URI として指定されており、これは Travel0 の Auth0 テナント内にある MetaHexa Bank 向け Travel0 Corporate Booking アプリケーション定義の一部です。
- リンクには
organizationおよびorganization_nameパラメーターが含まれます。organizationパラメーターには、Auth0 テナント内の対応する Auth0 組織定義の ID が設定されます。これはステップ 3 の一部として Auth0 テナントに転送されます。 - リンクには
invitationパラメーターも含まれており、これもステップ 3 の一部として転送されます。
- リンクには
-
MetaHexa Bank の Travel0 Corporate Booking インスタンスは、通常は Auth0 SDK またはサードパーティライブラリを使用して、
/authorizeエンドポイントを呼び出し、次のようなパラメーターを渡すことで、Authorization Code Flow (PKCE ありまたはなし) を使って Travel0 の Auth0 テナントにリダイレクトします。redirect_uri:https://metahexa.corp.travel0.net/login/callbackresponse_type:codestate: このセッションで生成された一意の statescope:openid profile…- ユーザーについて必要な情報に応じた、追加の OIDC Scopes
client_id: MetaHexa Bank 向けの Travel0 Corporate Booking インスタンス用に Travel0 の Auth0 テナントで作成されたアプリケーションに関連付けられたクライアントID。organization: 通常はステップ 2 で説明したメール内のリンクから取得される、招待元の組織の ID。organization=organization_id の形式で指定します。ここで organization_id には、Auth0 テナント内の対応する Auth0 組織定義に関連付けられた識別子が設定されます。invitation: ステップ 2 で説明した、メール内のリンクに関連付けられた追加のinvitationパラメーター。
-
Travel0 の Auth0 テナントは
/invitationにリダイレクトし、そこで Amintha に対して、第1認証要素の認証情報を認証するため、まず MetaHexa IdP にリダイレクトされることが通知されます。- ユーザーが確認すると、
- Auth0 は MetaHexa Bank の IdP インスタンスにリダイレクトし、そこで
- ログインページが表示され、ユーザーは認証情報を入力して
loginをクリックします。
- 成功すると、Auth0 組織メンバーシップが設定され、ユーザーは暗黙的に認証され、Rules パイプラインが実行されます。Rules は、認可 で説明されているように、アクセス制御の処理に使用できます。
metahexa.corp.travel0.net) が使用されます。
ソーシャル接続経由の招待は、エンタープライズ接続の場合と同様のパターンに従いますが、アップストリーム IdP は特定の組織ではなく、ソーシャルプロバイダーに関連付けられます。ソーシャル接続の使用に関する追加の考慮事項については、認証を参照してください。