Partilhar via


<autenticação> do <serviceCertificate> Element

Especifica as definições utilizadas pelo proxy de cliente para autenticar certificados de serviço obtidos com a negociação SSL/TLS.

<configuração>
  <system.serviceModel>
    <comportamentos>
      <endpointBehaviors>
        <comportamento>
          <clientCredentials>
            <serviceCertificate>
              <autenticação>

Syntax

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

Atributos e Elementos

As secções seguintes descrevem atributos, elementos subordinados e elementos principais

Atributos

Atributo Descrição
customCertificateValidatorType Cadeia. Um tipo e assemblagem utilizados para validar um tipo personalizado.
certificateValidationMode Especifica um dos três modos utilizados para validar credenciais. Se definido como Custom, tem também de ser fornecido um customCertificateValidator. A predefinição é ChainTrust.
revocationMode Um dos modos utilizados para verificar a existência de listas de certificados revogadas (CRL). A predefinição é Online.
trustedStoreLocation Uma das duas localizações do arquivo do sistema: LocalMachine ou CurrentUser. Este valor é utilizado quando um certificado de serviço é negociado com o cliente. A validação é efetuada no arquivo de Pessoas Fidedignos na localização do arquivo especificada. A predefinição é CurrentUser.

atributo customCertificateValidator

Valor Description
String Especifica o nome do tipo e a assemblagem e outros dados utilizados para localizar o tipo.

atributo certificateValidationMode

Valor Descrição
Enumeração Um dos seguintes valores: None, PeerTrust, ChainTrust, PeerOrChainTrust, Custom.

Para obter mais informações, veja Trabalhar com Certificados.

atributo revocationMode

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

Para obter mais informações, veja Trabalhar com Certificados.

trustedStoreLocation Attribute (Atributo trustedStoreLocation)

Valor Descrição
Enumeração Um dos seguintes valores: LocalMachine ou CurrentUser. A predefinição é CurrentUser. Se a aplicação cliente estiver em execução numa conta de sistema, o certificado estará normalmente em LocalMachine. Se a aplicação cliente estiver em execução numa conta de utilizador, o certificado está normalmente no CurrentUser.

Elementos Subordinados

Nenhum.

Elementos Principais

Elemento Descrição
<serviceCertificate> Especifica um certificado a utilizar ao autenticar um serviço no cliente.

Observações

O certificateValidationMode atributo deste elemento de configuração especifica o nível de confiança utilizado para autenticar certificados. Por predefinição, o nível está definido como ChainTrust, que especifica que cada certificado tem de ser encontrado numa hierarquia de certificados que termine numa autoridade de certificação fidedigna na parte superior da cadeia. Este é o modo mais seguro. Também pode definir o valor como PeerOrChainTrust, que especifica que os certificados auto-emitidos (confiança do elemento da rede) são aceites, bem como certificados que estão numa cadeia fidedigna. Este valor é utilizado ao desenvolver e depurar clientes e serviços porque os certificados autoemitidos não precisam de ser comprados a uma autoridade fidedigna. Ao implementar um cliente, utilize o ChainTrust valor. Também pode definir o valor como Custom ou None. Para utilizar o Custom valor, também tem de definir o customCertificateValidator atributo para uma assemblagem e escrever utilizados para validar o certificado. Para criar o seu próprio validador personalizado, tem de herdar da classe X509CertificateValidator abstrata. Para obter mais informações, veja How to: Create a Service that Employs a Custom Certificate Validator (Como: Criar um Serviço que Emprega um Validador de Certificado Personalizado).

O revocationMode atributo especifica a forma como os certificados são verificados para revogação. A predefinição indica online que os certificados serão verificados automaticamente para revogação. Para obter mais informações, veja Trabalhar com Certificados.

Exemplo

O exemplo seguinte faz duas tarefas. Primeiro, especifica um certificado de serviço para o cliente utilizar ao comunicar com pontos finais cujo nome de domínio está www.contoso.com sobre o protocolo HTTP. Em segundo lugar, especifica o modo de revogação e a localização do arquivo utilizada 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>

Ver também