<certificate> des <clientCertificate>-Elements
Gibt ein X.509-Zertifikat an, das verwendet wird, um Nachrichten zu signieren und zu verschlüsseln.
<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" />
Attribute und Elemente
In den folgenden Abschnitten werden Attribute, untergeordnete Elemente sowie übergeordnete Elemente beschrieben.
Attribute
attribute | BESCHREIBUNG |
---|---|
findValue |
Eine Zeichenfolge, die den Wert angibt, 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. Gültige Werte sind: – LocalMachine: Der dem lokalen Computer zugewiesene Zertifikatspeicher. – CurrentUser: Der dem aktuellen Benutzer zugewiesene Zertifikatspeicher. Der Standardwert ist LocalMachine. |
storeName |
Gibt den Namen des X.509-Zertifikatsspeichers an, der geöffnet werden soll. Gültige Werte sind: – AddressBook: Zertifikatspeicher für andere Benutzer. – AuthRoot: Der Zertifikatspeicher für Zertifizierungsstellen von Drittanbietern. – CertificationAuthority: Der Zertifikatspeicher für Zwischenzertifizierungsstellen. – Disallowed: Der Zertifikatspeicher für gesperrte Zertifikate. – My: Der Zertifikatspeicher für persönliche Zertifikate. – Root: Der Zertifikatspeicher für vertrauenswürdige Stammzertifizierungsstellen. – TrustedPeople: Der Zertifikatspeicher für direkt vertrauenswürdige Personen und Ressourcen. – TrustedPublisher: Der Zertifikatspeicher für direkt vertrauenswürdige Herausgeber. Der Standardwert ist My. |
X509FindType |
Definiert den Typ der X.509-Suche, die ausgeführt werden soll. Gültige Werte sind: – FindByThumbPrint – FindBySubjectName – FindBySubjectDistinguishedName – FindByIssuerName – FindByIssuerDistinguishedName – FindBySerialNumber – FindByTimeValid – FindByTimeNotYetValid – FindByTemplateName – FindByApplicationPolicy – FindByCertificatePolicy – FindByExtension – FindByKeyUsage – FindBySubjectKeyIdentifier Der im findValue -Attribut enthaltene Typ muss die Anforderungen in X509FindType erfüllen.Der Standardwert ist FindBySubjectDistinguishedName. |
Untergeordnete Elemente
Keine
Übergeordnete Elemente
Element | BESCHREIBUNG |
---|---|
<clientCertificate> |
Bemerkungen
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 zu Duplexdiensten finden Sie unter Gewusst wie: Erstellen eines Duplexvertrags.
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>