<certificate> de <clientCertificate> (elemento)
Especifica un certificado X.509 usado para firmar y cifrar mensajes.
Jerarquía del esquema
<<system.serviceModel>>
<comportamientos>
<serviceBehaviors>
Elemento <behavior> de <serviceBehaviors>
<serviceCredentials>
<clientCertificate> de <serviceCredentials>
<certificate> de <clientCertificate> (elemento)
Sintaxis
<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"
/>
Atributos y elementos
En las siguientes secciones se describen atributos, elementos secundarios y elementos primarios
Atributos
Atributo | Descripción |
---|---|
findValue |
Una cadena que contiene el valor que se va a buscar en el almacén de certificados X.509. El tipo contenido en el atributo debe satisfacer los requisitos del X509FindType especificado. El valor predeterminado es una cadena vacía. |
storeLocation |
Especifica la ubicación del almacén de certificados X.509 que el cliente usa para validar el certificado del servidor. Los valores válidos son los siguientes:
El valor predeterminado es LocalMachine. |
storeName |
Especifica el nombre del almacén de certificados X.509 que se va a abrir. Los valores válidos son los siguientes:
El valor predeterminado es My. |
X509FindType |
Define el tipo de búsqueda de X.509 que se va a ejecutar. Los valores válidos son los siguientes:
El tipo contenido en el atributo findValue debe satisfacer los requisitos del X509FindType especificado. El valor predeterminado es FindBySubjectDistinguishedName. |
Elementos secundarios
Ninguno.
Elementos primarios
Elemento | Descripción |
---|---|
Notas
El elemento <certificate> se usa cuando el servicio debe tener el certificado del cliente por anticipado para comunicarse de manera segura con el cliente. Esto se produce al utilizar el patrón de comunicación dúplex. En el patrón de solicitud/respuesta más típico, el cliente incluye su certificado en la solicitud, que utiliza el servicio para cifrar i firmar su respuesta de vuelta hasta el cliente. Sin embargo, en el modelo de comunicación dúplex, el servicio no tiene una solicitud del cliente y por consiguiente necesita que el certificado del cliente proteja de antemano el mensaje al cliente. Por tanto, debe obtener el certificado del cliente en una negociación fuera de banda y especificar el certificado usando este elemento. Para obtener más información sobre los servicios dúplex, vea How to: Create a Duplex Contract.
Ejemplo
El código siguiente especifica cómo buscar un certificado X.509 adecuado y un tipo de validación personalizado en el elemento <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>
Vea también
Referencia
Certificate
Certificate
X509ClientCertificateCredentialsElement
Otros recursos
Security Behaviors in WCF
How To: Create a Service Employing a Custom Certificate Validator
Working with Certificates