SQL Server を使用するレガシー AD FSフェデレーション サーバー ファーム

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 の概要」または「適切な種類のレプリケーションの選択」を参照してください。

サポート済みのSQL Serverバージョン

Windows Server 2012 R 2の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 トポロジを使用してフェデレーション サーバーファームを企業ネットワークに展開した例を示しています。 また、企業ネットワーク NLB クラスターで使用されるDNS サーバー、同じクラスター DNS 名 (fs.contoso.com を使用する追加の NLB ホスト、および 2 つの Web アプリケーション プロキシ (wap 1とwap 2) へのアクセスを使用して境界ネットワークを構成する方法も記載されています。

Illustration that shows how the fictional Contoso Pharmaceuticals company deployed its federation server farm with SQL Server topology in the corporate network.

フェデレーション サーバーまたは Web アプリケーション プロキシで使用するためにネットワーク環境を構成する方法の詳細については、AD FS の要件および Web アプリケーション プロキシ インフラストラクチャ (WAP) の計画の「名前解決の要件」セクションを参照してください。

SQL Server ファームの高可用性オプション

Windows Server 2012 R 2のAD FS では、SQL Server を使用する AD FS ファームで高可用性をサポートするために、新しいオプションが 2 つあります。

  • SQL Server AlwaysOn 可用性グループのサポート

  • SQL Server マージ レプリケーションを使用した地理的に分散された高可用性のサポート

このセクションでは、これらの各オプション、それぞれが解決すべき問題、および展開すべきオプションを決定するための主な考慮事項について記述しています。

注意

Windows Internal Database (WID) を使用する AD FS ファームは、プライマリ フェデレーション サーバー上の読み取りおよび書き込みアクセスと、セカンダリ ノード上の読み取り専用アクセスによって、基本的なデータの冗長性を提供しています。  これは、地理的にローカルなトポロジまたは地理的に分散したトポロジのどちらでも使用できます。

WID を使用する場合は、次の制限事項について注意してください。

  • 証明書利用者側の信頼が 100 以下の場合、WID ファームのフェデレーション サーバー数は 30 台に制限されます。
  • WID ファームは、トークンリプレイ検出またはアーティファクト解決 (Security Assertion Markup Language (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 つのプライマリ レプリカ (読み取りおよび書き込み可能なプライマリ データベースのセット) と、1~4つの可用性レプリカ (対応するセカンダリ・データベースのセット) で構成されています。  可用性グループは、1 つの読み取りおよび書き込み可能コピー (プライマ リレプリカ) と、1~4 つの読み取り専用可用性レプリカをサポートできます。  各可用性レプリカは、単一の Windows Server フェールオーバー クラスタリング (WSFC) クラスターの異なるノード上に存在する必要があります。  AlwaysOn 可用性グループの詳細については、「AlwaysOn 可用性グループの概要 (SQL Server)」を参照してください。

AD FS SQL Server ファームのノードから見ると、AlwaysOn 可用性グループは、1 つの SQL Server インスタンスを、ポリシーまたはアーティファクト データベースとして置き換えられます。  可用性グループ リスナーは、クライアント (AD FS セキュリティ トークン サービス) が SQL に接続するために使用するものです。

次の図は、AlwaysOn 可用性グループと AD FS SQL Server ファームを示しています。

Diagram that shows an AD FS SQL Server Farm with AlwaysOn Availability group.

Note

AlwaysOn 可用性グループでは、SQL Serverサーバー インスタンスは、フェールオーバー クラスタリング (WSFC) ノード上に上に存在している必要があります。

注意

自動フェイルオーバー ターゲットとして機能可能な可用性レプリカは 1 つだけで、他の 3 つは手動フェイルオーバーに対応します。

主な展開上の考慮事項

Always On 可用性グループを SQL Server マージレプリケーションと組み合わせて使用することを計画している場合は、以下の 「SQL Server マージレプリケーションで AD FS を使用する際の主な展開の考慮事項」 で示されている問題に注意してください。  特に、レプリケーション サブスクライバーであるデータベースを含む AlwaysOn 可用性グループがフェールオーバーすると、レプリケーション サブスクリプションは失敗に終わります。 レプリケーションを再開するためには、レプリケーション管理者が手動でそのサブスクライバーを再構成する必要があります。  レプリケーション サブスクライバーと AlwaysOn 可用性グループ (SQL Server) での特定の問題に関する SQL Server の説明および、レプリケーション、変更追跡、変更データ キャプチャ、および AlwaysOn 可用性グループ (SQL Server) のレプリケーション オプションを含む AlwaysOn 可用性グループの全体的なサポート ステートメントを参照してください。

AlwaysOn 可用性グループを使用する AD FS の構成

AlwaysOn 可用性グループを使用するように AD FS ファームを構成するには、AD FS の展開手順の若干の変更が必要です。

  1. AlwaysOn 可用性グループを構成する前に、バックアップするデータベースを事前に作成しておく必要があります。  AD FS は、新しい AD FS SQL Server ファームの最初のフェデレーション サービス ノードのセットアップと初期構成の一部として、データベースを作成します。  AD FS の構成の一部として、SQL 接続文字列を指定する必要があるため、SQL インスタンスに直接接続するように最初の AD FS ファームノードを構成しておく必要があります (これは一時的なものです)。   SQL サーバー接続文字列を使用した AD FS ファーム ノードの構成など、AD FS ファームの構成に関する具体的なガイダンスについては、「フェデレーション サーバーの構成」を参照してください。

  2. AD FS データベースを作成したら、AlwaysOn 可用性グループに割り当て、SQL Server ツールを使用して共通の TCPIP リスナーを作成し、「可用性グループの作成と構成 (SQL Server)」の処理を実行します。

  3. 最後に、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()
    
    
  4. 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ファームをまとめたものです。

server farm using SQL

SQL Server 結合レプリケーションで AD FS を使用する場合の重要な展開の考慮事項 (上の図の注記番号)

SQL Serverマージレプリケーションを使用するように AD FS を構成する方法の詳細については、「SQL Server レプリケーションを使用した地理的冗長性のセットアップ」を参照してください。

参照

AD FS 展開トポロジの計画Windows Server 2012 R2 の AD FS 設計ガイド