規範點對點訊息發送者的認證選項。
欲了解更多點對點程式設計的資訊,請參閱點對點網路。
<configuration>
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior>
<clientCredentials>
<peer>
<messageSenderAuthentication>
語法
<messageSenderAuthentication customCertificateValidatorType= "namespace.typeName, [,AssemblyName] [,Version=version number] [,Culture=culture] [,PublicKeyToken=token]"
certificateValidationMode = "ChainTrust/None/PeerTrust/PeerOrChainTrust/Custom"
revocationMode="NoCheck/Online/Offline"
trustedStoreLocation="CurrentUser/LocalMachine" />
屬性和項目
下列各節說明屬性、子元素和父元素
Attributes
| Attribute | Description |
|---|---|
customCertificateValidatorType |
一個用來驗證自訂型別的型別與組件。 當 certificateValidationMode 被設定為 Custom時,必須設定此屬性。 |
certificateValidationMode |
指定三種驗證憑證的模式之一。 若設為 Custom,則必須提供 a customCertificateValidator 。 |
revocationMode |
其中一種用於檢查被撤銷憑證清單(CRL)的模式。 |
trustedStoreLocation |
兩個系統儲存位置之一: LocalMachine 或 CurrentUser。 此值用於與客戶協商服務憑證時。 驗證會在指定儲存地點對 受信任人員 儲存執行。 |
customCertificateValidatorType 屬性
| 價值觀 | Description |
|---|---|
| 繩子 | 選擇性。 指定型別名稱、組件及其他用於尋找型別的資料。 至少需要一個命名空間和型別名稱。 可選資訊包括:組合語言名稱、版本號、文化及公鑰標記。 |
certificateValidationMode 屬性
| 價值觀 | Description |
|---|---|
| 枚舉 | 選擇性。 以下值之一:None, PeerTrust, ChainTrust, PeerOrChainTrustCustom, , 。 預設值為 ChainTrust。 預設值為 ChainTrust。如需詳細資訊,請參閱使用憑證。 |
撤銷模式屬性
| 價值觀 | Description |
|---|---|
| 枚舉 | 以下其中一個值是: NoCheck, Online, Offline, 預設值為 Online。如需詳細資訊,請參閱使用憑證。 |
trustedStoreLocation 屬性
| 價值觀 | Description |
|---|---|
| 枚舉 | 以下其中一個值: LocalMachine 或 CurrentUser。 預設值為 CurrentUser。 如果客戶端應用程式是以系統帳號執行,那麼憑證通常會放在 LocalMachine。 如果客戶端應用程式是以使用者帳號執行,那麼憑證通常會在 CurrentUser。 預設值為 CurrentUser。 |
子專案
沒有。
父項目
| 元素 | Description |
|---|---|
| <貴族> | 指定用於驗證用戶端至對等服務的憑證。 |
備註
若選擇訊息認證,必須設定此元素。 對於輸出通道,每個訊息都以憑證<>所提供的憑證簽署。 所有訊息在交付應用程式前,都會使用該元素屬性指定的 customCertificateValidatorType 驗證器與訊息憑證進行檢查。 驗證者可以選擇接受或拒絕該憑證。
Example
以下程式碼將訊息發送者驗證模式設定為 PeerOrChainTrust。
<behaviors>
<endpointBehaviors>
<behavior name="MyEndpointBehavior">
<clientCredentials>
<peer>
<certificate findValue="www.contoso.com"
storeLocation="LocalMachine"
x509FindType="FindByIssuerName" />
<messageSenderAuthentication certificateValidationMode="PeerOrChainTrust" />
<messageSenderAuthentication certificateValidationMode="None" />
</peer>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>