WCF で使用されるセキュリティの概要
Windows Communication Foundation (WCF) のセキュリティは、各種のセキュリティ インフラストラクチャで既に使用され展開されている概念の上に構築されています。
WCF は、これらのインフラストラクチャの一部 (SSL (Secure Sockets Layer) over HTTP (HTTPS) など) をサポートしています。ただし、WCF では、新しい相互運用可能なセキュリティ標準 (WS-Security など) を SOAP エンコード メッセージに実装することで、既存のセキュリティ インフラストラクチャをサポートする以上の機能を実現しています。既存の機構と新規の相互運用可能な標準のどちらを使用する場合でも、背後にあるセキュリティ概念に変わりはありません。既存のインフラストラクチャおよび新しい標準を支える概念を理解することが、アプリケーションにとって最善のセキュリティ モデルを実装するための要になります。
WCF Web サービスのセキュリティの概要
Microsoft Patterns and Practices グループでは、WCF セキュリティ ガイダンスに関する詳細なホワイト ペーパーを作成しました (「WCF セキュリティ ガイド」からダウンロードできます)。このホワイト ペーパーでは、Web サービス、WCF セキュリティの主な概念、イントラネット アプリケーション シナリオ、およびインターネット アプリケーション シナリオに関連するセキュリティの基本概念について説明しています。
業界標準のセキュリティ仕様
公開キー基盤
公開キー基盤 (PKI: Public Key Infrastructure) は、デジタル証明書、証明機関、およびその他の登録機関で構成されるシステムです。PKI では、公開キー暗号化を使用して、電子取引に関与する各当事者の検証と認証を行います。詳細については、次のトピックを参照してください。、「Windows Server 2008 R2 証明書サービス」を参照してください。
Kerberos プロトコル
"Kerberos プロトコル" は、Windows ドメインでユーザーを認証するセキュリティ機構を作成するための仕様です。ユーザーはドメイン内の他のエンティティと、セキュリティで保護されたコンテキストを確立できます。Windows 2000 以降のプラットフォームでは、Kerberos プロトコルが既定で使用されます。システムの機構を理解することは、イントラネット クライアントと対話するサービスを作成する場合に役立ちます。また、Web Services Security Kerberos Binding が広く公開されているため、Kerberos プロトコルを使用してインターネット クライアントと通信できます (つまり、Kerberos プロトコルには相互運用性があります)。Kerberos プロトコルを Windows で実装する方法詳細情報、「Microsoft Kerberos」を参照してください。
X.509 証明書
X.509 証明書は、セキュリティ アプリケーションで使用される主要な資格情報の形式です。X.509 証明書の詳細については、「X.509 公開キー証明書」を参照してください。X.509 証明書は証明書ストア内に格納されます。Windows を実行しているコンピューターには、それぞれ目的が異なる数種類の証明書ストアがあります。各種ストア詳細情報、「証明書ストア」を参照してください。
Web サービスのセキュリティ仕様
システム定義のバインディングでは、一般に使用されるさまざまな Web サービスのセキュリティ仕様をサポートしています。システム定義のバインディングとサポートされる Web サービスの仕様の全一覧については、「システム標準の相互運用性バインディングがサポートしている Web サービス プロトコル」を参照してください。
アクセス制御機構
WCF には、サービスや操作へのアクセスを制御するさまざまな方法が用意されています。次に例を示します。
PrinciplePermissionAttribute
ASP.NET メンバーシップ プロバイダー
ASP.NET ロール プロバイダー
承認マネージャー
ID モデル
各項目の詳細については、「アクセス制御機構」を参照してください。