共用方式為


<certificate>元素的<clientCertificate>

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

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

語法

<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" />

屬性和項目

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

Attributes

Attribute Description
findValue 一個包含在 X.509 憑證儲存庫中搜尋的值的字串。 屬性中包含的類型必須符合指定 X509FindType 的要求。 預設值是空字串。
storeLocation 指定客戶端用來驗證伺服器憑證的 X.509 憑證儲存位置。 有效的數值包括以下幾項:

- LocalMachine:分配給本地機器的憑證儲存庫。
- CurrentUser:指派給目前使用者的憑證儲存庫。

預設是 LocalMachine。
storeName 指定要開啟的 X.509 憑證儲存名稱。 有效的數值包括以下幾項:

- 通訊錄:其他使用者的憑證儲存庫。
- AuthRoot:第三方認證機構(CA)的憑證儲存庫。
- 認證機構:中介認證機構(CA)的憑證儲存庫。
- 不允許:為被撤銷的憑證儲存。
- My:個人憑證的憑證儲存庫。
- 根憑證:用於受信任根憑證授權機構(CA)的憑證儲存。
- TrustedPeople:直接儲存可信人員與資源的憑證。
- TrustedPublisher:直接可信發佈者的憑證儲存庫。

預設是「我的」。
X509FindType 定義要執行的 X.509 搜尋類型。 有效的數值包括以下幾項:

- FindByThumbPrint
- 尋找主體名稱
- 尋找被主體傑出名稱
- 尋找發行人名稱
- FindByIssuerdistinguishedName
- FindBySerialNumber
- FindByTimeValid
- 尋找時間尚未有效
- 尋找範本名稱
- FindByApplicationPolicy
- FindByCertificatePolicy
- FindByExtension
- 尋找按鍵使用法
- FindBySubjectKeyIdentifier

屬性中包含的 findValue 類型必須符合指定 X509FindType 的要求。

預設值為 FindBySubjectDistinguishedName。

子專案

沒有。

父項目

元素 Description
<客戶憑證>

備註

當服務必須事先取得客戶端憑證,才能與客戶端安全通訊時,會 <certificate> 使用此元素。 這種情況發生在使用雙工通訊模式時。 在較典型的請求/回應模式中,客戶端會在請求中包含其憑證,服務利用此憑證加密並簽署回應給客戶端。 然而,在雙工通訊模式中,服務沒有客戶端的請求,因此需要事先取得客戶端的憑證來保護訊息給客戶端的安全。 因此,您必須透過帶外協商取得客戶的憑證,並利用此元素指定憑證。 如需雙工服務的詳細資訊,請參閱操作說明:建立雙面合約

Example

以下程式碼說明如何在元素中找到合適的 X.509 憑證及自訂驗證型別 <authentication>

<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>

另請參閱