<certificado> de <clientCertificate> Element
Especifica um certificado X.509 utilizado para assinar e encriptar mensagens.
<configuração>
<system.serviceModel>
<comportamentos>
<serviceBehaviors>
<comportamento>
<serviceCredentials>
<clientCertificate>
<certificado>
Syntax
<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 secções seguintes descrevem atributos, elementos subordinados e elementos principais
Atributos
Atributo | Descrição |
---|---|
findValue |
Uma cadeia que contém o valor a procurar no arquivo de certificados X.509. O tipo contido no atributo tem de satisfazer os requisitos do X509FindType especificado. A predefinição é uma cadeia vazia. |
storeLocation |
Especifica a localização do arquivo de certificados X.509 que o cliente utiliza para validar o certificado do servidor. Os valores válidos incluem o seguinte: - LocalMachine: o arquivo de certificados atribuído ao computador local. - CurrentUser: o arquivo de certificados atribuído ao utilizador atual. A predefinição é LocalMachine. |
storeName |
Especifica o nome do arquivo de certificados X.509 a abrir. Os valores válidos incluem o seguinte: - AddressBook: arquivo de certificados para outros utilizadores. - AuthRoot: arquivo de certificados para autoridades de certificação (ACs) de terceiros. - CertificationAuthority: arquivo de certificados para autoridades de certificação (ACs) intermédias. - Não permitido: arquivo de certificados para certificados revogados. - O meu: arquivo de certificados para certificados pessoais. - Raiz: arquivo de certificados para autoridades de certificação (ACs) de raiz fidedigna. - TrustedPeople: arquivo de certificados para pessoas e recursos diretamente fidedignos. - TrustedPublisher: arquivo de certificados para fabricantes diretamente fidedignos. A predefinição é Meu . |
X509FindType |
Define o tipo de pesquisa X.509 a ser executada. Os valores válidos incluem o seguinte: - FindByThumbPrint - FindBySubjectName - FindBySubjectDistinguishedName - FindByIssuerName - FindByIssuerDistinguishedName - FindBySerialNumber - FindByTimeValid - FindByTimeNotYetValid - FindByTemplateName - FindByApplicationPolicy - FindByCertificatePolicy - FindByExtension - FindByKeyUsage - FindBySubjectKeyIdentifier O tipo contido no findValue atributo tem de satisfazer os requisitos do X509FindType especificado.O valor predefinido é FindBySubjectDistinguishedName. |
Elementos Subordinados
Nenhum.
Elementos Principais
Elemento | Descrição |
---|---|
<clientCertificate> |
Observações
O <certificate>
elemento é utilizado quando o serviço tem de ter o certificado do cliente com antecedência para comunicar de forma segura com o cliente. Isto ocorre ao utilizar o padrão de comunicação duplex. No padrão de pedido/resposta mais típico, o cliente inclui o respetivo certificado no pedido, que o serviço utiliza para encriptar e assinar a respetiva resposta de volta para o cliente. No padrão de comunicação duplex, no entanto, o serviço não tem um pedido do cliente e, portanto, precisa do certificado do cliente com antecedência para proteger a mensagem para o cliente. Por conseguinte, tem de obter o certificado do cliente numa negociação fora de banda e especificar o certificado com este elemento. Para obter mais informações sobre os serviços duplex, veja Como: Criar um Contrato Duplex.
Exemplo
O código seguinte especifica como encontrar um certificado X.509 adequado 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>