フェデレーション サーバーの証明書の要件

どのような Active Directory フェデレーション サービス (AD FS) 設計においても、さまざまな証明書を使用することで、通信をセキュリティで保護し、インターネット クライアントとフェデレーション サーバーの間のユーザー認証を円滑に進める必要があります。 各フェデレーション サーバーが AD FS 通信に参加できるようにするには、事前にそれぞれに対してサービス通信証明書とトークン署名証明書を用意しておく必要があります。 次の表は、フェデレーション サーバーに関連する証明書の種類を説明したものです。

証明書の種類 説明
トークン署名証明書 トークン署名証明書は X509 証明書です。 フェデレーション サーバーは、関連付けされた公開/秘密キーのペアを使用して、作成するすべてのセキュリティ トークンにデジタル署名します。 これには、公開されたフェデレーション メタデータとアーティファクト解決要求の署名が含まれます。

AD FS 管理スナップインで複数のトークン署名証明書を構成すると、1 つの証明書が有効期限切れ間近になったときに証明書のロールオーバーを行うことができます。 既定では、リストにあるすべての証明書が公開されますが、実際にトークンに署名するために AD FS で使用されるのはプライマリ トークン署名証明書のみです。 選択するすべての証明書には、対応する秘密キーが必要です。

詳細については、「トークン署名証明書」と「トークン署名証明書の追加」を参照してください。

サービス通信証明書 フェデレーション サーバーは、Windows Communication Foundation (WCF) メッセージ セキュリティのサービス通信証明書としても知られるサーバー認証証明書を使用します。 既定では、これはインターネット インフォメーション サービス (IIS) で、フェデレーション サーバーによって Secure Sockets Layer (SSL) 証明書として使用される証明書と同じです。 注: AD FS 管理スナップインでは、サービス通信証明書としてフェデレーション サーバーのサーバー認証証明書を参照します。

詳細については、「サービス通信証明書」と「サービス通信証明書の設定」を参照してください。

サービス通信証明書はクライアント コンピューターから信頼されている必要があるので、信頼されている証明機関 (CA) が署名した証明書の使用が推奨されます。 選択するすべての証明書には、対応する秘密キーが必要です。

Secure Sockets Layer (SSL) 証明書 フェデレーション サーバーは、SSL 証明書を使用して Web クライアントとフェデレーション サーバー プロキシとの SSL 通信で Web サービス トラフィックを保護します。

SSL 証明書はクライアント コンピューターから信頼されている必要があるので、信頼されている CA が署名した証明書の使用が推奨されます。 選択するすべての証明書には、対応する秘密キーが必要です。

トークン暗号化解除証明書 この証明書は、このフェデレーション サーバーが受け取るトークンの暗号化解除に使用されます。

複数の暗号化解除証明書を使用することができます。 これにより、新しい証明書がプライマリ暗号化解除証明書として設定された後に、リソース フェデレーション サーバーでは古い証明書によって発行されたトークンの暗号化解除を行うことができるようになります。 すべての証明書を暗号化解除に使用できますが、プライマリ トークン暗号化解除証明書のみがフェデレーション メタデータで実際に公開されます。 選択するすべての証明書には、対応する秘密キーが必要です。

詳細については、「トークン暗号化解除証明書の追加」を参照してください。

IIS の Microsoft 管理コンソール (MMC) スナップインによってサービス通信証明書を要求することで、SSL 証明書またはサービス通信証明書の要求とインストールが可能です。 SSL 証明書の使用に関する一般的な情報については、IIS 7.0: IIS 7.0 での Secure Sockets Layer の構成および IIS 7.0: IIS 7.0 でのサーバー証明書の構成に関するページを参照してください。

注意

AD FS では、デジタル署名に使用されるセキュア ハッシュ アルゴリズム (SHA) レベルを SHA-1 または SHA-256 (よりセキュリティが強固) のいずれかに変更できます。 AD FS では、MD5 (Makecert.exe コマンドライン ツールで使用される既定のハッシュ アルゴリズム) などの他のハッシュ方式と一緒に証明書を使用することはサポートされていません。 セキュリティ上のベスト プラクティスとして、すべての証明書に SHA-256 (既定の設定) を使用することをお勧めします。 SHA-1 は、SHA-256 を使用した通信がサポートされない製品との相互作用が必要なシナリオでのみ使用が推奨されます。このような製品には、Microsoft 以外の製品や AD FS 1. x があります。

CA 戦略の決定

AD FS では証明書が CA によって発行されている必要はありません。 ただし、SSL 証明書 (サービス通信証明書としても既定で使用される証明書) は AD FS クライアントによって信頼されている必要があります。 これらの種類の証明書には自己署名証明書を使用しないことが推奨されます。

重要

自己署名の SSL 証明書を運用環境で使用すると、アカウント パートナー組織の悪意のあるユーザーがリソース パートナー組織のフェデレーション サーバーを制御できるようになる可能性があります。 このセキュリティ リスクは、自己署名証明書がルート証明書であることに起因します。 自己署名証明書は別のフェデレーション サーバー (たとえば、リソース フェデレーション サーバー) の信頼されたルート ストアに追加する必要があり、それによってそのサーバーが攻撃されやすい状態になります。

CA から証明書を受け取ったら、すべての証明書がローカル コンピューターの個人証明書ストアにインポートされていることを確認してください。 個人ストアへの証明書のインポートは証明書 MMC スナップインで行うことができます。

証明書スナップインを使用する代わりに、SSL 証明書を既定の Web サイトに割り当てる際に IIS マネージャー スナップインで SSL 証明書をインポートすることもできます。 詳細については、「サーバー認証証明書を既定の Web サイトにインポートする」を参照してください。

注意

AD FS ソフトウェアをフェデレーション サーバーにするコンピューターにインストールする前に、両方の証明書がローカル コンピューターの個人証明書ストアにあり、SSL 証明書が既定の Web サイトに割り当てられていることを確認してください。 フェデレーション サーバーの設定に必要なタスクの順序の詳細については、「チェックリスト: フェデレーション サーバーの設定」を参照してください。

セキュリティと予算の要件に応じて、どの証明書をパブリック CA または企業 CA から取得するかを慎重に検討してください。 次の図は、特定の種類の証明書に推奨される CA 発行者を示しています。 この推奨事項は、セキュリティとコストに関する取り組みのベスト プラクティスを反映したものです。

cert requirements

証明書失効リスト

使用するいずれかの証明書に CRL が指定されている場合、構成済みの証明書が存在するサーバーは CRL を配布するサーバーと通信できる必要があります。

参照

Windows Server 2012 での AD FS 設計ガイド