Partilhar via


<certificado> do <elemento clientCertificate>

Especifica um certificado X.509 usado para assinar e encriptar mensagens.

<configuração>
   <system.serviceModel>
     <comportamentos>
       <ServiceBehaviors>
         <comportamento>
           <serviceCredenciais>
             <Certificado do cliente>
               <Certificado>

Sintaxe

<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 e Elementos

As seções a seguir descrevem atributos, elementos filho e elementos pai

Attributes

Attribute Description
findValue Uma cadeia que contém o valor a procurar na loja de certificados X.509. O tipo contido no atributo deve satisfazer os requisitos do X509FindType especificado. O padrão é uma cadeia de caracteres vazia.
storeLocation Especifica a localização do armazenamento de certificados X.509 que o cliente utiliza para validar o certificado do servidor. Os valores válidos incluem os seguintes:

- LocalMachine: o armazenamento de certificados atribuído à máquina local.
- CurrentUser: o armazenamento de certificados atribuído ao utilizador atual.

O padrão é o LocalMachine.
storeName Especifica o nome da loja de certificados X.509 a abrir. Os valores válidos incluem os seguintes:

- AddressBook: Armazenamento de certificados para outros utilizadores.
- AuthRoot: Armazenamento de certificados para autoridades de certificação (CAs) de terceiros.
- Autoridade de Certificação: Armazenamento de certificados para autoridades de certificação intermédias (CAs).
- Proibido: Armazenamento de certificados para certificados revogados.
- Meu: Loja de certificados para certificados pessoais.
- Root: Armazenamento de certificados para autoridades de certificação raiz (CAs) de confiança.
- TrustedPeople: Armazenamento de certificados para pessoas e recursos diretamente confiáveis.
- TrustedPublisher: Armazenamento de certificados para editores de confiança direta.

O padrão é o meu.
X509FindType Define o tipo de pesquisa X.509 a ser executada. Os valores válidos incluem os seguintes:

- FindByThumbFingerprint
- FindBySubjectName
- FindBySubjectNominatedDistinguishedName
- FindByIssuerName
- FindByIssuerDistinguishedName
- FindBySerialNumber
- FindByTimeValid
- FindByTimeNotYetValid
- FindByTemplateName
- FindByApplicationPolicy
- FindByCertificatePolicy
- FindByExtension
- FindByKeyUsage
- FindBySubjectKeyIdentifier

O tipo contido no findValue atributo deve satisfazer os requisitos do X509FindType especificado.

O valor padrão é FindBySubjectDistinguishedName.

Elementos filho

Nenhum.

Elementos Principais

Elemento Description
<Certificado do cliente>

Observações

O <certificate> elemento é utilizado quando o serviço deve ter o certificado do cliente antecipadamente para comunicar de forma segura com ele. Isso ocorre ao usar o padrão de comunicação duplex. No padrão mais típico de pedido/resposta, o cliente inclui o seu certificado no pedido, que o serviço utiliza para encriptar e assinar a sua resposta de volta ao cliente. No padrão de comunicação duplex, no entanto, o serviço não recebe um pedido do cliente e, por isso, necessita do certificado do cliente antecipadamente para proteger a mensagem ao cliente. Por isso, deve obter o certificado do cliente numa negociação fora de banda e especificar o certificado usando este elemento. Para obter mais informações sobre serviços duplex, consulte Como criar um contrato duplex.

Example

O código seguinte especifica como encontrar um certificado X.509 apropriado e um tipo de validação personalizado no <authentication> elemento.

<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>

Consulte também