次の方法で共有


AD FS 構成データベースの役割

AD FS 構成データベースには、Active Directory Federation Services (AD FS) (フェデレーション サービス) の単一のインスタンスを表す構成データがすべて保存されています。 AD FS 構成データベースでは、フェデレーション サービスは、パートナー、証明書、属性ストア、要求、およびこれらの関連エンティティに関するさまざまなデータを識別するために必要なパラメーターのセットを定義します。 この構成データは、Microsoft SQL Server® データベースに保存するか、または Windows Internal Database (WID) 機能 (Windows Server 2012 以降に付属) を使用して保存できます。

注意

AD FS 構成データベースの内容全体ができるは、WID のインスタンスまたは SQL データベースのインスタンス ストアドは両方は必要ありません。 つまり、WID と AD FS 構成データベースの同じインスタンスの SQL Server データベースを使用して他のユーザーを使用していくつかのフェデレーション サーバーを持つことはできません。

指定されたコンテンツと共にこのトピックで、次の情報を使用する AD FS 展開トポロジに関する考慮事項 長所と短所を AD FS 構成データベースを格納する WID または SQL Server を選択した場合の詳細については。

WID ではリレーショナル データ ストアが使用され、専用の管理ユーザー インターフェイス (UI) は用意されていません。 代わりに、管理者は AD FS 管理スナップイン、Fsconfig.exe、または Windows PowerShell™ コマンドレットを使用して、AD FS 構成データベースの内容を変更できます。

WID を使用して AD FS 構成データベースを保存する

WID を保存先として使用して AD FS 構成データベースを作成する場合、Fsconfig.exe コマンド ライン ツールまたは AD FS フェデレーション サーバー構成ウィザードのいずれかを使用できます。 これらのツールを使用する場合、フェデレーション サーバー トポロジを作成するために次のいずれかのオプションを選択できます。 これらの各オプションでは、WID を使用して、AD FS 構成データベースを格納するため。

  • スタンドアロン フェデレーション サーバーを作成する

  • フェデレーション サーバー ファーム内に最初のフェデレーション サーバーを作成する

  • フェデレーション サーバー ファームにフェデレーション サーバーを追加する

スタンドアロン オプションを選択した場合、WID を使用して AD FS 構成データベースの単一のインスタンスが保存されます。 このインスタンスを複数のフェデレーション サーバーで共有することはできません。 これはテスト ラボ環境向けのオプションです。 スタンドアロン フェデレーション サーバーのオプションに関する詳細とセットアップ方法については、「WID を使用したスタンドアロン フェデレーション サーバー」または「スタンドアロン フェデレーション サーバーを作成する」を参照してください。

フェデレーション サーバー ファームに最初のフェデレーション サーバーを作成するオプションを選択した場合、後からファームに別のフェデレーション サーバーを追加できるように、WID でスケーラビリティが構成されます。 WID ファームの展開に関する詳細とセットアップ方法については、「WID を使用したフェデレーション サーバー ファーム」または「フェデレーション サーバー ファームに最初のフェデレーション サーバーを作成する」を参照してください。

フェデレーション サーバーを追加するオプションを選択した場合、指定した間隔で構成データベースの変更点が新しいフェデレーション サーバーにレプリケートされるように WID が構成されます。 WID ファームへのフェデレーション サーバーの追加に関する詳細については、「WID を使用するフェデレーション サーバー ファーム」または「フェデレーション サーバー ファームにフェデレーション サーバーを追加する」を参照してください。

注意

WID を使用するフェデレーション サーバー ファームを展開するときに AD FS の一部の機能は利用できません。 完全な機能セット、サーバー ファームを構成するときにアクセスするにはには、代わりに、AD FS 構成データベースを格納する Microsoft SQL Server の使用を検討します。 詳細については、「AD FS 展開トポロジに関する考慮事項」を参照してください。

WID フェデレーション サーバー ファームの動作

このセクションでは、WID フェデレーション サーバー ファームのプライマリおよびセカンダリ フェデレーション サーバー間でデータがレプリケートされる仕組みを理解する上で重要な概念を説明します。 。

プライマリ フェデレーション サーバー

プライマリ フェデレーション サーバーは、Windows Server 2012 以降が実行されており、AD FS フェデレーション サーバー構成ウィザードを使用してフェデレーション サーバーの役割で動作するように構成されたコンピューターで、AD FS 構成データベースの読み書き可能なコピーが格納されています。 AD FS フェデレーション サーバー構成ウィザードを使用して、新しいフェデレーション サービスを作成し、そのコンピューターに、ファーム内の最初のフェデレーション サーバーを作成するオプションを選択すると、プライマリ フェデレーション サーバーは常に作成されます。 セカンダリ フェデレーション サーバーとも呼ばれるこのファーム内の他のすべてのフェデレーション サーバーは、ローカルに格納されている AD FS 構成データベースのコピーをプライマリ フェデレーション サーバーに対して行われた変更を同期する必要があります。

セカンダリ フェデレーション サーバー

セカンダリ フェデレーション サーバーには、プライマリ フェデレーション サーバーの AD FS 構成データベースのコピーが保存されますが、このコピーは読み取り専用です。 セカンダリ フェデレーション サーバーは、ファーム内のプライマリ フェデレーション サーバーに接続し、一定間隔でサーバーをポーリングしてデータが変更されたかどうかをチェックすることにより、プライマリとデータを同期します。 セカンダリ フェデレーション サーバーは、ネットワーク環境のさまざまなサイトから行われるアクセス要求による負荷を分散する役割を果たすと同時に、プライマリ フェデレーション サーバーにフォールト トレランスを提供します。

AD FS 構成データベースを同期する方法

AD FS 構成データベースは重要な役割を果たすため、ネットワークのすべてのフェデレーション サーバーで使用できるようになっています。これにより、各サーバーはフォールト トレランス機能と要求処理の負荷分散機能 (ネットワーク ロード バランサーを使用している場合) を提供できます。 ただし、この機能で処理するためにセカンダリ フェデレーション サーバーでは、プライマリ フェデレーション サーバーに格納されている AD FS 構成データベースを同期する必要があります。

フェデレーション サーバーをファームに追加すると、セカンダリ フェデレーション サーバーとなる新しいコンピューターは、AD FS 構成データベースのコピーをレプリケートするプライマリ フェデレーション サーバーに接続します。 これ以降、新しいフェデレーション サーバーは、次の図に示すように定期的にプライマリ フェデレーション サーバーから更新を取得し続けます。

AD FS configuration

各セカンダリ フェデレーション サーバーでは、5 分間隔の変更で、プライマリ フェデレーション サーバーをポーリングします。 Windows PowerShell コマンドレットを使用すると、この既定の 5 分間隔の値を調整できるほか、いつでも強制的に即時同期を行うことができます。 これを行う方法の詳細については、次を参照してください。 Windows PowerShell による AD FS の管理します。

WID の同期プロセスでは、中程度の変更をより効率的に転送できるように増分転送もサポートされています。 増分転送プロセスでは、必要なネットワーク トラフィックを大幅に削減でき、転送が完了するまでの時間を大幅に短縮できます。

注意

SQL Server のインスタンスに WID を AD FS 構成データベースの移行をサポートするとします。 これを行う方法の詳細については、次を参照してください。 AD FS: AD FS 構成データベースを SQL Server に移行 、TechNet Wiki サイトにします。

AD FS の同期プロパティを管理する方法

このセクションでは、AD FS 構成データベース同期プロパティを表示および編集する方法について説明します。 。

Get-ADFSSyncProperties コマンドレットでは、Active Directory フェデレーション サービス (AD FS) (AD FS) の構成データベースの同期プロパティを取得します。

PS C:\> Get-ADFSSyncProperties

プライマリ AD FS サーバーでは、このコマンドレットは、ロールがプライマリ コンピューターであることのみを示しています。 セカンダリ メンバーでは、プライマリ コンピューターからの最後の同期の完全修飾ドメイン名、最後の同期の状態と時刻、ポーリングの期間、現在構成されているプライマリ コンピューター名、プライマリ コンピューターのポート、およびセカンダリ コンピューターの役割を含む、構成の残りの部分が表示されます。

Set-ADFSSyncProperties コマンドレットでは、Active Directory フェデレーション サービス (AD FS) 構成データベースの同期の頻度を変更します。 また、このコマンドレットでは、フェデレーション サーバー ファーム内のプライマリ サーバーとなるフェデレーション サーバーも指定します。

注意

プライマリ フェデレーション サーバーがクラッシュしてオフラインになった場合でも、すべてのセカンダリ フェデレーション サーバーは通常どおり要求を処理し続けます。 ただし、プライマリ フェデレーション サーバーがオンライン状態に戻るまで、フェデレーション サービスに新たに変更を加えることはできません。 セカンダリ フェデレーション サーバーを Windows PowerShell を使用して、プライマリ フェデレーション サーバーを指定できます。 新しいプライマリ サーバーを指名する場合は、新しいプライマリ サーバーを反映するように残りのサーバーを変更する必要があります。 WID ファームに 2 つのプライマリがあると、ファームの安定性に影響を及ぼし、データを失う可能性があります。

ファームのポーリング期間を変更する

PS C:\> Set-AdfsSyncProperties -PollDuration 3600 -PrimaryComputerName "FederationServerPrimary"

このコマンドにより、データベースの同期が 3600 秒に変更されます。 このコマンドにより、プライマリ フェデレーション サーバーが変更されます。

サーバーをセカンダリからプライマリに変更する

PS C:\> Set-AdfsSyncProperties -Role "PrimaryComputer"

このコマンドでは、WID ファームの AD FS サーバーをセカンダリからプライマリに変更します。

プライマリ サーバーをセカンダリ サーバーに変更する

PS C:\> Set-AdfsSyncProperties -Role "SecondaryComputer" -PrimaryComputerName "<FQDN of primary server>"

このコマンドでは、WID ファームのプライマリ AD FS サーバーをセカンダリ サーバーに変更します。 プライマリ サーバーの完全修飾ドメイン名を指定する必要があります。 そうしないと、すべてのセカンダリ AD FS サーバーが正常に同期されない可能性があります。 注: プライマリ サーバーは、セカンダリ サーバーからポート 80 で HTTP 経由でアクセスできる必要があります。

詳細については、「Set-AdfsSyncProperties」を参照してください。

SQL Server を使用して AD FS 構成データベースを保存する

SQL Server データベースの単一インスタンスを保存先として AD FS 構成データベースを作成する場合、Fsconfig.exe コマンド ライン ツールを使用できます。 AD FS 構成データベースとして SQL Server database を使用すると、wid と比較次の利点が提供されます。

  • 管理者は SQL Server の高可用性機能を活用できます

  • 高トラフィック時のパフォーマンスがさらに向上します

  • SAML アーティファクト解決および SAML/WS-Federation トークン リプレイ検出の機能がサポートされます (以下で説明します)

“プライマリ フェデレーション サーバー” という用語は、AD FS 構成データベースが SQL データベース インスタンスに保存される場合は適用されません。次の図に示すように、すべてのフェデレーション サーバーは、クラスター化された同じ SQL Server インスタンスを使用する AD FS 構成データベースを均等に読み書きできるためです。

AD FS roles

SQL Server を使用して、AD FS にできるは、受信クライアント要求をサービスに高可用性サーバー クラスターとして連携して動作するのに 2 つ以上のサーバーを構成します。 高可用性のスケールアウト アーキテクチャでは、サーバーを追加することでサーバーの処理能力を向上させることができます。 単一障害点は自動的なクラスター フェールオーバーによって軽減されます。

高可用性を確保するには、SQL クラスタリング技術によるネットワーク負荷分散サービスとフェールオーバー サービスを使用します。 SQL Server で高可用性を構成する方法の詳細については、高可用性ソリューションの概要に関する記事を参照してください。

SAML アーティファクト解決

SAML (Security Assertion Markup Language) アーティファクト解決は、証明書利用者が要求プロバイダーからトークンを直接取得できる方法が記述されている、SAML 2.0 プロトコルの一部に基づいたエンドポイントです。 解決プロセスの最初の段階では、ブラウザー クライアントがリソース フェデレーション サーバーに接続してアーティファクトを提供します。 第 2 段階では、リソース フェデレーション サーバーが、アカウント パートナー組織でホストされている SAML アーティファクト エンドポイント URL にアーティファクトを送信して、アーティファクト メッセージを解決します。 最終段階では、アカウント フェデレーション サーバーがブラウザー クライアントの代わりにトークンをフェデレーション サーバーに発行します。

注意

アカウント パートナー組織の管理者は、ファーム内のすべてのアカウント フェデレーション サーバーで、Windows ルート証明書プログラム メンバーのルート証明書にチェーンする SSL 証明書を IIS のフェデレーション パッシブ Web サイト (<ComputerName>\Sites\Default Web Site\adfs\ls) に割り当てまたはバインドする必要があります。 これは、リソース フェデレーション サーバーで SSL 証明書を [ローカル コンピューター] の [信頼されたユーザー] 証明書ストアに手動で追加する必要が生じたり、組織で公開されているアーティファクトを解決できなくなったりすることを避けるために重要です。

SAML/WS - Federation トークン リプレイ検出

トークン リプレイという用語は、アカウント パートナー組織内のブラウザー クライアントが、リソース フェデレーション サーバーで認証するために、アカウント フェデレーション サーバーから受け取った同じトークンの送信を何度も試行する動作を指します。 この動作は、ユーザーが認証ページを再送信する目的でブラウザーの [戻る] ボタンをクリックしたときに発生します。

AD FS のトークン リプレイ検出という機能を使用すると、同じトークンを使用する複数のトークン要求を検出して破棄することができます。 トークン リプレイ検出機能を有効にすると、同じトークンが複数回使用されないようにすることで、WS-Federation パッシブ プロファイルと SAML WebSSO プロファイルの両方で認証要求の整合性が保護されます。 キオスクを使用する場合など、セキュリティが非常に重要な懸念事項になる状況では、この機能を有効にする必要があります。

キオスクの場合、ユーザーがすべての Web サイトからログオフした後で、悪意のあるユーザーがブラウザーの履歴を使用して前のユーザーが読み込んだフェデレーション認証ページを再送信しようとすることが考えられます。 トークン リプレイ検出機能は、アカウント パートナー組織で正常に完了した認証に関する追加情報を保存することで、後続のトークンのリプレイを検出して複数回の認証試行が成功しないようにして、この問題を軽減します。