外部テナントのカスタム URL ドメイン
適用対象: 従業員テナント
外部テナント (詳細情報)
カスタム URL ドメインを使用すると、Microsoft の既定のドメイン名ではなく、独自のカスタム URL ドメインで、アプリケーションのサインイン エンドポイントをブランド化できます。
検証済みのカスタム URL ドメインを使うと、いくつかの利点があります。
- より一貫性のあるユーザー エクスペリエンスを提供します。 ユーザーからは、サインイン プロセスの間も、既定のドメイン "<テナント名>.ciamlogin.com" にリダイレクトされず、ブランドのドメインに留まっているように見えます。
- サインインの間もアプリケーションの同じドメイン内に留まることで、サード パーティの Cookie ブロックの影響を軽減できます。
カスタム URL ドメインのしくみ
カスタム URL ドメインを使用すると、検証済みのカスタム URL ドメイン名をアプリケーションのサインイン認証エンドポイントとして使用できます。 新しいカスタム URL ドメイン名を追加すると、カスタム URL ドメインに関連付けることができます。 その後、Azure Front Door などのリバース プロキシ サービスでカスタム URL ドメインを使って、サインインをブランドのアプリケーションに転送できます。
次の図は、Azure Front Door の統合を示しています。
- ユーザーは、アプリケーションでサインイン ボタンを選ぶと、サインイン ページに移動します。 このページではカスタム URL ドメインが指定されています。
- Web ブラウザーは、カスタム URL ドメインを Azure Front Door の IP アドレスに解決します。 ドメイン ネーム システム (DNS) の解決で、カスタム URL ドメインを含む正規名 (CNAME) レコードは、Front Door の既定のフロントエンド ホスト (例:
contoso-frontend.azurefd.net
) を指し示します。 - カスタム URL ドメイン (例:
login.contoso.com
) 宛てのトラフィックは、指定された Front Door の既定のフロントエンド ホスト (contoso-frontend.azurefd.net
) にルーティングされます。 - Azure Front Door は、
<tenant-name>.ciamlogin.com
の既定のドメインを使ってコンテンツを呼び出します。 エンドポイントへの要求には、元のカスタム URL ドメインが含まれます。 - 外部 ID は、関連するコンテンツと元のカスタム URL ドメインを表示して、カスタム URL ドメインの要求に応答します。
Azure Front Door は、ユーザーの元の IP アドレス (監査レポートに表示される IP アドレス) を渡します。
重要
クライアントが x-forwarded-for
ヘッダーを Azure Front Door に送信する場合、外部 ID は、条件付きアクセスの評価と x-forwarded-for
クレーム リゾルバーに対するユーザーの IP アドレスとして、発信元の {Context:IPAddress}
を使います。
考慮事項と制限事項
カスタム URL ドメインを使用する場合:
- 複数のカスタム URL ドメインを設定できます。 サポートされているカスタム URL ドメインの最大数については、Microsoft Entra のサービス制限と制約について のページを参照し、Azure Front Door の Azure サブスクリプションとサービスの制限、クォータ、制約については のページを参照してください。
- 追加料金が発生する別の Azure サービスである Azure Front Door を使用できます。 詳細については、「Front Door の価格」を参照してください。 Azure Front Door インスタンスは、外部テナントとは異なるサブスクリプションでホストできます。
- ブラウザーは現在使われているドメイン名の下にセッションを格納するため、複数のアプリケーションがある場合は、それらすべてをカスタム URL ドメインに移行します。
重要
- Azure Front Door: ブラウザーから Azure Front Door への接続では、常に IPv6 ではなく IPv4 を使用する必要があります。
- ソーシャル ID プロバイダー: カスタム URL ドメインは Apple をサポートします。 ただし、Google と Facebook は現在サポートされていません。 Google または Facebook を使用してサインアップまたはサインインするユーザーは、カスタム URL ドメイン エンドポイントではなく、既定のエンドポイント (.ciamlogin.com
テナント名 ) を使用する必要があります。
既定のドメインをブロックする
セキュリティを強化するために、既定のドメインをブロックすることをお勧めします。 カスタム URL ドメインを構成した後も、ユーザーは既定のドメイン名 "<テナント名>.ciamlogin.com" にアクセスできます。 攻撃者が既定のドメインを使用してアプリにアクセスしたり、分散型サービス拒否 (DDoS) 攻撃を実行したりできないように、既定のドメインへのアクセスをブロックする必要があります。 既定のドメインへのアクセスをブロックするには、サポート チケット を開き、要求を送信
注意
既定のドメインをブロックする要求を送信する前に、カスタム URL ドメインが正しく動作することを確認します。
機能への影響と回避策
既定のドメインをブロックすると、それに依存する特定の機能が無効になります。 ただし、次の表に示す機能は、カスタム URL ドメインで構成することで維持できます。
特徴 | 回避策 |
---|---|
今すぐ実行 | Microsoft Entra 管理センターで、概要ガイドの 「今すぐ実行」機能で使用される URL と、カスタム URL ドメインを使用してユーザー フロー ウィンドウを更新します。 ブラウザーの URL で、{your_domain}.ciamlogin.com をカスタム URL ドメイン {your_custom_URL_domain}/{your_tenant_ID} に置き換えます。 |
はじめに用いるサンプル | カスタム URL ドメインを使用して、概要ガイドのサンプルを構成します。 詳細な手順については、各サンプルのドキュメントを参照してください。 たとえば、Vanilla JavaScript シングルページ アプリチュートリアルの「カスタム URL ドメインの使用」セクション参照してください。 |
外部 ID を持つ Power Pages | Power Pages サイトで外部 ID {your_domain}.ciamlogin.com を含む [機関 URL] フィールドをカスタム URL ドメイン {your_custom_URL_domain}/{your_tenant_ID} に置き換えます。 |
外部 ID を持つ Azure App Service | Azure App Serviceで外部 ID |
Visual Studio Code 拡張機能 | Visual Studio Code 拡張機能で、カスタム URL ドメインをアプリケーションの MSAL 構成に追加して、アプリケーションと "今すぐ実行" 機能が正常に動作するようにします。 authconfig ファイルの権限を {your_domain}.ciamlogin.com から {your_custom_URL_domain}/{your_tenant_ID} に変更し、カスタム URL ドメインに既知の機関を追加します。 |
外部 ID を持つ Visual Studio | appsettings.json ファイルで、カスタム URL ドメインの後にテナント ID を追加し、カスタム URL ドメインで既知の機関を追加します。 |
GitHub のサンプル | 特定のサンプル、例えば OpenAI チャット アプリケーション(Microsoft Entra 認証(Python))などには、カスタム URL ドメインが必要です。 サンプルを設定するときに、AZURE_AUTH_LOGIN_ENDPOINTをカスタム URL ドメインに設定します。 |