<certificate> des <clientCertificate>-Elements
Gibt ein X.509-Zertifikat an, das verwendet wird, um Nachrichten zu signieren und zu verschlüsseln.
Schemahierarchie
<<system.serviceModel>>
<behaviors>
<serviceBehaviors>
<behavior> von <serviceBehaviors>
<serviceCredentials>
<clientCertificate> von <serviceCredentials>
<certificate> des <clientCertificate>-Elements
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
Attribut | Beschreibung |
---|---|
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 in X509FindType erfüllen. Der Standardwert ist eine leere Zeichenfolge. |
storeLocation |
Gibt den Speicherort des X.509-Zertifikatspeichers an, den der Client zum Prüfen des Serverzertifikats verwendet. Folgende Werte sind gültig:
Der Standardwert ist LocalMachine. |
storeName |
Gibt den Namen des X.509-Zertifikatspeichers an, der geöffnet werden soll. Folgende Werte sind gültig:
Der Standardwert ist My. |
X509FindType |
Definiert den Typ der X.509-Suche, die ausgeführt werden soll. Folgende Werte sind gültig:
Der im findValue-Attribut enthaltene Typ muss die Anforderungen in X509FindType erfüllen. Der Standardwert ist FindBySubjectDistinguishedName. |
Untergeordnete Elemente
None.
Übergeordnete Elemente
Element | Beschreibung |
---|---|
Hinweise
Das <certificate>-Element wird verwendet, wenn dem Dienst das Zertifikat des Clients im Voraus bekannt sein muss, damit eine sichere Kommunikation mit dem Client stattfinden kann. Dies ist bei der Duplexkommunikation der Fall. Bei der üblicheren Kommunikation mit Anforderung und Antwort fügt der Client das Zertifikat in die Anforderung ein, das dann wiederum vom Dienst zum Verschlüsseln und Signieren seiner Antwort an den Client verwendet wird. Bei der Duplexkommunikation verfügt der Dienst jedoch nicht über eine Anforderung vom Client und benötigt deshalb das Clientzertifikat im Voraus, um die Nachricht an den Client zu sichern. Sie müssen deshalb das Zertifikat des Clients in einer Out-of-Band-Aushandlung beziehen und das Zertifikat mit diesem Element angeben. Weitere Informationen über Duplexdienste finden Sie unter How to: Create a Duplex Contract.)
Beispiel
Der folgende Code gibt an, wie Sie ein geeignetes X.509-Zertifikat und einen benutzerdefinierten Validierungstyp im <authentication>-Element suchen.
<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
Verweis
Certificate
Certificate
X509ClientCertificateCredentialsElement
Weitere Ressourcen
Security Behaviors in WCF
How To: Create a Service Employing a Custom Certificate Validator
Working with Certificates