で始まる
拡張保護は、SSL などの外部のセキュリティで保護されたチャネルを、Kerberos-APREQ や HTTP ヘッダー認証などの内部チャネル認証プロトコルにバインドするメカニズムです。
拡張保護の概念は、RFC2743で定義されています。
拡張保護 (使用可能な場合) は、クライアントで自動的に構成されますが、既定以外のシナリオではサーバーでの構成が必要になる場合があります。
サポートされる構成
拡張保護は、WS_HTTP_HEADER_AUTH_SECURITY_BINDINGやWS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDINGなどの Windows 統合認証プロトコルを使用したセキュリティ バインディングでWS_HTTP_CHANNEL_BINDINGを使用する場合にサポートされます。 これは、次の セキュリティ プロパティを使用して構成されます。
- WS_SECURITY_PROPERTY_EXTENDED_PROTECTION_POLICY
- WS_SECURITY_PROPERTY_EXTENDED_PROTECTION_SCENARIO
- WS_SECURITY_PROPERTY_SERVICE_IDENTITIES
拡張保護に関連する次の構成が可能です。
クライアント
- WS_SSL_TRANSPORT_SECURITY_BINDING は、 WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING または WS_HTTP_HEADER_AUTH_SECURITY_BINDINGで使用されます。 この構成では、認証バインディングは、SSL 接続から自動的に抽出される拡張保護トークンを介して SSL 接続にバインドされます。
- SSL は使用されておらず、 WS_HTTP_HEADER_AUTH_SECURITY_BINDING が設定されています。 認証バインドは、 WS_ENDPOINT_ADDRESSから自動的に決定されるサーバー プリンシパル名 (SPN) を介してバインドされます。
[サーバー]
- WS_SSL_TRANSPORT_SECURITY_BINDING は、 WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING または WS_HTTP_HEADER_AUTH_SECURITY_BINDINGで使用されます。 この構成では、認証バインディングは、SSL 接続から抽出され、自動的に検証される拡張保護トークンを介して SSL 接続にバインドされます。
- SSL は使用されておらず、 WS_HTTP_HEADER_AUTH_SECURITY_BINDING が設定されています。 認証バインディングはサーバー プリンシパル名 (SPN) を介してバインドされます。これは、 WS_SECURITY_PROPERTY_SERVICE_IDENTITIES経由で指定する必要があります。 メッセージを受信すると、SPN が抽出され、指定されたサービス名と完全に一致することが検証されます。 SPN を提供しないのは、 WS_EXTENDED_PROTECTION_POLICY_NEVERの設定と同等です。
- SSL は使用されません。 WS_EXTENDED_PROTECTION_SCENARIO_BOUND_SERVER が指定され、 WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING が使用されます。 この構成では、 WS_SECURITY_PROPERTY_SERVICE_IDENTITIES を設定しないでください。 Kerberos プロトコルの一部として実行される以外の SPN チェックは実行されません。
- WS_EXTENDED_PROTECTION_SCENARIO_TERMINATED_SSL が指定され、 WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING または WS_HTTP_HEADER_AUTH_SECURITY_BINDING が使用されます。 WS_SECURITY_PROPERTY_SERVICE_IDENTITIES を設定する必要があります。
サポートされているプラットフォーム
拡張保護は、オペレーティング システムでサポートされているプラットフォームでサポートされています。 Windows 7 と Windows Server 2008 R2 には、組み込みのサポートが用意されています。 他のプラットフォームでは、更新プログラムが必要になる場合があります。
サーバーのオペレーティング システムがそのようなサポートを提供していない場合、クライアントから送信された拡張保護情報は無視されます。 その結果、拡張保護を使用しているクライアントは、このようなサーバーと通信できますが、セキュリティ上の利点は失われます。 クライアントでは、WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDINGWS_SSL_TRANSPORT_SECURITY_BINDINGと組み合わせて、Vista 以降の拡張保護のみをサポートします。
注: 拡張保護を使用できないと、特定の構成が使用できなくなります。
相互運用性
既定で構成されたサーバーは、拡張保護を使用しているかどうかに関係なく、SOAP クライアントと通信できます。 1 つの例外は、拡張保護をサポートし、 WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING と WS_SSL_TRANSPORT_SECURITY_BINDINGの両方を使用するように更新された Windows XP および Windows Server 2003 WWSAPI クライアントです。 このようなクライアントをサポートするには WS_EXTENDED_PROTECTION_POLICY_NEVER サーバーで指定する必要があります。 WS_EXTENDED_PROTECTION_POLICY_ALWAYSで構成されたサーバーは、拡張保護を使用しないクライアントからの通信を拒否します。 クライアントでは、WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDINGWS_SSL_TRANSPORT_SECURITY_BINDINGと組み合わせると、Vista 以降の HTTP チャンク転送エンコードを使用してメッセージが送信されます。 これにより、チャンク転送をサポートしていないサーバーとの相互運用の問題が発生する可能性があります。
次の列挙型/定数は、拡張保護の一部です。
次の構造は、拡張保護の一部です。