<ws2007HttpBinding> の <message>
<ws2007HttpBinding> 要素のメッセージレベルのセキュリティ設定を定義します。
configuration
system.serviceModel
<bindings>
<ws2007HttpBinding>
<binding>
<security>
<message>
構文
<ws2007HttpBinding>
<binding>
<security>
<message clientCredentialType="None/Windows/UserName/Certificate/IssuedToken"
establishSecurityContext="Boolean"
negotiateServiceCredential="Boolean"
algorithmSuite="Enumeration. See algorithmSuite Attribute below."
defaultProtectionLevel="None/Sign/EncryptionAndSign" />
</security>
</binding>
</ws2007HttpBinding>
種類
NonDualMessageSecurityOverHttp
属性および要素
以降のセクションでは、属性、子要素、および親要素について説明します。
属性
属性 | 説明 |
---|---|
algorithmSuite |
メッセージの暗号化とキー ラップ アルゴリズムを設定します。 アルゴリズムとキー サイズは、SecurityAlgorithmSuite クラスにより決まります。 これらのアルゴリズムは、セキュリティ ポリシー言語 (WS-SecurityPolicy) 仕様で指定されたアルゴリズムにマップされます。 既定値は Basic256 です。 |
clientCredentialType |
任意。 セキュリティ モード Message または TransportWithMessageCredentials を使用してクライアント認証を実行するときに使用される資格情報の種類を指定します。 次の表の列挙値を参照してください。 既定は Windows です。この属性は MessageCredentialType 型です。 |
establishSecurityContext |
セキュリティで保護されたセッションをセキュリティ チャネルが確立するかどうかを示す値。 セキュリティで保護されたセッションは、セキュリティ コンテキスト トークン (SCT) を確立してからアプリケーション メッセージを交換します。 SCT が確立されると、セキュリティ チャネルは上位のチャネルに ISession インターフェイスを提供します。 セキュリティで保護されたセッションの詳細については、「方法 : セキュリティで保護されたセッションを作成する」を参照してください。 既定値は true です。 |
negotiateServiceCredential |
任意。 サービス資格情報がクライアントの帯域外で提供されるか、ネゴシエーションのプロセスによってサービスからクライアントに取得されるかを指定する値。 そのようなネゴシエーションは、通常のメッセージ交換の準備です。clientCredentialType 属性が None、Username、または Certificate の場合、この属性を false に設定すると、クライアントの帯域外でサービス証明書が使用可能になり、クライアントは <serviceCredentials> のサービス動作でサービス証明書 (<serviceCertificate> を使用) を指定する必要があります。 このモードは、WS-Trust および WS-SecureConversation が実装された SOAP スタックと同時に使用できます。ClientCredentialType 属性が Windows に設定されている場合、この属性を false に設定すると Kerberos ベースの認証が指定されます。 これは、クライアントおよびサービスが同じ Kerberos ドメインの一部でなければならないことを意味します。 このモードは、Kerberos トークン プロファイル (OASIS WSS TC で定義) に加えて WS-Trust および WS-SecureConversation が実装された SOAP スタックと同時使用できます。この属性が true の場合、SOAP メッセージを介して Spnego 交換をトンネル化する .NET SOAP ネゴシエーションが行われます。既定では、 true です。 |
algorithmSuite 属性
[値] | 説明 |
---|---|
Basic128 | Aes128 暗号化を使用し、メッセージ ダイジェストには Sha1 を、キー ラップには Rsa-oaep-mgf1p を使用します。 |
Basic192 | Aes192 暗号化を使用し、メッセージ ダイジェストには Sha1 を、キー ラップには Rsa-oaep-mgf1p を使用します。 |
Basic256 | Aes256 暗号化を使用し、メッセージ ダイジェストには Sha1 を、キー ラップには Rsa-oaep-mgf1p を使用します。 |
Basic256Rsa15 | メッセージの暗号化には Aes256 を使用し、メッセージ ダイジェストには Sha1 を、キー ラップには Rsa15 を使用します。 |
Basic192Rsa15 | メッセージの暗号化には Aes192 を使用し、メッセージ ダイジェストには Sha1 を、キー ラップには Rsa15 を使用します。 |
TripleDes | TripleDes 暗号化を使用し、メッセージ ダイジェストには Sha1 を、キー ラップには Rsa-oaep-mgf1p を使用します。 |
Basic128Rsa15 | メッセージの暗号化には Aes128 を使用し、メッセージ ダイジェストには Sha1 を、キー ラップには Rsa15 を使用します。 |
TripleDesRsa15 | TripleDes 暗号化を使用し、メッセージ ダイジェストには Sha1 を、キー ラップには Rsa15 を使用します。 |
Basic128Sha256 | メッセージの暗号化には Aes256 を使用し、メッセージ ダイジェストには Sha256 を、キー ラップには Rsa-oaep-mgf1p を使用します。 |
Basic192Sha256 | メッセージの暗号化には Aes192 を使用し、メッセージ ダイジェストには Sha256 を、キー ラップには Rsa-oaep-mgf1p を使用します。 |
Basic256Sha256 | メッセージの暗号化には Aes256 を使用し、メッセージ ダイジェストには Sha256 を、キー ラップには Rsa-oaep-mgf1p を使用します。 |
TripleDesSha256 | メッセージの暗号化には TripleDes を使用し、メッセージ ダイジェストには Sha256 を、キー ラップには Rsa-oaep-mgf1p を使用します。 |
Basic128Sha256Rsa15 | メッセージの暗号化には Aes128 を使用し、メッセージ ダイジェストには Sha256 を、キー ラップには Rsa15 を使用します。 |
Basic192Sha256Rsa15 | メッセージの暗号化には Aes192 を使用し、メッセージ ダイジェストには Sha256 を、キー ラップには Rsa15 を使用します。 |
Basic256Sha256Rsa15 | メッセージの暗号化には Aes256 を使用し、メッセージ ダイジェストには Sha256 を、キー ラップには Rsa15 を使用します。 |
TripleDesSha256Rsa15 | メッセージの暗号化には TripleDes を使用し、メッセージ ダイジェストには Sha256 を、キー ラップには Rsa15 を使用します。 |
clientCredentialType 属性
[値] | 説明 |
---|---|
None |
サービスが匿名クライアントと対話できるようになります。 サービス側では、サービスがクライアントの資格情報を必要としないことを示しています。 クライアント側では、クライアントがクライアントの資格情報を提示しないことを示しています。 |
Certificate |
証明書を使用したクライアントの認証を、サービスで要求することが可能になります。 message セキュリティ モードが使用されており、negotiateServiceCredential 属性が false に設定されている場合、クライアントをサービス証明書で準備する必要があります。 |
IssuedToken |
通常はセキュリティ トークン サービス (STS) により発行されるカスタム トークンを指定します。 |
UserName |
UserName 資格情報を使用したクライアントの認証を、サービスで要求することが可能になります。 WCF では、パスワード ダイジェストの送信や、パスワードを使用したキーの派生およびこうしたキーの使用がサポートされません。これはメッセージのセキュリティを確保するためです。 そのため、WCF では UserName 資格情報を使用する場合は、トランスポートが強制的にセキュリティで保護されます。 この資格情報モードは、negotiateServiceCredential 属性に基づいて、同時実行可能な交換か、同時実行できないネゴシエーションのいずれかになります。 |
Windows |
SOAP 交換を、Windows 資格情報の認証されたコンテキストで行うことが可能になります。 negotiateServiceCredential 属性が true に設定されている場合、SSPI ネゴシエーションと Kerberos (同時使用可能な標準) のいずれかが実行されます。 |
子要素
なし
親要素
要素 | 説明 |
---|---|
<security> | <ws2007HttpBinding> のセキュリティ設定を定義します。 |
関連項目
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET