WCF で使用されるセキュリティの概要

Windows Communication Foundation (WCF) のセキュリティは、各種のセキュリティ インフラストラクチャで既に使用され展開されている概念の上に構築されています。

WCF は、これらのインフラストラクチャの一部 (SSL (Secure Sockets Layer) over HTTP (HTTPS) など) をサポートしています。ただし、WCF では、新しい相互運用可能なセキュリティ標準 (WS-Security など) を SOAP エンコード メッセージに実装することで、既存のセキュリティ インフラストラクチャをサポートする以上の機能を実現しています。既存の機構と新規の相互運用可能な標準のどちらを使用する場合でも、背後にあるセキュリティ概念に変わりはありません。したがって、既存のインフラストラクチャおよび新しい標準を支える概念を理解することが、アプリケーションにとって最善のセキュリティ モデルを実装するための要になります。ここでは、既存の概念と機構の概要について説明し、詳細情報へのリンクを示します。

Web サービスのセキュリティの概要

セキュリティの概念、特に WCF に関するセキュリティの概念については、MSDN の「Scenarios, Patterns, and Implementation Guidance for Web Services Enhancements (WSE) 3.0」にある patterns & practices の一連のチュートリアルで紹介されています。

Web サービスの認証、承認、機密性、および整合性

Windows におけるこれらの基本概念と実装詳細については、 、「How To: Create a Custom Account to Run ASP.NET 1.1」を参照してください。

業界標準のセキュリティ仕様

公開キー基盤

公開キー基盤 (PKI: Public Key Infrastructure) は、デジタル証明書、証明機関、およびその他の登録機関で構成されるシステムです。PKI では、公開キー暗号化を使用して、電子取引に関与する各当事者の有効性の検証と認証を行います。詳細な情報については、次のページを参照してください。 「An Introduction to the Windows 2000 Public-Key Infrastructure」を参照してください。

Kerberos プロトコル

"Kerberos プロトコル" は、Windows ドメインでユーザーを認証するセキュリティ機構を作成するための仕様です**。ユーザーはドメイン上の他のエンティティと、セキュリティで保護されたコンテキストを確立できます。Windows 2000 以降のプラットフォームでは、Kerberos プロトコルが既定で使用されます。システムの機構を理解することは、イントラネット クライアントと対話するサービスを作成する場合に役立ちます。また、Web Services Security Kerberos Binding が広く公開されているため、Kerberos プロトコルを使用してインターネット クライアントと通信できます (つまり、Kerberos プロトコルには相互運用性があります)。Kerberos プロトコルを Windows で実装する方法詳細については、 、「Exploring Kerberos, the Protocol for Distributed Security in Windows 2000」を参照してください。

X.509 証明書

X.509 証明書は、セキュリティ アプリケーションで使用される主要な資格情報の形式です。Windows を実行しているコンピュータには、それぞれ目的が異なる数種類のストアがあります。各種ストア詳細については、 、「Certificate Stores」を参照してください。

Windows 固有のセキュリティ機構

Windows ID

Kerberos で保護されたドメインの有効なメンバであるユーザーが、認証後にドメインの他のサービスを使用することが必要になる場合があります。これを行うには、ユーザーが自分のインターネット ID を Windows ID にマップできる必要があります。これについては、「An Introduction to the Windows 2000 Public-Key Infrastructure」を参照してください。

Web サービスのセキュリティ仕様

セキュリティで保護されたメッセージ交換

セキュリティで保護されたメッセージ交換では、クライアントとサービスとの間でセキュリティ コンテキストが確立されます。セキュリティ コンテキストでは、クライアントとサービスとの間で、長期間にわたってメッセージが安全にフローできます。セキュリティで保護されたメッセージ交換の各メッセージは、単にセキュリティで保護されているだけでなく、メッセージ交換 ID にも関連付けられており、この ID を使用して、メッセージを交換する双方がネゴシエーションの進行を追跡することができます。

セキュリティで保護されたメッセージ交換は、拡張された通信セッションを確立する必要がある場合に役に立ちます。

言い換えると、通信時にクライアントからサービスへのメッセージが複数件、必要である場合には、セキュリティで保護されたメッセージ交換を使用します。

Authenticode による証明書の作成

MakeCert.exe や他のツールを使用して一時的な証明書を作成する方法詳細については、 、「An Introduction to the Windows 2000 Public-Key Infrastructure」を参照してください。

承認マネージャ

承認マネージャは、ロール ベースのアクセス制御をアプリケーションに統合する柔軟なフレームワークを提供します。これらのアプリケーションを使用する管理者は、職務と関係するユーザー ロールの割り当てを介してアクセスを提供できます。承認マネージャ アプリケーションは、Active Directory または XML ファイルに格納される承認ストアの形式で承認ポリシーを保存し、実行時に承認ポリシーを適用します。

関連項目

概念

セキュリティの概要