このトピックでは、Windows Communication Foundation (WCF) WSDL 1.1、WS-Policy および WS-PolicyAttachment 実装の詳細、および WCF によって導入された追加の WS-Policy アサーションと WSDL 1.1 拡張機能について説明します。
WCF では、W3C に送信される WS-Policy と WS-PolicyAttachment の仕様を、このドキュメントで説明する制約と説明と共に実装します。
このドキュメントでは、次の表に示すプレフィックスと名前空間を使用します。
接頭辞 | Namespace |
---|---|
wsp (WS-Policy 1.2) | http://schemas.xmlsoap.org/ws/2004/09/policy |
wsp (WS-Policy 1.5) | http://www.w3.org/ns/ws-policy |
http | http://schemas.microsoft.com/ws/06/2004/policy/http |
msmq | http://schemas.microsoft.com/ws/06/2004/mspolicy/msmq |
msf | http://schemas.microsoft.com/ws/2006/05/framing/policy |
mssp | http://schemas.microsoft.com/ws/2005/07/securitypolicy |
msc | http://schemas.microsoft.com/ws/2005/12/wsdl/contract |
cdp | http://schemas.microsoft.com/net/2006/06/duplex |
WCF WSDL1.1 拡張機能
WCF では、次の WSDL1.1 拡張機能を使用して、コントラクト セッションの要件について説明します。
wsdl:portType/wsdl:operation/@msc:isInitiating
xs:boolean は、この操作が WCF セッションを開始したことを示します。既定値は false
です。
wsdl:portType/wsdl:operation/@msc:isTerminating
xs:boolean は、この操作が WCF セッションを終了したことを示します。既定値は false
です。
wsdl:portType/wsdl:operation/@msc:usingSession
xs:boolean は、このコントラクトでセッションを確立する必要があることを示します。
SOAP 1.x HTTP バインディング トランスポートの URI
WCF では、次の URI を使用して、WSDL 1.1、SOAP 1.1、および SOAP 1.2 バインド拡張要素に使用されるトランスポートを示します。
トランスポート | URI(統一リソース識別子) |
---|---|
HTTP | http://schemas.xmlsoap.org/soap/http |
TCP | http://schemas.microsoft.com/soap/tcp |
MSMQ (マイクロソフト メッセージキュー) | http://schemas.microsoft.com/soap/msmq |
名前付きパイプ | http://schemas.microsoft.com/soap/named-pipe |
WCF で実装されるポリシー アサーション
WCF では、Web サービス仕様 (WS-*) で導入され、このドキュメントの他のセクションで説明されているポリシー アサーションに加えて、次のポリシー アサーションが実装されています。
ポリシーの宣言 | ポリシーの件名 | 説明 |
---|---|---|
http:HttpBasicAuthentication | エンドポイント | エンドポイントは HTTP 基本認証を使用します。 |
http:HttpDigestAuthentication | エンドポイント | エンドポイントは HTTP ダイジェスト認証を使用します。 |
http:HttpNegotiateAuthentication | エンドポイント | エンドポイントは HTTP ネゴシエート認証を使用します。 |
http:HttpNtlmAuthentication | エンドポイント | エンドポイントは HTTP NTLM 認証を使用します。 |
msf:ストリームする | エンドポイント | エンドポイントは、ストリーミング メッセージ フレームを使用します。 このアサーションは、TCP や名前付きパイプなどのトランスポートに提供されるメッセージ フレーム プロトコルと共に使用されます。 |
msf:SslTransportSecurity | エンドポイント | エンドポイントは、メッセージ フレームを使用してトランスポート層セキュリティ (TLS) を使用します。 |
msf:WindowsTransportSecurity | エンドポイント | エンドポイントは、メッセージ フレームでセキュリティ プロバイダー ネゴシエーション (SPNEGO) を使用します。 |
msmq:MsmqBestEffort | エンドポイント | MSMQ はベストエフォート保証を使用します。 |
msmq:MsmqSession | エンドポイント | セッション保証付き MSMQ。 |
msmq:MsmqVolatile | エンドポイント | MSMQ Volatile。 |
msmq:認証済み | エンドポイント | 認証は MSMQ トランスポートで使用されます。 |
msmq:WindowsDomain | エンドポイント | MSMQ では、Windows ドメイン認証が使用されます。 |
cdp:コンポジットデュープレックス | エンドポイント | エンドポイントは、受信メッセージと出力メッセージに対して 2 つの独立した逆トランスポート接続を使用します。 |
mssp:RsaToken | 入れ子 | RSA キー トークン アサーション。 通常、この要件は、保証署名のキー情報の一部として直接シリアル化された RSA キーによって満たされます。 |
mssp:SslContextToken | 入れ子 | WS-Trust を使用してバイナリ TLS ハンドシェイクを使用して取得した SecurityContextToken を使用する必要があります。 入れ子になったアサーションには、sp:RequireDerivedKeys、mssp:MustNotSendCancel、mssp:RequireClientCertificate などがあります。 |
mssp:MustNotSendCancel | 入れ子 | Cancel バインディング [WS-Trust, WS-SC] を使用して要求セキュリティ トークン (RST) 要求メッセージ [WS-Trust] を特定の SecurityContextToken の発行者に送信しないという要件を指定します。 このアサーションが存在する場合は、そのような要求メッセージを発行者に送信しないでください。 このアサーションが存在しない場合は、そのような要求メッセージを発行者に送信できます。 |
mssp:RequireClientCertificate | 入れ子 | この省略可能な要素は、TLSNEGO プロトコルの一部として提供されるクライアント証明書の要件を指定します。 このアサーションが存在する場合、クライアント証明書を提供する必要があります。 このアサーションが存在しない場合は、クライアント証明書を指定しないでください。 このアサーションは、mssp:SslContextToken の外部では使用しないでください。 |