Élément <certificate> de <clientCertificate>
Spécifie un certificat X.509 utilisé pour signer et chiffrer des messages.
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceCredentials>
<clientCertificate>
<certificate>
Syntaxe
<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" />
Attributs et éléments
Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.
Attributs
Attribut | Description |
---|---|
findValue |
Chaîne qui contient la valeur à rechercher dans le magasin de certificats X.509. Le type contenu dans l'attribut doit satisfaire les spécifications du X509FindType spécifié. La valeur par défaut est une chaîne vide. |
storeLocation |
Spécifie l'emplacement du magasin de certificats X.509 que le client utilise pour valider le certificat du serveur. Les valeurs valides sont les suivantes : - LocalMachine : magasin de certificats assigné à l’ordinateur local. - CurrentUser : magasin de certificats assigné à l’utilisateur actuel. La valeur par défaut est LocalMachine. |
storeName |
Spécifie le nom du magasin de certificats X.509 à ouvrir. Les valeurs valides sont les suivantes : - AddressBook : magasin de certificats pour d’autres utilisateurs. - AuthRoot : magasin de certificats pour les autorités de certification (CA) tierces. - CertificationAuthority : magasin de certificats pour les autorités de certification (CA) intermédiaires. - Disallowed : magasin de certificats pour les certificats révoqués. - My : magasin de certificats pour les certificats personnels. - Root : magasin de certificats pour les autorités de certification (AC) racines approuvées. - TrustedPeople : magasin de certificats pour les personnes et les ressources directement approuvées. - TrustedPublisher : magasin de certificats pour les éditeurs directement approuvés. La valeur par défaut est My. |
X509FindType |
Définit le type de recherche X.509 à exécuter. Les valeurs valides sont les suivantes : - FindByThumbprint - FindBySubjectName - FindBySubjectDistinguishedName - FindByIssuerName - FindByIssuerDistinguishedName - FindBySerialNumber - FindByTimeValid - FindByTimeNotYetValid - FindByTemplateName - FindByApplicationPolicy - FindByCertificatePolicy - FindByExtension - FindByKeyUsage - FindBySubjectKeyIdentifier Le type contenu dans l'attribut findValue doit satisfaire les spécifications du X509FindType spécifié.La valeur par défaut est FindBySubjectDistinguishedName. |
Éléments enfants
Aucune.
Éléments parents
Élément | Description |
---|---|
<clientCertificate> |
Notes
L'élément <certificate>
est utilisé lorsque le service doit disposer du certificat du client à l'avance afin de communiquer de manière sécurisée avec le client. Cela se produit lors de l'utilisation du modèle de communication duplex. Dans le modèle demande-réponse classique, le client inclut son certificat dans la demande que le service utilise pour sécuriser à nouveau sa réponse au client. Dans le modèle de communication duplex, toutefois, le service ne dispose pas de demande du client et, par conséquent, requiert le certificat du client à l'avance pour sécuriser l'envoi du message au client. C'est pourquoi vous devez obtenir le certificat du client dans une négociation hors bande et l'indiquer à l'aide de cet élément. Pour plus d’informations sur les services duplex, consultez le Guide pratique pour créer un contrat duplex.
Exemple
Le code suivant indique comment rechercher un certificat X.509 approprié ainsi qu’un type de validation personnalisé dans l’élément <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>