顧客の ID およびアクセス管理の計画
適用対象: 従業員テナント 外部テナント (詳細はこちら)
Microsoft Entra 外部 ID は、アプリに顧客 ID およびアクセス管理 (CIAM) を追加するためのカスタマイズ可能で、かつ拡張可能なソリューションです。 これは Microsoft Entra プラットフォームの上に構築されているため、従業員と顧客のシナリオにまたがるアプリ統合、テナント管理、運用における一貫性という利点が得られます。 構成を設計するときは、外部テナントのコンポーネントと、顧客のシナリオに使用できる Microsoft Entra の機能を理解することが重要です。
この記事では、アプリを統合し、外部 ID を構成するための一般的なフレームワークを提供します。 ここでは、外部テナントで使用できる機能について説明した後、統合の各手順に関する重要な計画の考慮事項の概要について説明します。
アプリにセキュリティで保護されたサインインを追加し、顧客 ID およびアクセス管理を設定するには、次の 4 つの主な手順が必要になります。
この記事では、これらの各手順について説明した後、重要な計画の考慮事項の概要について説明します。 次の表で、手順を選択して詳細と計画の考慮事項を表示するか、またはハウツー ガイドに直接移動します。
手順 1: 外部テナントの作成
外部テナントは、Microsoft Entra 外部 ID の使用を開始するために作成する必要がある最初のリソースです。 外部テナントは、アプリケーションを登録する場所です。 これにはまた、従業員テナントとは別に、顧客の ID とアクセスを管理するディレクトリも含まれています。
外部テナントを作成するときに、正しい地理的な場所とドメイン名を設定できます。 現在 Azure AD B2C を使用している場合、新しい従業員および外部テナント モデルが既存の Azure AD B2C テナントに影響を与えることはありません。
外部テナント内のユーザー アカウント
外部テナント内のディレクトリには、管理者と顧客のユーザー アカウントが含まれています。 外部テナント用の管理者アカウントを作成および管理することができます。 顧客アカウントは通常、セルフサービス サインアップを使用して作成されますが、顧客のローカル アカウントを作成および管理することができます。
顧客アカウントには、既定の一連のアクセス許可が割り当てられています。 顧客は、外部テナント内の他のユーザーに関する情報にはアクセスできないように制限されます。 既定では、顧客は他のユーザー、グループ、またはデバイスに関する情報にアクセスできません。
外部テナントを作成する方法
Microsoft Entra 管理センターで外部テナントを作成します。
まだ Microsoft Entra テナントが存在せず、外部 ID を試したい場合は、エクスペリエンスの開始 を使って無料評価版を開始することをお勧めします。
Visual Studio Code を使用する場合は、Visual Studio Code の Microsoft Entra 外部 ID 拡張機能を使用して、Visual Studio Code 内で直接外部テナントを作成することもできます (詳細はこちら)。
手順 2: アプリケーションを登録する
アプリケーションで外部 ID を操作できるようにするには、それらを外部テナントで登録しておく必要があります。 Microsoft Entra ID では、登録されたアプリケーションに対してのみ ID およびアクセス管理を実行します。 アプリの登録によって信頼関係が確立され、そのアプリを外部 ID と統合できるようになります。
次に、Microsoft Entra ID とアプリ間の信頼関係を確保するため、アプリケーション (クライアント) ID、ディレクトリ (テナント) サブドメイン、クライアント シークレットなど、アプリの登録時に割り当てられた値でアプリケーションのソース コードを更新します。
いくつかのアプリの種類や言語のためのコード サンプル ガイドと詳細な統合ガイドが用意されています。 登録するアプリの種類に応じて、[アプリの種類と言語別のサンプル] ページでガイダンスを見つけることができます。
アプリケーションを登録する方法
登録するアプリケーションに固有のガイダンスを [アプリの種類と言語別のサンプル] ページで見つけます。
使用しているプラットフォームまたは言語に固有のガイドがない場合は、外部テナントでアプリケーションを登録するための一般的な手順を参照してください。
手順 3: サインイン フローをアプリと統合する
外部テナントを設定し、アプリケーションを登録したら、サインアップとサインインのユーザー フローを作成します。 その後、アプリケーションをユーザー フローと統合して、そこにアクセスするすべてのユーザーが、設計したサインアップとサインインのエクスペリエンスを通過できるようにします。
アプリケーションをユーザー フローと統合するには、そのアプリケーションをユーザー フローのプロパティに追加し、テナント情報と認可エンドポイントを使用してアプリケーション コードを更新します。
Authentication flow
顧客がアプリケーションにサインインしようとすると、そのアプリケーションは、アプリをユーザー フローに関連付けるときに指定したエンドポイントに認可要求を送信します。 ユーザー フローによって、顧客のサインイン エクスペリエンスが定義および制御されます。
ユーザーが初めてサインインする場合は、サインアップ エクスペリエンスが提供されます。 ユーザーは、収集することを選択した組み込みまたはカスタム ユーザー属性に基づいて情報を入力します。
サインアップが完了すると、Microsoft Entra ID によってトークンが生成され、顧客がアプリケーションにリダイレクトされます。 その顧客のために、ディレクトリ内に顧客アカウントが作成されます。
サインアップとサインインのユーザー フロー
サインアップとサインインのエクスペリエンスを計画するときは、次の要件を決定します。
ユーザー フローの数。 各アプリケーションには、サインアップとサインインのユーザー フローを 1 つしか割り当てることができません。 複数のアプリケーションがある場合は、それらのすべてに対して 1 つのユーザー フローを使用できます。 または、アプリケーションごとに異なるエクスペリエンスが必要な場合は、複数のユーザー フローを作成できます。 外部テナントごとに最大 10 ユーザー フローです。
会社のブランドと言語のカスタマイズ。 会社のブランドと言語のカスタマイズの構成については後の手順 4 で説明しますが、これらは、アプリをユーザー フローに統合する前または後のいつでも構成できます。 ユーザー フローを作成する前に会社のブランドを構成した場合は、そのブランドがサインイン ページに反映されます。 そうでない場合は、既定の中立的なブランドがサインイン ページに反映されます。
収集する属性。 ユーザー フローの設定では、顧客から収集する一連の組み込みユーザー属性から選択できます。 顧客はサインアップ ページで情報を入力し、それがその顧客のプロファイルと共にディレクトリ内に格納されます。 その以上の情報を収集する必要がある場合は、カスタム属性を定義し、それをユーザー フローに追加できます。
使用条件同意。 カスタム ユーザー属性を使用し、使用条件に同意するようにユーザーに求めることができます。 たとえば、サインアップ フォームにチェックボックスを追加し、利用規約とプライバシー ポリシーへのリンクを含めることができます。
トークン要求に関する要件。 アプリケーションに特定のユーザー属性が必要な場合は、そのアプリケーションに送信されるトークンにそれらを含めることができます。
[ソーシャル ID プロバイダー] : ソーシャル ID プロバイダー Google と Facebook を設定してから、それらをサインイン オプションとしてユーザー フローに追加できます。
ユーザー フローをアプリと統合する方法
組み込みユーザー属性を超えて顧客から情報を収集する必要がある場合は、カスタム属性を定義して、ユーザー フローを構成するときにそれらを使用できるようにします。
ユーザー フローにアプリケーションを追加します。
手順 4: サインインをカスタマイズしてセキュリティで保護する
会社のブランド、言語のカスタマイズ、カスタム拡張機能の構成を計画するときは、次の点を考慮してください。
会社のブランド。 新しい外部テナントを作成した後、サインインまたはサインアップする顧客向けに Web ベース アプリケーションの外観をカスタマイズして、そのエンドユーザー エクスペリエンスをパーソナル化できます。 Microsoft Entra ID では、何かの設定をカスタマイズする前は、既定の Microsoft ブランドがサインイン ページに表示されます。 このブランドは、テナントへのすべてのサインインにわたって適用されるグローバルなルック アンド フィールを表します。 サインインのルック アンド フィールのカスタマイズの詳細を確認してください。
認証トークン要求の拡張。 外部 ID は、柔軟性を考慮して設計されています。 カスタム認証拡張機能を使用して、トークンがアプリケーションに発行される直前に、そのアプリケーション トークンに外部システムからの要求を追加できます。 カスタム認証拡張機能を使用した独自のビジネス ロジックの追加の詳細を確認してください。
多要素認証 (MFA)。 MFA を実施してアプリケーション アクセスのセキュリティを有効にすることもできます。これにより、メールのワンタイム パスコードによる検証が要求されるため、ユーザー サインインに重要な 2 番目のセキュリティレイヤが追加されます。 利用可能な MFA 認証方法の詳細をご覧ください。
ネイティブ認証。 ネイティブ認証を使用すると、認証をブラウザーに委任する代わりに、クライアント アプリケーションでユーザー インターフェイスをホストできます。 外部 ID でのネイティブ認証の詳細をご覧ください。
セキュリティとガバナンス。 外部テナントで使用できる セキュリティとガバナンス の機能、Microsoft Entra ID 保護などについて説明します。
サインインをカスタマイズしてセキュリティで保護する方法
次のステップ
- 無料試用版を開始するか、または外部テナントを作成します。
- アプリを統合するためのサンプルとガイダンスを見つけてください。
- 最新の開発者向けコンテンツとリソースについては、Microsoft Entra 外部 ID デベロッパー センターも参照してください。