<authentication>, élément de <clientCertificate>
Spécifie des comportements d'authentification pour les certificats clients utilisés par un service.
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior> de <serviceBehaviors>
<serviceCredentials>
<clientCertificate> de <serviceCredentials>
<authentication>, élément de <clientCertificate>
<authentication
customCertificateValidatorType="namespace.typeName, [,AssemblyName] [,Version=version number] [,Culture=culture] [,PublicKeyToken=token]"
certificateValidationMode="ChainTrust/None/PeerTrust/PeerOrChainTrust/Custom"
includeWindowsGroups="Boolean"
mapClientCertificateToWindowsAccount="Boolean"
revocationMode="NoCheck/Online/Offline"
trustedStoreLocation="CurrentUser/LocalMachine"
/>
Attributs et éléments
Attributs
Attribut | Description |
---|---|
customCertificateValidatorType |
Chaîne facultative. Type et assembly utilisés pour valider un type personnalisé. Cet attribut doit être défini lorsque certificateValidationMode a la valeur Custom. |
certificateValidationMode |
Énumération facultative. Spécifie l'un de trois modes utilisés pour valider des informations d'identification. S'il est défini à Custom, un customCertificateValidator doit également être fourni. La valeur par défaut est ChainTrust. |
includeWindowsGroups |
Valeur booléenne facultative. Spécifie si des groupes Windows sont inclus dans le contexte de sécurité. L'affectation de la valeur true à cet attribut a un impact sur les performances du fait que cela provoque une expansion de groupe complète. Affectez la valeur false à cet attribut s'il n'est pas nécessaire d'établir la liste des groupes auxquels appartient un utilisateur. |
mapClientCertificateToWindowsAcccount |
Valeur booléenne. Spécifie si le client peut être mappé à une identité Windows à l'aide du certificat. Active Directory doit être activé pour cela. Pour plus d'informations sur l'utilisation de la fonctionnalité Active Directory, consultez http://technet2.microsoft.com/WindowsServer/en/Library/0602148e-1a8f-4917-bb01-6fd342aba7161033.mspx (page pouvant être en anglais). |
revocationMode |
Énumération facultative. L'un des modes utilisés pour vérifier des listes de certificat révoqués (RCL). La valeur par défaut est Online. |
trustedStoreLocation |
Énumération facultative. L'un des deux emplacements du magasin du système : LocalMachine ou CurrentUser. Cette valeur est utilisée lorsqu'un certificat de service est négocié au client. La validation est exécutée sur le magasin Personnes autorisées dans l'emplacement de magasin spécifié. La valeur par défaut est CurrentUser. |
Éléments enfants
Aucun.
Éléments parents
Élément | Description |
---|---|
Définit un certificat X.509 utilisé pour authentifier un client à un service. |
Notes
L'élément <authentication> correspond à la classe X509ClientCertificateAuthentication. Il vous permet de personnaliser la manière dont les clients sont authentifiés. Vous pouvez affecter None, ChainTrust, PeerOrChainTrust, PeerTrust ou Custom à l'attribut certificateValidationMode. Par défaut, le niveau a la valeur ChainTrust, laquelle spécifie que chaque certificat doit se trouver dans une hiérarchie de certificats se terminant dans une autorité racine au sommet de la chaîne. C'est le mode le plus sécurisé. Vous pouvez également affecter la valeur PeerOrChainTrust, laquelle spécifie que les certificats auto-émis (approbation homologue) sont acceptés, de même que les certificats qui se trouvent dans une chaîne approuvée. Cette valeur est utilisée lors du développement et du débogage des clients et des services car il n'est pas nécessaire d'acheter les certificats auto-émis auprès d'une autorité approuvée. Lorsque vous déployez un client, utilisez à la place la valeur ChainTrust.
Vous pouvez également utiliser Custom. Lorsque vous utilisez Custom, vous devez également affecter l'assembly et le type utilisés pour valider le certificat à l'attribut customCertificateValidatorType. Pour créer votre propre validateur personnalisé, vous devez hériter de la classe X509CertificateValidator abstraite. Pour plus d'informations, consultez How To: Create a Service Employing a Custom Certificate Validator.
Exemple
Le code suivant spécifie un certificat X.509 et 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
X509ClientCertificateAuthentication
X509CertificateValidationMode
Authentication
Authentication
X509ClientCertificateAuthenticationElement
Autres ressources
Security Behaviors in WCF
How To: Create a Service Employing a Custom Certificate Validator
Working with Certificates