次の方法で共有


WSDL とポリシー

このトピックでは、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 の外部では使用しないでください。

こちらも参照ください