Active Directory フェデレーション サービス (AD FS) のこのトポロジは、Windows Internal Database (WID) 展開トポロジを使用するフェデレーション サーバー ファームとは異なり、データはファーム内の各フェデレーション サーバーにレプリケートされません。 代わりに、ファーム内のすべてのフェデレーション サーバーは、企業ネットワークにある Microsoft SQL Server を実行しているサーバーに格納されている共通データベースにデータの読み取りと書き込みを行うことができます。
重要
AD FS ファームを作成し、SQL Server を使用して構成データを格納する場合は、SQL Server 2008 以降のバージョン (SQL Server 2012、SQL Server 2014 など) を使用できます。
デプロイに関する考慮事項
このセクションでは、この展開トポロジに関連する対象ユーザー、利点、制限事項に関するさまざまな考慮事項について説明します。
誰がこのトポロジを使用するべきですか?
内部ユーザーと外部ユーザーの両方にフェデレーション アプリケーションまたはサービスへのシングル サインオン (SSO) アクセスを提供する必要がある、100 を超える信頼関係を持つ大規模な組織
既に SQL Server を使用しており、既存のツールと専門知識を活用したい組織
このトポロジを使用する利点は何ですか?
より多くの信頼関係のサポート (100 を超える)
トークン再生検出 (セキュリティ機能) とアーティファクト解決のサポート (Security Assertion Markup Language (SAML) 2.0 プロトコルの一部)
データベース ミラーリング、フェールオーバー クラスタリング、レポート作成、管理ツールなど、SQL Server のすべての利点のサポート
このトポロジを使用する場合の制限事項は何ですか?
このトポロジでは、既定ではデータベースの冗長性は提供されません。 WID トポロジを持つフェデレーション サーバー ファームは、ファーム内の各フェデレーション サーバーで WID データベースを自動的にレプリケートしますが、SQL Server トポロジを持つフェデレーション サーバー ファームには、データベースのコピーが 1 つだけ含まれています
注
SQL Server では、フェールオーバー クラスタリング、データベース ミラーリング、さまざまな種類の SQL Server レプリケーションなど、さまざまなデータとアプリケーションの冗長性オプションがサポートされています。
Microsoft Information Technology (IT) 部門は、高可用性 (同期) モードの SQL Server データベース ミラーリングとフェールオーバー クラスタリングを使用して、SQL Server インスタンスの高可用性サポートを提供します。 SQL Server トランザクション (ピア ツー ピア) とマージ レプリケーションは、Microsoft の AD FS 製品チームによってテストされていません。 SQL Server の詳細については、「高可用性ソリューションの概要」を参照するか、適切な種類のレプリケーション を選択するを参照してください。
サポートされている SQL Server のバージョン
Windows Server 2012 R2 の AD FS では、次の SQL Server バージョンがサポートされています。
SQL Server 2008 / R2
SQL Server 2012
SQL Server 2014
サーバーの配置とネットワーク レイアウトに関する推奨事項
WID トポロジを使用するフェデレーション サーバー ファームと同様に、ファーム内のすべてのフェデレーション サーバーは、ネットワーク負荷分散 (NLB) クラスター構成の一部として、1 つのクラスター ドメイン ネーム システム (DNS) 名 (フェデレーション サービス名を表す) と 1 つのクラスター IP アドレスを使用するように構成されます。 これは、NLB ホストが個々のフェデレーション サーバーにクライアント要求を割り当てるのに役立ちます。 フェデレーション サーバー プロキシを使用して、クライアント要求をフェデレーション サーバー ファームにプロキシできます。
次の図は、架空の Contoso Pharmaceuticals 企業が企業ネットワークに SQL Server トポロジを使用してフェデレーション サーバー ファームを展開した方法を示しています。 また、その会社が DNS サーバーへのアクセスを使用して境界ネットワークを構成した方法、企業ネットワーク NLB クラスターで使用されているのと同じクラスター DNS 名 (fs.contoso.com) を使用する追加の NLB ホスト、および 2 つの Web アプリケーション プロキシ (wap1 と wap2) を使用して構成した方法についても説明します。
フェデレーション サーバーまたは Web アプリケーション プロキシで使用するネットワーク環境を構成する方法の詳細については、「 AD FS の要件 と Web アプリケーション プロキシ インフラストラクチャ (WAP) を計画する」の「名前解決の要件」セクションを参照してください。
SQL Server ファームの高可用性オプション
Windows Server 2012 R2 では、AD FS には、SQL Server を使用した AD FS ファームでの高可用性をサポートするための 2 つの新しいオプションがあります。
SQL Server AlwaysOn 可用性グループのサポート
SQL Server マージ レプリケーションを使用した地理的に分散された高可用性のサポート
このセクションでは、これらの各オプション、それぞれ解決する問題、デプロイするオプションを決定するための重要な考慮事項について説明します。
注
Windows 内部データベース (WID) を使用する AD FS ファームでは、プライマリ フェデレーション サーバー ノードでの読み取り/書き込みアクセスと、セカンダリ ノードでの読み取り専用アクセスを備えた基本的なデータ冗長性が提供されます。 これは、地理的にローカルまたは地理的に分散されたトポロジで使用できます。
WID を使用する場合は、次の制限事項に注意してください。
- 証明書利用者の信頼が 100 個以下の場合、WID ファームには 30 のフェデレーション サーバーの制限があります。
- WID ファームでは、トークン再生の検出やアーティファクト解決 (セキュリティ アサーション マークアップ言語 (SAML) プロトコルの一部) はサポートされていません。
次の表は、WID ファームを使用するための概要を示しています。
1-100 RP トラスト | 100以上のRP信託 |
---|---|
1 から 30 の AD FS ノード: WID がサポートされています | 1 から 30 の AD FS ノード: WID の使用はサポートされていません - SQL 必須 |
30 を超える AD FS ノード: WID の使用はサポートされていません - SQL 必須 | 30 を超える AD FS ノード: WID の使用はサポートされていません - SQL 必須 |
AlwaysOn 可用性グループ
概要
AlwaysOn 可用性グループは SQL Server 2012 で導入され、高可用性 SQL Server インスタンスを作成する新しい方法を提供します。 AlwaysOn 可用性グループは、SQL インスタンス レイヤーとデータベース レイヤーの両方で冗長性とフェールオーバーを実現するために、クラスタリングとデータベース ミラーリングの要素を結合します。 以前の高可用性オプションとは異なり、AlwaysOn 可用性グループでは、データベース レイヤーに共通の記憶域 (または記憶域ネットワーク) は必要ありません。
可用性グループは、プライマリ レプリカ (読み取り/書き込みプライマリ データベースのセット) と 1 ~ 4 個の可用性レプリカ (対応するセカンダリ データベースのセット) で構成されます。 可用性グループは、1 つの読み取り/書き込みコピー (プライマリ レプリカ) と、1 ~ 4 つの読み取り専用可用性レプリカをサポートします。 各可用性レプリカは、1 つの Windows Server フェールオーバー クラスタリング (WSFC) クラスターの異なるノード上に存在する必要があります。 AlwaysOn 可用性グループの詳細については、「 AlwaysOn 可用性グループ (SQL Server) の概要」を参照してください。
AD FS SQL Server ファームのノードの観点から、AlwaysOn 可用性グループは、単一の SQL Server インスタンスをポリシー/成果物データベースとして置き換えます。 可用性グループ リスナーは、クライアント (AD FS セキュリティ トークン サービス) が SQL への接続に使用するものです。
次の図は、AlwaysOn 可用性グループを持つ AD FS SQL Server ファームを示しています。
注
AlwaysOn 可用性グループでは、SQL Server インスタンスが Windows Server フェールオーバー クラスタリング (WSFC) ノードに存在する必要があります。
注
自動フェールオーバー ターゲットとして機能できる可用性レプリカは 1 つだけで、他の 3 つは手動フェールオーバーに依存します。
デプロイに関する主な考慮事項
ALWAYSOn 可用性グループを SQL Server マージ レプリケーションと組み合わせて使用する場合は、以下の「SQL Server マージ レプリケーションで AD FS を使用するための主な展開に関する考慮事項」で説明されている問題に注意してください。 特に、レプリケーション サブスクライバーであるデータベースを含む AlwaysOn 可用性グループがフェールオーバーすると、レプリケーション サブスクリプションは失敗します。 レプリケーションを再開するには、レプリケーション管理者がサブスクライバーを手動で再構成する必要があります。 SQL Server のレプリケーション サブスクライバーと AlwaysOn 可用性グループ (SQL Server)における特定の問題の説明、および AlwaysOn 可用性グループでのレプリケーション オプションを含むサポートについては、レプリケーション、変更の追跡、変更データ キャプチャ、および AlwaysOn 可用性グループ (SQL Server)を参照してください。
AlwaysOn 可用性グループを使用するように AD FS を構成する
AlwaysOn 可用性グループを使用して AD FS ファームを構成するには、AD FS の展開手順を少し変更する必要があります。
バックアップするデータベースは、AlwaysOn 可用性グループを構成する前に作成する必要があります。 AD FS は、新しい AD FS SQL Server ファームの最初のフェデレーション サービス ノードのセットアップと初期構成の一部として、そのデータベースを作成します。 AD FS 構成の一部として、SQL 接続文字列を指定する必要があるため、SQL インスタンスに直接接続するように最初の AD FS ファーム ノードを構成する必要があります (これは一時的なものです)。 SQL サーバー接続文字列を使用した AD FS ファーム ノードの構成など、AD FS ファームの構成に関する具体的なガイダンスについては、「 フェデレーション サーバーの構成」を参照してください。
AD FS データベースが作成されたら、それらを AlwaysOn 可用性グループに割り当て、SQL Server ツールと、可用性グループ の作成と構成 (SQL Server) でのプロセスを使用して共通 TCPIP リスナーを作成します。
最後に、PowerShell を使用して AD FS プロパティを編集し、AlwaysOn 可用性グループのリスナーの DNS アドレスを使用するように SQL 接続文字列を更新します。
AD FS 構成データベースの SQL 接続文字列を更新する PSH コマンドの例:
PS:\>$temp= Get-WmiObject -namespace root/ADFS -class SecurityTokenService PS:\>$temp.ConfigurationdatabaseConnectionstring="data source=<SQLCluster\SQLInstance>; initial catalog=adfsconfiguration;integrated security=true" PS:\>$temp.put()
AD FS アーティファクト解決サービス データベースの SQL 接続文字列を更新する PSH コマンドの例:
PS:\> Set-AdfsProperties –artifactdbconnection "Data source=<SQLCluster\SQLInstance >;Initial Catalog=AdfsArtifactStore;Integrated Security=True"
SQL Server マージ レプリケーション
SQL Server 2012 でも導入されたマージ レプリケーションでは、次の特性を持つ AD FS ポリシー データの冗長性が可能になります。
すべてのノード (プライマリだけでなく) の読み取りと書き込みの機能
システムに待機時間が発生しないように非同期的にレプリケートされるデータの量が少ない
次の図は、マージ レプリケーション (1 パブリッシャー、2 サブスクライバー) を含む地理的に冗長な AD FS SQL Server ファームを示しています。
SQLserver farm using SQLを使用してサーバー ファームを運用する
SQL Server マージ レプリケーションで AD FS を使用する場合の主な展開に関する考慮事項 (上の図の番号に注意してください)
ディストリビューター データベースは、AlwaysOn 可用性グループまたはデータベース ミラーリングでの使用はサポートされていません。 レプリケーション、変更の追跡、変更データ キャプチャ、AlwaysOn 可用性グループ (SQL Server) のレプリケーション オプションを含む AlwaysOn 可用性グループの SQL Server サポート ステートメントを参照してください。
レプリケーション サブスクライバーであるデータベースを含む AlwaysOn 可用性グループがフェールオーバーすると、レプリケーション サブスクリプションは失敗します。 レプリケーションを再開するには、レプリケーション管理者がサブスクライバーを手動で再構成する必要があります。 SQL Server の特定の問題については、レプリケーション サブスクライバーと AlwaysOn 可用性グループ (SQL Server)の説明を参照し、レプリケーション オプションにおける AlwaysOn 可用性グループの全体的なサポート ステートメントについてはレプリケーション、変更の追跡、変更データ キャプチャ、および AlwaysOn 可用性グループ (SQL Server)を参照してください。
SQL Server マージ レプリケーションを使用するように AD FS を構成する方法の詳細については、「SQL Server レプリケーションを使用した 地理的冗長性の設定」を参照してください。