Freigeben über


<certificate> des <clientCertificate>-Elements

Gibt ein X.509-Zertifikat an, das zum Signieren und Verschlüsseln von Nachrichten verwendet wird.

<Konfiguration>
   <system.serviceModel>
     <verhaltensweisen>
       <serviceBehaviors>
         <Benehmen>
           <Servicecredentials>
             <clientCertificate>
               <Zertifikat>

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

Attribute und Elemente

In den folgenden Abschnitten werden Attribute, untergeordnete Elemente und übergeordnete Elemente beschrieben.

Attribute

Merkmal Description
findValue Eine Zeichenfolge, die den Wert enthält, nach dem im X.509-Zertifikatspeicher gesucht werden soll. Der im Attribut enthaltene Typ muss die Anforderungen des angegebenen X509FindType erfüllen. Der Standardwert ist eine leere Zeichenfolge.
storeLocation Gibt den Speicherort des X.509-Zertifikatspeichers an, mit dem der Client das Zertifikat des Servers überprüft. Gültige Werte umfassen Folgendes:

- LocalMachine: der dem lokalen Computer zugewiesene Zertifikatspeicher.
- CurrentUser: der dem aktuellen Benutzer zugewiesene Zertifikatspeicher.

Der Standardwert ist LocalMachine.
storeName Gibt den Namen des zu öffnenden X.509-Zertifikatspeichers an. Gültige Werte umfassen Folgendes:

- AddressBook: Zertifikatspeicher für andere Benutzer.
- AuthRoot: Zertifikatspeicher für Zertifizierungsstellen von Drittanbietern (CAs).
- Zertifizierungsautorität: Zertifikatspeicher für Zwischenzertifizierungsstellen (CAs).
- Unzulässig: Zertifikatspeicher für widerrufene Zertifikate.
- My: Zertifikatspeicher für persönliche Zertifikate.
- Stamm: Zertifikatspeicher für vertrauenswürdige Stammzertifizierungsstellen (CAs).
- TrustedPeople: Zertifikatspeicher für direkt vertrauenswürdige Personen und Ressourcen.
- TrustedPublisher: Zertifikatspeicher für direkt vertrauenswürdige Herausgeber.

Der Standardwert ist "Mein".
X509FindType Definiert den Typ der X.509-Suche, die ausgeführt werden soll. Gültige Werte umfassen Folgendes:

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

Der im findValue Attribut enthaltene Typ muss die Anforderungen des angegebenen X509FindType erfüllen.

Der Standardwert ist FindBySubjectDistinguishedName.

Untergeordnete Elemente

Keiner.

Übergeordnete Elemente

Element Description
<Client-Zertifikat>

Bemerkungen

Das <certificate> Element wird verwendet, wenn der Dienst vorab über das Zertifikat des Clients verfügen muss, um sicher mit dem Client zu kommunizieren. Dies ist bei der Duplexkommunikation der Fall. Im typischeren Anforderungs-/Antwortmuster enthält der Client sein Zertifikat in der Anforderung, das der Dienst zum Verschlüsseln und Signieren seiner Antwort an den Client verwendet. Im Duplexkommunikationsmuster verfügt der Dienst jedoch nicht über eine Anforderung vom Client und benötigt daher das Zertifikat des Clients im Voraus, um die Nachricht an den Client zu sichern. Daher müssen Sie das Zertifikat des Clients in einer Out-of-Band-Aushandlung abrufen und das Zertifikat mithilfe dieses Elements angeben. Weitere Informationen zu Duplexdiensten finden Sie unter Gewusst wie: Erstellen eines Duplexvertrags.

Example

Der folgende Code gibt an, wie sie ein geeignetes X.509-Zertifikat und einen benutzerdefinierten Überprüfungstyp im <authentication> Element finden.

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

Siehe auch