障害のあるスプリットブレイン DNS 構成により、シームレスな SSO サインイン エクスペリエンスを防ぐことができます

この記事では、シングル サインオン (SSO) が有効なユーザー ID を使用してOffice 365 サービスにサインインするときに、Active Directory フェデレーション サービス (AD FS) (AD FS) が想定どおりに動作しない条件について説明します。

              元の製品バージョン: クラウド サービス (Web ロール/Worker ロール)、Microsoft Entra ID、Microsoft Intune、Azure Backup、Office 365 ID 管理
元の KB 番号: 2715326

現象

シングル サインオン (SSO) が有効なユーザー ID を使用して、Office 365、Microsoft Azure、Microsoft Intuneなどの Microsoft クラウド サービスにサインインすると、Active Directory フェデレーション サービス (AD FS) (AD FS) への接続は期待どおりに動作しません。 接続は、次のいずれかの結果と共に失敗します。

  • オンプレミス ネットワーク内からサインインするコンピューターは、AD FS プロキシ IP アドレスに接続し、フォーム ベースの認証プロンプトが表示されます。 ただし、統合 Windows 認証エクスペリエンスが必要です。
  • オンプレミス ネットワーク内からサインインし、その後 AD FS プロキシ サービスに接続しようとするコンピューターは、ファイアウォール設定のために拒否されます。

原因

これらの現象は、DNS サービスの正しい内部および外部の名前解決に必要なスプリット ブレイン DNS 構成の障害が原因で発生する可能性があります。 次のいずれかの原因が考えられます。

  • スプリットブレイン内部 DNS 解決は、AD FS サービスが存在するドメインに対して設定されていません。
  • AD FS サービスの名前解決は、オンプレミス環境のスプリット ブレイン内部 DNS 解決では設定されません。

解決方法

この問題を解決するには、次の手順を実行します。

手順 1: 内部 DNS でスプリット ブレイン DNS ゾーンを確立する

これを行うには、オンプレミスの DNS サーバーで次の手順を実行します。

  1. DNS 管理コンソールを開きます。 これを行うには、[ 管理ツール] を開き、[ DNS] をダブルクリックします。

  2. 左側のナビゲーション ウィンドウで [ DNS] を展開し、サーバー名を展開し、[ 前方参照ゾーン] を選択します。

  3. AD FS サービス エンドポイントがホストされている DNS ゾーンに対して表示されるエントリがない場合は、ゾーンを作成します。 これを行うには、[ 前方参照ゾーン] を右クリックし、[ 新しいゾーン] を選択します。

  4. ウィザードを終了します。 これを行う場合は、[ プライマリ ゾーン] を選択し、AD FS サーバーの DNS ドメインのゾーンに名前を付けます。

    警告

    この手順を完了すると、ドメインのパブリック要求を解決する DNS サーバーを使用して、オンプレミスコンピューターがサーバー名をパブリック IP アドレスに解決するのを効果的に停止します。 オンプレミス クライアントで使用する必要があるエクストラネット サービス エンドポイントには、接続を有効にするために、スプリットブレイン DNS 構成内に A レコードが作成されている必要があります。

手順 2: スプリット ブレイン DNS ドメインで AD FS サービス エンドポイントをアドバタイズする

前に開いた DNS 管理コンソールで、次の手順を実行します。

  1. を参照して、AD FS サーバーのドメインの DNS ゾーンを選択します。
  2. ドメイン名を右クリックし、[ 新しいホスト (A または AAAA)] を選択します。
  3. 次の値を入力します。
    • 名前: AD FS サービス名
    • IP アドレス: AD FS フェデレーション サービス ファームのオンプレミスのプライベート IP アドレス。

手順 3: サーバーとクライアントの DNS キャッシュをクリアしてソリューションをテストする

  1. 前に開いた DNS 管理コンソールで、サーバー名を右クリックし、[ キャッシュのクリア] を選択します。

  2. クライアント コンピューターで、[ スタート] を選択し、[ すべてのプログラム] を選択し、[ アクセサリ] を選択し、[ コマンド プロンプト] を右クリックして、[ 管理者として実行] を選択します。

  3. 次のコマンドを入力し、Enter キーを押します。

    Ipconfig /flushdns
    

SSO サインインを再テストして、これが問題を解決することを確認します。

詳細

スプリットブレイン DNS は、パブリック DNS 解決によって同じサービス名が別のパブリック IP アドレスに解決される場合でも、オンプレミスのクライアント コンピューターがサーバー名を内部 IP アドレスに解決するために使用される一般的な構成です。 オンプレミス サービス用に AD FS を設定する場合、AD FS サービスに対するオンプレミスのクライアント コンピューターの認証エクスペリエンスが、AD FS プロキシ サービスによってサービスされている外部クライアント コンピューターとは異なる方法 (AD FS フェデレーション サービス ファームによって) 処理されるようにするために必要です。

この構成がないと、すべての AD FS クライアントは、オンプレミス ネットワークから接続されているか、インターネットの場所からリモートでアクセスしているかに関係なく、AD FS サービスに接続するときに同じ IP アドレスで処理されます。 これにより、AD FS サービスをインターネットに公開している AD FS プロキシ サービスでは、(リモート コンピューターが Active Directory に対して認証されないため) プロンプトなしで統合 Windows 認証応答を提供できるとは思わないので、オンプレミスの Active Directory 認証クライアントで可能なシームレスな認証エクスペリエンスが制限されます。

この制限を克服するには、オンプレミスの DNS で同じ名前のドメインを作成することで、オンプレミス クライアントに与えられる既定の名前解決をオーバーライドすることをお勧めします。 DNS 分散アーキテクチャは前方参照クエリに検出された最初の応答を返すので、最初に要求がオンプレミスの DNS サーバーによって処理されるため、すべてのオンプレミス クライアント コンピューター要求に対してそのドメインのパブリック DNS ドメインアドバタイズを効果的にマスクします。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。