Partager via


<certificate>, élément de <clientCertificate>

Spécifie un certificat X.509 utilisé pour signer et chiffrer des messages.

<system.serviceModel>
  <behaviors>
    <serviceBehaviors>
      <behavior> de <serviceBehaviors>
        <serviceCredentials>
          <clientCertificate> de <serviceCredentials>
            <certificate>, élément de <clientCertificate>

<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

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.
  • CertificateAuthority : 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 (CA) 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

Aucun.

Éléments parents

Élément Description

<clientCertificate> de <serviceCredentials>

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. Ceci 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 qui est utilisée par le service 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 afin de 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 How to: Create a Duplex Contract.

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>

Voir aussi

Référence

Certificate
Certificate
X509ClientCertificateCredentialsElement

Autres ressources

Security Behaviors in WCF
How To: Create a Service Employing a Custom Certificate Validator
Working with Certificates