共用方式為


<clientCertificate> 元素的 <certificate>

指定用來簽署與加密訊息的 X.509 憑證。

<configuration>
  <system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <serviceCredentials>
            <clientCertificate>
              <certificate>

Syntax

<certificate findValue="String"
             storeLocation = "CurrentUser/LocalMachine"
             storeName="AddressBook/AuthRoot/CertificateAuthority/Disallowed/My/Root/TrustedPeople/TrustedPublisher"
             X509FindType="FindByThumbPrint/FindBySubjectName/FindBySubjectDistinguishedName/FindByIssuerName/FindByIssuerDistinguishedName/FindBySerialNumber/FindByTimeValid/FindByTimeNotYetValid/FindByTemplateName/FindByApplicationPolicy/FindByCertificatePolicy/FindByExtension/FindByKeyUsage/FindBySubjectKeyIdentifier" />

屬性和項目

下列各節說明屬性、子元素和父元素

屬性

屬性 描述
findValue 字串,其中包含要在 X.509 憑證存放區內搜尋的值。 屬性所包含的型別必須滿足指定之 X509FindType 的需求。 預設為空字串。
storeLocation 指定 X.509 憑證存放區的位置,用戶端會使用該憑證存放區來驗證伺服器的憑證。 有效值如下:

- LocalMachine:指派給本機電腦的憑證存放區。
- CurrentUser:指派給目前使用者的憑證存放區。

預設為 LocalMachine。
storeName 指定要開啟之 X.509 憑證存放區的名稱。 有效值如下:

- AddressBook:其他使用者的憑證存放區。
- AuthRoot:協力廠商憑證授權單位 (CA) 的憑證存放區。
- CertificationAuthority:中繼憑證授權單位 (CA) 的憑證存放區。
- Disallowed:已撤銷憑證的憑證存放區。
- My:個人憑證的憑證存放區。
- Root:可信根憑證授權單位 (CA) 的憑證存放區。
- TrustedPeople:直接信任人員和資源的憑證存放區。
- TrustedPublisher:直接信任發行者的憑證存放區。

預設為 My。
X509FindType 定義要執行之 X.509 搜尋的類型。 有效值如下:

- FindByThumbPrint
- FindBySubjectName
- FindBySubjectDistinguishedName
- FindByIssuerName
- FindByIssuerDistinguishedName
- FindBySerialNumber
- FindByTimeValid
- FindByTimeNotYetValid
- FindByTemplateName
- FindByApplicationPolicy
- FindByCertificatePolicy
- FindByExtension
- FindByKeyUsage
- FindBySubjectKeyIdentifier

findValue 屬性所包含的型別必須滿足指定之 X509FindType 的需求。

預設值為 FindBySubjectDistinguishedName。

子元素

無。

父項目

元素 描述
<clientCertificate>

備註

當服務必須具有用戶端的憑證,進而與用戶端安全地進行通訊時,則會使用 <certificate> 項目。 這種情況發生在使用雙工通訊模式時。 在較為典型的要求/回應模式中,用戶端會在要求中納入其憑證,服務便使用此憑證加密與簽署其對於用戶端的回應。 然而,在雙工通訊模式中,服務沒有來自用戶端的要求,因此需要用戶端的憑證,進而保護傳送到用戶端的訊息安全。 所以,您必須在超出範圍的交涉中取得用戶端的憑證,並使用此項目指定憑證。 如需雙面服務的詳細資訊,請參閱操作說明:建立雙面合約

範例

下列程式碼說明如何在 <authentication> 項目中尋找適當的 X.509 憑證和自訂驗證類型。

<serviceBehaviors>
  <behavior name="myServiceBehavior">
    <clientCertificate>
      <certificate findValue="www.cohowinery.com"
                   storeLocation="CurrentUser"
                   storeName="TrustedPeople"
                   x509FindType="FindByIssuerName" />
      <authentication customCertificateValidatorType="MyTypes.Coho"
                      certificateValidationMode="Custom"
                      revocationMode="Offline"
                      includeWindowsGroups="false"
                      mapClientCertificateToWindowsAccount="true" />
    </clientCertificate>
  </behavior>
</serviceBehaviors>

另請參閱