Como: recuperar a impressão digital de um certificado
Ao escrever um aplicativo WCF (Windows Communication Foundation) que usa um certificado X.509 para autenticação, geralmente é necessário especificar declarações encontradas no certificado. Por exemplo, você precisa fornecer uma declaração de impressão digital ao usar a enumeração FindByThumbprint no método SetCertificate. A localização do valor da declaração exige duas etapas. Primeiro, abra o snap-in do MMC (Console de Gerenciamento da Microsoft) para certificados. (Confira Como exibir certificados com o snap-in do MMC). Em segundo lugar, conforme descrito aqui, localize um certificado apropriado e copie a impressão digital dele (ou outros valores de declaração).
Se você estiver usando um certificado para autenticação de serviço, é importante observar o valor da coluna Emitido para (a primeira coluna no console). Ao usar o protocolo SSL como uma segurança do transporte, uma das primeiras verificações feitas é comparar o URI (Uniform Resource Identifier) de um serviço com o valor Emitido para. Os valores precisam ser iguais ou o processo de autenticação é interrompido.
Use também o cmdlet New-SelfSignedCertificate do PowerShell para criar certificados temporários para uso somente durante o desenvolvimento. Por padrão, no entanto, esse certificado não é emitido por uma autoridade de certificação e é inutilizável para fins de produção. Para obter mais informações, confira Como criar certificados temporários para uso durante o desenvolvimento.
Para recuperar a impressão digital de um certificado
Abra o snap-in do MMC (Microsoft Management Console) para certificados. (Confira Como exibir certificados com o snap-in do MMC).
No painel esquerdo da janela Raiz do Console, clique em Certificados (Computador Local).
Clique na pasta Pessoal para expandi-la.
Clique na pasta Certificados para expandi-la.
Na lista de certificados, observe o título Propósitos Pretendidos. Localize um certificado que lista Autenticação do Cliente como uma finalidade pretendida.
Clique duas vezes no certificado.
Na caixa de diálogo Certificado, clique na guia Detalhes.
Role a lista de campos e clique em Impressão Digital.
Copie os caracteres hexadecimal da caixa. Se essa impressão digital for usada no código para o
X509FindType
, remova os espaços entre os números hexadecimais. Por exemplo, a impressão digital "a9 09 50 2d d8 2a e4 14 33 e6 f8 38 86 b0 0d 42 77 a3 2 a 7b" deve ser especificado como "a909502dd82ae41433e6f83886b00d4277a32a7b" no código.