Compartir a través de


<authentication> del <serviceCertificate> elemento

Especifica la configuración usada por el proxy de cliente para autenticar los certificados de servicio que se obtienen mediante la negociación SSL/TLS.

<configuration>
  <system.serviceModel>
    <behaviors>
      <endpointBehaviors>
        <behavior>
          <clientCredentials>
            <serviceCertificate>
              <authentication>

Syntax

<authentication customCertificateValidatorType="String"
                certificateValidationMode="None/PeerTrust/ChainTrust/PeerOrChainTrust/Custom"
                revocationMode="NoCheck/Online/Offline"
                trustedStoreLocation="LocalMachine/CurrentUser" />

Atributos y elementos

En las secciones siguientes se describen los atributos, los elementos secundarios y los elementos primarios.

Attributes

Atributo Description
customCertificateValidatorType Cuerda. Tipo y ensamblado usado para validar un tipo personalizado.
certificateValidationMode Especifica uno de los tres modos usados para validar las credenciales. Si se establece en Custom, también se debe proporcionar un customCertificateValidator. El valor predeterminado es ChainTrust.
revocationMode Uno de los modos usados para comprobar si hay listas de certificados revocadas (CRL). El valor predeterminado es Online.
trustedStoreLocation Una de las dos ubicaciones del almacén del sistema: LocalMachine o CurrentUser. Este valor se usa cuando se negocia un certificado de servicio al cliente. La validación se realiza en el almacén de personas de confianza en la ubicación de almacén especificada. El valor predeterminado es CurrentUser.

Atributo customCertificateValidator

Importancia Description
String Especifica el nombre de tipo y el ensamblado y otros datos usados para buscar el tipo.

atributo certificateValidationMode

Importancia Description
Enumeración Uno de los siguientes valores: None, PeerTrust, ChainTrust, PeerOrChainTrust, Custom.

Para obtener más información, vea Trabajar con certificados.

Atributo revocationMode

Importancia Description
Enumeración Uno de los siguientes valores: NoCheck, Online, Offline.

Para obtener más información, vea Trabajar con certificados.

Atributo trustedStoreLocation

Importancia Description
Enumeración Uno de los siguientes valores: LocalMachine o CurrentUser. El valor predeterminado es CurrentUser. Si la aplicación cliente se ejecuta en una cuenta del sistema, el certificado suele estar en LocalMachine. Si la aplicación cliente se ejecuta en una cuenta de usuario, el certificado suele estar en CurrentUser.

Elementos secundarios

Ninguno.

Elementos primarios

Elemento Description
<serviceCertificate> Especifica un certificado que se va a usar al autenticar un servicio en el cliente.

Observaciones

El certificateValidationMode atributo de este elemento de configuración especifica el nivel de confianza que se usa para autenticar certificados. De forma predeterminada, el nivel se establece ChainTrusten , que especifica que cada certificado debe encontrarse en una jerarquía de certificados que termina en una entidad de certificación de confianza en la parte superior de la cadena. Este es el modo más seguro. También puede establecer el valor en PeerOrChainTrust, que especifica que los certificados autoemitidos (confianza del mismo nivel) se aceptan, así como los certificados que están en una cadena de confianza. Se utiliza este valor cuando se desarrollan y depuran clientes y servicios porque los certificados autoemitidos no necesitan adquirirse desde una autoridad de confianza. Al implementar un cliente, utilice en su lugar el valor ChainTrust. También puede establecer el valor en Custom o None. Para usar el Custom valor, también debe establecer el customCertificateValidator atributo en un ensamblado y tipo usado para validar el certificado. Para crear su propio validador personalizado, debe heredar de la clase abstracta X509CertificateValidator. Para más información, consulte el artículo sobre cómo crear un servicio que emplee un validador de certificado personalizado.

El revocationMode atributo especifica cómo se comprueban los certificados para la revocación. El valor predeterminado es online que indica que los certificados se comprobarán automáticamente para la revocación. Para obtener más información, vea Trabajar con certificados.

Example

En el ejemplo siguiente se realiza dos tareas. En primer lugar, especifica un certificado de servicio para que el cliente lo use al comunicarse con puntos de conexión cuyo nombre de dominio se encuentra www.contoso.com a través del protocolo HTTP. En segundo lugar, especifica el modo de revocación y la ubicación de almacenamiento usadas durante la autenticación.

<serviceCertificate>
  <defaultCertificate findValue="www.contoso.com"
                      storeLocation="LocalMachine"
                      storeName="TrustedPeople"
                      x509FindType="FindByIssuerDistinguishedName" />
  <scopedCertificates>
     <add targetUri="http://www.contoso.com"
          findValue="www.contoso.com"
          storeLocation="LocalMachine"
          storeName="Root"
          x509FindType="FindByIssuerName" />
  </scopedCertificates>
  <authentication revocationMode="Online"
                  trustedStoreLocation="LocalMachine" />
</serviceCertificate>

Consulte también