<wsHttpBinding> 的<訊息>
定義 <wsHttpBinding> 的訊息層級安全性設定。
<configuration>
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding>
<security>
<message>
Syntax
<message algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15"
clientCredentialType="Certificate/IssuedToken/None/UserName/Windows"
establishSecurityContext="Boolean"
negotiateServiceCredential="Boolean" />
類型
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 | 使用 Basic128 加密,Sha1 用於訊息摘要,Rsa-oaep-mgf1p 用於金鑰包裝。 |
Basic192 | 使用 Basic192 加密,Sha1 用於訊息摘要,Rsa-oaep-mgf1p 用於金鑰包裝。 |
Basic256 | 使用 Basic256 加密,Sha1 用於訊息摘要,Rsa-oaep-mgf1p 用於金鑰包裝。 |
Basic256Rsa15 | 將 Basic256 用於訊息加密,Sha1 用於訊息摘要,Rsa15 用於金鑰包裝。 |
Basic192Rsa15 | 將 Basic192 用於訊息加密,Sha1 用於訊息摘要,Rsa15 用於金鑰包裝。 |
TripleDes | 使用 TripleDes 加密,Sha1 用於訊息摘要,Rsa-oaep-mgf1p 用於金鑰包裝。 |
Basic128Rsa15 | 將 Basic128 用於訊息加密,Sha1 用於訊息摘要,Rsa15 用於金鑰包裝。 |
TripleDesRsa15 | 使用 TripleDes 加密,Sha1 用於訊息摘要,Rsa15 用於金鑰包裝。 |
Basic128Sha256 | 將 Basic256 用於訊息加密,Sha256 用於訊息摘要,Rsa-oaep-mgf1p 用於金鑰包裝。 |
Basic192Sha256 | 將 Basic192 用於訊息加密,Sha256 用於訊息摘要,Rsa-oaep-mgf1p 用於金鑰包裝。 |
Basic256Sha256 | 將 Basic256 用於訊息加密,Sha256 用於訊息摘要,Rsa-oaep-mgf1p 用於金鑰包裝。 |
TripleDesSha256 | 將 TripleDes 用於訊息加密,Sha256 用於訊息摘要,Rsa-oaep-mgf1p 用於金鑰包裝。 |
Basic128Sha256Rsa15 | 將 Basic128 用於訊息加密,Sha256 用於訊息摘要,Rsa15 用於金鑰包裝。 |
Basic192Sha256Rsa15 | 將 Basic192 用於訊息加密,Sha256 用於訊息摘要,Rsa15 用於金鑰包裝。 |
Basic256Sha256Rsa15 | 將 Basic256 用於訊息加密,Sha256 用於訊息摘要,Rsa15 用於金鑰包裝。 |
TripleDesSha256Rsa15 | 將 TripleDes 用於訊息加密,Sha256 用於訊息摘要,Rsa15 用於金鑰包裝。 |
clientCredentialType 屬性
值 | 描述 |
---|---|
無 | 這會允許服務與匿名用戶端互動。 在服務端上,這表示此服務不需要任何用戶端認證。 在用戶端上,這表示此用戶端不提供任何用戶端認證。 |
憑證 | 允許服務要求用戶端使用憑證進行驗證。 如果使用訊息安全性模式且 negotiateServiceCredential 屬性設定為 false ,則必須為用戶端提供服務憑證。 |
IssuedToken | 指定通常由安全性權杖服務所發出的自訂權杖。 |
使用者名稱 | 允許服務要求用戶端必須使用 UserName 認證進行驗證。 WCF 不支援使用密碼傳送密碼摘要或衍生金鑰,也不支援使用這類金鑰維持訊息安全。 如此一來,WCF 就能在使用 UserName 認證時,強制保護傳輸。 這個認證模式會產生可互通交換或是無法互通的交涉 (根據 negotiateServiceCredential 屬性)。 |
Windows | 允許 SOAP 交換在 Windows 認證的已驗證內容中。 如果 negotiateServiceCredential 屬性設定為 true ,這會執行 SSPI 交涉或 Kerberos (互通標準)。 |
子元素
無
父項目
元素 | 描述 |
---|---|
<security> | 定義 <wsHttpBinding> 的安全性設定。 |