Partilhar via


<autenticação> do <Elemento ServiceCertificate>

Especifica as definições usadas pelo proxy cliente para autenticar certificados de serviço obtidos através de negociação SSL/TLS.

<configuração>
   <system.serviceModel>
     <comportamentos>
       <endpointComportamentos>
         <comportamento>
           <clientCredenciais>
             <Certificado de serviço>
               <autenticação>

Sintaxe

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

Atributos e Elementos

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

Attributes

Attribute Description
customCertificateValidatorType String. Um tipo e conjunto usados para validar um tipo personalizado.
certificateValidationMode Especifica um dos três modos usados para validar credenciais. Se definido para Custom, então também deve ser fornecido um customCertificateValidator. A predefinição é ChainTrust.
revocationMode Um dos modos usados para verificar um certificado revogado lista (CRL). A predefinição é Online.
trustedStoreLocation Uma das duas localizações de armazenamento do sistema: LocalMachine ou CurrentUser. Este valor é utilizado quando um certificado de serviço é negociado com o cliente. A validação é realizada contra o armazenamento de Pessoas Confiáveis na localização especificada do armazenamento. A predefinição é CurrentUser.

Atributo customCertificateValidator

Valor Description
Cordão Especifica o nome do tipo, o conjunto e outros dados usados para encontrar o tipo.

Atributo certificateValidationMode

Valor Description
Enumeração Um dos seguintes valores: Nenhum, PeerTrust, ChainTrust, PeerOrChainTrust, Personalizado.

Para obter mais informações, consulte Trabalhando com certificados.

Atributo revocationMode

Valor Description
Enumeração Um dos seguintes valores: NoCheck, Online, Offline.

Para obter mais informações, consulte Trabalhando com certificados.

Atributo trustedStoreLocation

Valor Description
Enumeração Um dos seguintes valores: LocalMachine ou CurrentUser. O padrão é CurrentUser. Se a aplicação cliente estiver a correr sob uma conta do sistema, então o certificado está normalmente sob LocalMachine. Se a aplicação cliente estiver a correr sob uma conta de utilizador, então o certificado está normalmente no CurrentUser.

Elementos filho

Nenhum.

Elementos Principais

Elemento Description
<Certificado de serviço> Especifica um certificado a ser usado ao autenticar um serviço para o cliente.

Observações

O certificateValidationMode atributo deste elemento de configuração especifica o nível de confiança utilizado para autenticar certificados. Por defeito, o nível é definido para ChainTrust, o que especifica que cada certificado deve ser encontrado numa hierarquia de certificados que termina numa autoridade de certificação de confiança no topo da cadeia. Este é o modo mais seguro. Você também pode definir o valor como PeerOrChainTrust, que especifica que os certificados autoemitidos (confiança de mesmo nível) são aceitos, bem como os certificados que estão em uma cadeia confiável. Esse valor é usado ao desenvolver e depurar clientes e serviços porque os certificados autoemitidos não precisam ser comprados de uma autoridade confiável. Ao implantar um cliente, use o ChainTrust valor em vez disso. Também pode definir o valor como Custom ou None. Para usar o Custom valor, deve também definir o customCertificateValidator atributo para um assembly e um tipo usados para validar o certificado. Para criar o seu próprio validador personalizado, deve herdar da classe abstrata X509CertificateValidator. Para obter mais informações, consulte Como criar um serviço que emprega um validador de certificado personalizado.

O revocationMode atributo especifica como os certificados são verificados quanto à revogação. O padrão indica online que os certificados serão automaticamente verificados para revogação. Para obter mais informações, consulte Trabalhando com certificados.

Example

O exemplo seguinte faz duas tarefas. Especifica primeiro um certificado de serviço para o cliente usar ao comunicar com endpoints cujo nome de domínio é www.contoso.com sobre o protocolo HTTP. Em segundo lugar, especifica o modo de revogação e o local de armazenamento usados durante a autenticação.

<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 também