Skip to main content
新しいエンドポイントと属性を使用した 組織 接続 の管理は、My Organization API と 埋め込み可能な UI コンポーネント の一部として早期アクセスで提供されています。この機能を使用すると、Okta’s Master Subscription Agreement に記載されている該当する無料トライアル条件に同意したものとみなされます。Auth0 の製品リリースサイクルの詳細については、Product Release Stages をご覧ください。
Auth0 組織 を使用すると、B2B 製品や SaaS アプリケーションを提供する企業は、マルチテナント アーキテクチャを構築し、ID トークンを適切に保存し、エンドユーザーのログイン時の負担を最小限に抑えることができます。

アプリケーションのログインエクスペリエンスを設定する

アプリケーションは Login Experience タブで設定でき、次の 3 種類のユーザーをサポートできます。
  1. 個人ユーザー
  2. Business Users
  3. Both
Netflix や Spotify のような、主に一般消費者向けに設計されたアプリケーションでは、組織管理はおそらく必要ありません。Individuals を選択すると、ユーザーはアプリケーションに直接ログインし、組織コンテキストは提供されません。 B2B または SaaS のアプリケーション — たとえば Slack や Jira — には Business Users のほうが適しており、エンドユーザーは Auth0 Organization のコンテキストでのみアプリケーションにアクセスできます。複数の組織に所属しているユーザーは、ログインフローの後に Organization Picker に移動し、参加している先頭 20 件の組織が表示されます。
エンドユーザーがアプリケーションで個人用アカウントとビジネス用アカウントの両方を持つ可能性がある場合は、Both を選択します。たとえば、Github には個人用と業務用のコードリポジトリの両方が保存されていることがよくあります。 アプリケーションのユーザータイプは、 (上で説明したとおり) または を通じて設定できます。具体的には、Update a Client エンドポイントの organization_usage パラメータを使用して、適切なユーザータイプを設定します。両方の方法の詳細については、Define Organization Behavior を参照してください。

アプリケーションのログインフローを設定する

Business Users または Both を選択したら、ユーザーがアプリケーションにログインする際の体験をさらにカスタマイズできます。ほとんどの組織では、Prompt for Credentials を選択したうえで、Identifier First Authentication を有効にすることをおすすめします。ユーザーがどの組織にログインしようとしているかがすでにわかっている場合は、No Prompt オプションと Custom Development with Organizations を組み合わせることで、アプリでブランドに沿ったカスタマイズ済みのログインフローを維持できます。
管理者は、Prompt for Organization トグルを有効にすることで、エンドユーザーの体験をさらに細かく調整できます。これにより、ユーザーは organization名 または Organization Email のいずれかを使って、ログイン先の組織を指定する必要があります。
Prompt for Credentials を選択している場合でも、必要に応じてユーザーを 特定の組織のログインプロンプト からログインさせる ことができます。
アプリケーションのログインフローは、Auth0 Dashboard (前述のとおり) または Management API から設定できます。具体的には、適切なフローを設定するために、Update a client エンドポイントの organization_require_behavior パラメータを使用します。両方の方法の詳細については、Define Organization Behavior を参照してください。
Organization でサードパーティアプリケーションへのアクセスを許可している場合、サードパーティアプリケーションは、コードを変更できない外部開発者によって管理されています。これらのアプリケーションは、認可リクエストで organization パラメータを送信しない可能性があります。ユーザーが正しい組織コンテキストにルーティングされるように、Prompt for Credentials または Prompt for Organization (必要に応じて Organization Domain Discovery と組み合わせて) を設定してください。詳細については、Enable Third-Party Application Access for an Organization を参照してください。

Prompt for Credentials を使用する Identifier First Authentication

エンタープライズ アプリケーションで Enterprise Federation を使用している場合は、その認証プロファイルで ホームレルムディスカバリーを使用する Identifier First Authentication を有効化できます。有効にすると、ホームレルムディスカバリーが既知のドメインのメールアドレスを検出し、適切な Workforce ログインへ自動的に転送します。
このフローでは、ユーザーのメールドメインがどのエンタープライズ接続の (IdP) ドメインとも一致しない場合のフォールバックとして、1 つの Auth0 データベース接続 だけを使用できます。ユーザーには organization のログインプロンプトではなく、アプリケーションのログインプロンプトが表示され、アプリケーションで有効化されている接続 が表示されます。
Auth0 テナントの設定で Default Directory が構成されている場合、Default Directory がアプリケーションで有効になっていなくても、Auth0 はこのログインフローの接続としてそれを使用します。Default Directory は、アプリケーションで有効化されている接続よりも優先されます。この動作は Prompt for Credentials フローにのみ適用されます。Prompt for Organization フローまたはプロンプトなしのシナリオでは、Auth0 がそれを選択できるようにするには、アプリケーションで Default Directory を有効にする必要があります。
ユーザーがメールアドレスを入力すると、Auth0 はそのメールアドレスを、このアプリケーションで有効になっている Enterprise Connections と、組織 で有効になっているすべての Enterprise Connections に照合します。一致が見つかった場合、ユーザーは関連付けられた IdP で認証するように誘導されます。一致が見つからない場合は、パスワードフィールドが表示されます。

組織を求めるプロンプトを使用した Identifier First Authentication

ユーザーが認証を開始すると、Auth0 はまず組織 (該当する場合) を特定し、その後、認証に使用する適切な IDプロバイダー (IdP) または接続を判別します。 ユーザーはまず、自分のメールアドレス (たとえば alice@rockymountainadventures.com) または 組織名 (たとえば Rocky Mountain High Adventures) を入力します。 プロンプト画面の内容は、アプリケーションの Login Experience > Type of Users 設定によって異なります。
  • Business Users では組織のプロンプトのみが表示され、ユーザーは組織でログインする必要があります。
  • Both では組織のプロンプトと個人アカウントのプロンプトの両方が表示され、ユーザーはいずれかでログインできます。

Organization Domain Discovery (任意)

Auth0 は Organization Domain Discovery をサポートしており、必要に応じて Identifier First Authentication の実行前にユーザーの組織を検出できます。 設定すると、Organization Domain Discovery により、ユーザーがメールアドレスを入力した際に、Auth0 はそのユーザーの組織を自動的に検出したり、組織の候補を絞り込んだりできます。Organization Domain Discovery は、サインアップやログインできるユーザーを制限するものではありません。 Identifier First Authentication と Organization Domain Discovery を組み合わせることで、複数の組織が存在する環境でも、明確さと制御を保ちながら、エンタープライズ向けのログインフローを効率化できます。 テナントで検証済みの Organization ドメインを設定しておりorganization パラメータが指定されていない場合、Auth0 は検証済み (保留中ではない) のドメインに基づいて、ユーザーの組織を自動的に特定しようとします。
  • 一致する組織が 1 つだけの場合、Auth0 はその組織を自動的に選択し、その組織のコンテキストで Identifier First Authentication フローを続行します。
  • 複数の組織が同じドメインまたは名前を共有している場合 (たとえば、AdventureZ と Granite Outpost の両方で travelco.com を設定している場合) 、Auth0 は Organization セレクターを表示して、ユーザーが選択できるようにします。選択後、Auth0 は Identifier First Authentication フローを続行します。
  • 一致するものが見つからない場合、Auth0 はエラーを表示します。

Identifier First Authentication

Identifier First Authentication の目的は、ユーザーをどの接続または IDプロバイダー (IdP) に誘導するかを判別することです。 組織 (存在する場合) が特定されると、Auth0 はホームレルムディスカバリーを使用して Identifier First Authentication を適用します。
  • connection パラメーターが指定されている場合、Auth0 はそれを使用してユーザーをその特定の接続に誘導します。
    • それ以外の場合、Auth0 はアプリケーションと 組織 (該当する場合) の両方で有効になっているすべてのエンタープライズ接続を確認します。
ユーザーのメールアドレスのドメインに基づいて一致する IdP が見つかった場合、Auth0 は認証のためにユーザーをその IdP にリダイレクトします。 一致が見つからない場合、またはユーザーのメールアドレスのドメインが有効な IdP のいずれにも対応していない場合、Auth0 は Auth0 データベース接続 (アプリケーションで有効になっている場合) にフォールバックします。このフォールバック状態では、ユーザーには 組織 のログインプロンプトではなく、アプリケーションのログインプロンプトと、アプリケーションで有効になっているすべての接続が表示されます。
異なる 組織 に割り当てられた複数のデータベース構成がある場合など、Auth0 がユーザーのメールアドレスに関連付けられた IdP を特定できないユースケースがあります。このような場合は、ログイン開始プロンプトとして Prompt for Organization を選択するか、organization パラメータを Auth0 に送信してください。
Management API を使用して Identifier First Authentication を設定できます。具体的には、Update prompts settings エンドポイントの identifier_first パラメータを使用します。

Auto-Membership

ユーザーを組織に直接招待したり割り当てたりする代わりに、フェデレーション IdP で認証できる任意のユーザーに組織へのアクセスを付与したい場合があります。このようなケースでは、Auth0 は Auto-Membership 設定を推奨しています。 Auto-membership は通常、組織の ログインプロンプト を使用してユーザーをログインさせる ことでトリガーされます。これにより、ユーザーに代わって 接続 パラメータと 組織 パラメータを渡すことができます。ユーザーが希望する 組織 をログイン前に特定できない場合、Prompt for Credentials フローにより、auto-membership が設定されている唯一の組織にメンバーシップが付与されます。 ただし、ログインに誘導する前に、ユーザーが希望する 組織 を特定できないケースもあります。この場合も前述の Prompt for Credentials フローを使用できますが、メンバーシップが付与されるのは、auto-membership が有効化されており、かつこの接続が有効な接続として設定されている組織が 1 つだけの場合に限られる点に注意してください。 Management API を使用して auto-membership を設定できます。具体的には、組織の接続を変更する エンドポイントの assign_membership_on_login パラメータを使用します。