Manual de instalação de https no iis7 2
-
Upload
washington-souza -
Category
Technology
-
view
461 -
download
59
description
Transcript of Manual de instalação de https no iis7 2
1
Utilizando Certificados Digitais O problema e a “solução”
por Marcelo Sincic
Conteúdo
Introdução
Argumentos para utilizarmos certificados
Como funciona a estrutura PKI
Parte 1: Configurando um servidor para utilizar certificados do cliente na autenticação
Parte 2: Emitindo e certificando o IIS
Parte 3: Emitindo e certificando o usuário
Dicas
Referências + Tópicos Relacionados
Sobre o Autor
Introdução Atualmente todos estão preocupados com a segurança e autenticidade de documentos e relacionamentos
eletrônicos, uma vez que muitos usuários utilizam a internet para enviar documentos, consultar processos e
realizar transações financeiras, fiscais e, recentemente, legais. Cada vez mais notamos que pedir o nome do
usuário e uma senha não é a forma ideal de garantirmos a autenticidade, e intuições como bancos utilizam
quatro ou cinco métodos de validações adicionais alem do clássico “user-pass”.
Neste ponto é que surgem as chaves criptográficas, armazenadas em certificados digitais, que garantem a
identidade de uma empresa, pessoa física ou um site na internet. Para termos uma idéia da importância e
necessidade desta tecnologia, desde o ano passado algumas transações no site da Receita Federal só podem
ser feitas por quem tem um certificado, bem como o FINEP para universitários que queiram financiamento,
sistemas de exportação baseados no SISCOMEX, e muitos outros.
O certificado é um arquivo de pouco mais de 1Kb que contem uma chave criptográfica e dados de seu
proprietário. No caso do programa ICP-Brasil, os dados gravados são Nome, CPF, RG, etc.
O programa ICP-Brasil (Infraestrutura de Chaves Publicas, sigla em português para a tecnologia PKI, ou,
Public Key Infrastructure) juntamente com seus agregados de identificação, o e-CPF e o e-CNPJ, que
respectivamente identificam uma pessoa física e uma jurídica. Uma observação importante: a tecnologia real
se chama PKI, o ICP-Brasil é uma série de medidas legais, técnicas e normas que possibilitaram o
surgimento de versões virtuais de nossos CPFs e CNPJs.
Por exemplo, para ter um e-CPF ou um e-CNPJ é necessário comparecer a um posto do SERASA com seus
documentos, alem do pagamento e do pedido já efetuado na internet, para verificar os dados e deixar sua
assinatura devidamente registrada. Só após a conferência dos documentos que enviam o documento
eletrônico.
A utilização deste método de autenticação e segurança ainda é baixa, em primeiro lugar porque o custo é
relativamente alto para o usuário final, que pode variar entre o modelo A1 que custa em torno de R$ 100,00 e
chegando ao kit do modelo A3 em R$ 700,00. Outro problema é que os usuários em geral ainda não se
deram conta do risco que existe no uso da internet sem o certificado nas duas pontas e as empresas ainda
podem se esquivar de responsabilidades por utilizar múltiplos métodos de segurança.
Neste artigo veremos agora como se pode utilizar certificados digitais, sejam os emitidos pelo ICP-Brasil
ou utilizando o modelo PKI já disponível no Windows Server desde a versão 2000. Também abordaremos
como emitir certificados para nossos usuários sem que eles tenham o custo de comprar um.
É importante notar que neste artigo estaremos focando o Windows 2008, mas em meu site você poderá ler
também o artigo baseado no Windows 2003, com as mesmas funcionalidades abordadas.
2
Argumentos para utilizarmos certificados Para entender os tipos de certificados e o que está por trás de toda esta tecnologia PKI devemos, em
primeiro lugar, abordar a questão do custo e tipo dos certificados. Quando falamos em tipos de certificados
na verdade nos referimos a como chegaram até o cliente e como o cliente o usa fisicamente, e não o
certificado em sí mesmo.
O certificado do modelo A1 consiste em um arquivo que contem duas chaves, uma pública e outra privada
Já o modelo A3 é o conhecido “smartcard”, que agora bancos como Itaú e Bradesco passaram a distribuir aos
seus clientes. A utilização dos cartões A3 tem seu custo mais elevado em razão do leitor que é necessário
adquirir. Algumas empresas vendem o kit A3, como a Itautec, contendo o cartão, a mídia com o arquivo, o
leitor de smartcard que é conectado na USB e uma visita técnica para instalação. Como o A1 é apenas
distribuído com uma mídia simples, pode-se encontrá-lo ao preço de R$ 150,00 no site do SERASA,
CertSign e outros. O A3 também pode ser comprado nos mesmos lugares ao preço médio de R$ 400,00. Mas
neste caso a leitora não está incluída. Como em qualquer negociação é possível procurar a “concorrência”, já
que os certificados são vendidos por diversas empresas alem destas citadas.
O segundo argumento para utilização dos certificados pessoais é que nós, usuários, ainda não nos demos
conta do real perigo oferecido pela certificação como é utilizada atualmente. Para entendermos este risco
veja a Figura 1, lado esquerdo. Podemos notar que o modelo tradicional, apenas o servidor da empresa
possui a chave de autenticação (vide Nota 1), portanto ele é quem diz ser. Fazemos isto por utilizar uma
chave criptográfica para montar um servidor SSL (https), que nada mais é do que ter certeza de que aquele
servidor realmente pertence a sua empresa, por isso é chamado de “Digital Signature” (Assinatura Digital).
Mas quem garante que “você” realmente é quem diz ser?
Figura 1 – Utilizações padrão de certificados
Nota 1 – Chaves Públicas e Privadas
A chave pública (Public Key) é aquela que apenas o emissor possui, enquanto a chave privada (Private
Key) é trocada com todos os que acessam o site. Esse modelo é chamado de assimétrico, já que a
utilização da chave pública para criptografar o faz com o algoritmo que apenas a privada consegue abrir,
e vice-versa. Ou seja, com a chave publica lemos o que foi criptografado com a chave privada, mas não
conseguimos alterar, uma vez que apenas a privada consegue abrir o que a pública criptografou,
garantindo que o dono do certificado é ele mesmo, pois uma chave “falsificada” não conseguiria abrir a
assinatura digital no documento ou no site.
Na figura 1 do lado direito notamos que com o certificado do usuário a recíproca passa a ser verdadeira,
tanto o usuário quando o servidor são confiáveis e autênticos.
Anteriormente a única garantia que um banco ou uma empresa tem em relação à quem está logando em
uma página privada ocorre através de identificadores, como por exemplo um número de agência e conta,
para os sites de banco, ou então um endereço de email para demais sites.
3
Esses métodos eram facilmente burlados, por exemplo, alguém utilizando um trojan descobria o que você
digitou e poderia utilizar esses dados para acessa a sua conta. Então começaram nos bancos os irritantes
métodos físicos, cartão com códigos, letras que mudam de posição, teclado que se movimenta na tela,
número de confirmação grafado no cartão e outros que muitas vezes nos fazem desistir da transação.
Como funciona a estrutura PKI Então agora que já entendemos que certificados digitais só nos ajudam, como funciona a tecnologia PKI?
A Figura 2 demonstra como ele funciona e suas vantagens em uma aplicação corporativa, onde apenas
quem possui um certificado emitido pela empresa consegue o acesso. Este processo é chamado de “não
repúdio”.
Claro que aqui estamos apenas alistando um exemplo de aplicação, sendo que os certificados são emitidos
pela própria empresa e não utilizando o modelo e-CPF/e-CNPJ que são emitidos pelo SERPRO, SERASA ou
outra credenciada.
Figura 2 – Modelo básico com acesso utilizando certificados
Detalhando melhor os principais componentes PKI, podemos destacar 4 serviços principais:
CA (Autorizada de Certificação) que emite os certificados. As certificadoras são bem conhecidas
empresas que mantém um banco de dados com os certificados emitidos, bem como o CRL
atualizado. Nem sempre se utiliza a CA para emissão de certificados e sim um subordinado.
Subordinate CA (Autoridade de Certificação Subordinada) que também emite os certificados, mas
utilizando uma “corrente” ligada a CA raiz. Este modelo é utilizado pela maior parte das
certificadoras conhecidas, como a VeriSign, CertSign e outras. No Brasil, como exemplo, o
SERASA emite certificados SSL que são subordinados a GlobalSign. O motivo é muito simples, as
“certificadoras confiáveis” já estão pré-configuradas nos sistemas operacionais, como pode ser visto
na figura 3. Esta lista é uma parte na encontrada no Internet Explorer ao entrar em “Opções-
Conteudo-Certificados” e o SERASA não consta na lista, obviamente porque é uma empresa que não
é conhecida fora do Brasil para ser incluída, por isso utilizar um secundário de outra já cadastrada.
4
Figura 3 - Internet Explorer 8
CRL (Certificate Revogation List) é um servidor mantido pela CA ou subordinada e que mantém
uma lista dos certificados que foram revogados ou cancelados. Esta lista nos protege contra o mau
uso ou desvio do certificado para outros fins. A Verisign a alguns anos atrás teve que noticiar que
havia emitido dois certificados para a Microsoft quando na verdade os solicitantes utilizaram
documentos falsos. A solução neste caso é revogar os certificados e publicá-lo na CRL.
Certificado Digital, por fim, é um arquivo que contem as chaves pública e privada. A chave privada
só é conhecida do proprietário e da CA que a emitiu. A chave pública é conhecida por todos os que
se comunicam com o proprietário da chave. O modelo de criptografia utilizado é assimétrico, o
proprietário utiliza a chave privada para criptografar suas mensagens e a chave pública contém o
algoritmo para descriptografar. O inverso na comunicação ocorre quando o destinatário envia para o
proprietário utilizando a chave pública para criptografar, garantindo que apenas o proprietário
conseguirá descriptografar, uma vez que ele é o único que tem a chave inversa, neste caso a privada.
O certificado contém um importante dado dentro dele chamado de “subject”, onde consta os dados
de quem é o proprietário da chave e outros dados que a certificadora queira incluir como mostra a
figura 4.
5
Figura 4 - Subject do certificado
Parte 1: Configurando um servidor para utilizar certificados do cliente na autenticação
Agora que já temos um bom panorama do porque os certificados são importantes e como sua infraestrutura
foi planejada vamos configurar o IIS para utilizar os certificados. Utilizaremos uma certificadora baseada no
Windows 2008 para a emissão, já que para podermos fazer o processo de autenticação por certificados
precisamos que o servidor IIS esteja com SSL habilitado. O meu servidor já está certificado e abordaremos
como este processo foi feito adiante. Utilizarei neste exemplo um certificado próprio emitido pelo Windows
2008, mas o processo é o mesmo para o e-CPF/e-CNPF, apenas ao invés de utilizar um servidor próprio
utilizaria um do ICP Brasil.
Talvez você se pergunte porque utilizar uma certificadora própria se o ICP-Brasil já existe para isso, mas
lembre-se de que no inicio do artigo foi comentado que os certificados e-CPF/e-CNPJ são pagos, e com
preços bastante elevados por sinal.
Nota
Lembre-se que Autoridade Certificadora (CA) é quem emite o certificado, arquiva e mantêm a lista de
revogação (CRL). Se o CA é interna ou da internet como as mais conhecidas e do ICP-Brasil não faz
diferença no uso de PKI e certificados digitais.
Outra questão é como fazer o mesmo processo em servidores, como o Apache, por exemplo. Qualquer
servidor web permite o uso de certificados para SSL, mas obviamente não é tão simples quanto no IIS.
Quanto a emissão de certificados, tocamos no calcanhar de aquiles, já que emissão de certificados no Linux é
bem mais complexo do que no Windows Server, mas também pode ser feito. Contudo, não vamos abordar
esse tema nesse artigo.
Voltando ao IIS, veja na Figura 5 que para utilizar a opção “Require client certificate” é necessário
também ter o servidor certificado. Caso não possua o seu servidor com SSL poderá utilizar a opção “Accept
client certificate” que não exige, apenas permite o uso de certificados pelo cliente, não garantindo assim um
bom método de autenticação.
6
Figura 5 - Habilitando o uso de certificados no IIS
A Figura 6 demonstra o que acontece ao tentar acessar um servidor certificado e com obrigatoriedade de
certificado pelo cliente. O erro “403.7” obviamente pode ser redirecionado para uma página de erro
customizada que informe ao usuário que ele precisa comprar um certificado e a lista de onde isto pode ser
feito, por exemplo.
Nota
Não tente tratar este erro por try-catch pois a aceitação e leitura do certificado é feita diretamente pelo
IIS, e neste caso a aplicação nem é inicializada.
Figura 6 - Acesso proibido por falta de um certificado
Após instalar o certificado para o meu usuário, Figura 7, uma lista dos certificados que eu possuo na
maquina é mostrada, permitindo que eu escolha qual utilizar. Esta lista só aparece caso o usuário solicite ou
se existirem múltiplos certificados.
7
Figura 7 - Certificado sendo solicitado ao usuário
Parte 1.1: Utilizando os dados do certificado O próximo passo é ler os dados do certificado para validar o usuário, e isto é mostrado na Figura 8, onde
está listado o conteúdo do “subject” com os dados utilizados quando comprei o certificado. Para extrair estes
dados foi utilizado o código da Listagem 1, que é extremamente simples.
Figura 8 - Acesso permitido e os dados do certificado exibidos
Listagem 1. Código ASP para ler os dados do certificado
<HTML>
<BODY>
<H1>Bem-vindo </H1>
<%=Request.ClientCertificate.Subject%>
</BODY>
</HTML>
Vale lembrar que neste certificado o subject é o email do cliente, mas isto é configurável, portanto o
subject de um e-CPF será o numero do documento.
Parte 2: Emitindo e certificando o IIS
A grande sacada é que o Windows Server desde a versão 2000 já possuem certificadoras !!!!
8
Portanto, esqueça o custo e a dificuldade, você mesmo pode criar a certificadora, certificar o seu site e seus
usuários, precisando para isso ter apenas um servidor e o CD de instalação na mão.
Para instalar o serviço de certificação no seu Windows 2008 utilize o método normal de instalação de
componentes: Server Manager -> Roles -> Add Roles...
Escolha na lista a opção “Certificate Authority”. Na tela de configuração do componente selecione
“Standalone Certification Authoriry” e informe os dados de sua empresa, mas note que existe a opção para
validade dos certificados. Se escolher a validade muito baixa seus usuários estarão sempre tendo que renová-
lo. Por outro lado, certificados com tempo muito longo podem ter problemas de “vazamento” por parte do
usuário. Utilize um período como 1 ou 2 anos que é o padrão utilizado hoje nos certificados comerciais.
Após a instalação o papel de certificados aparece na console, conforme a Figura 9.
Figura 9 - Roles CA instalada
Para certificar o IIS utilizando os seus próprios certificados o processo é o mesmo que utilizar um
certificador comercial. Abra o gerenciador do IIS, abra propriedades do seu site no painel de ações (Figura
10), clique em “Create Certificate Request”.
9
Figura 10 - Configurando a segurança
Preencha agora os dados do seu site, conforme mostra a Figura 11
Importante
Na opção “Common Name” coloque o nome do seu domínio na internet, *.seudominio.com.br, pois se
fizer diferente disto no momento em que seu site for aberto ocorrerá um erro informando que o
certificado não pertence ao seu site.
10
Figura 11 - Resumo dos dados do certificado
Após completar os dados será gerado um arquivo texto com o conteúdo criptografado do que você
informou, conforme a Figura 12.
11
Figura 12 - Arquivo gerado com os dados
O conteúdo deste arquivo será a sua chave privada, como mostra a Listagem 2.
Listagem 2. Arquivo certreq.txt -----BEGIN NEW CERTIFICATE REQUEST-----
MIIDUDCCArkCAQAwdTELMAkGA1UEBhMCQlIxCzAJBgNVBAgTAlNQMRIwEAYDVQQH
EwlHdWFydWxob3MxEDAOBgNVBAoTB0V4ZW1wbG8xEDAOBgNVBAsTB0V4ZW1wbG8x
ITAfBgNVBAMeGABtAHMAaQBuAGMAaQBjAF8AdwAyAGsAMzCBnzANBgkqhkiG9w0B
AQEFAAOBjQAwgYkCgYEAwcRAXg3lIfpu9NbN0vpgPw9eR1P3scccq79fwO2Xkc/X
rpZmxPzdsLnN0jwFfLLe7GotTnBotlLrsgipCevCs6wEM8gY0EJmdqxYqLuk783J
IXRoTuB5RbvdMUtBj/6wAVOaVAUJTeAvK9OMdqNzS9iCRr25XWpECjbWXor8IoUC
AwEAAaCCAZkwGgYKKwYBBAGCNw0CAzEMFgo1LjIuMzc5MC4yMHsGCisGAQQBgjcC
AQ4xbTBrMA4GA1UdDwEB/wQEAwIE8DBEBgkqhkiG9w0BCQ8ENzA1MA4GCCqGSIb3
DQMCAgIAgDAOBggqhkiG9w0DBAICAIAwBwYFKw4DAgcwCgYIKoZIhvcNAwcwEwYD
VR0lBAwwCgYIKwYBBQUHAwEwgf0GCisGAQQBgjcNAgIxge4wgesCAQEeWgBNAGkA
YwByAG8AcwBvAGYAdAAgAFIAUwBBACAAUwBDAGgAYQBuAG4AZQBsACAAQwByAHkA
cAB0AG8AZwByAGEAcABoAGkAYwAgAFAAcgBvAHYAaQBkAGUAcgOBiQAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMA0GCSqGSIb3DQEBBQUA
A4GBAG3b+qC3ta8nYl6tD2Ens4El/qsvlMvn5QaI88w4zhSXmK4gnj3coIzAbUl8
MC0s4C/H9x1fJYhOfnore8FyUkTTv8SlobP7k3Y+eHI994OqUbeZuxTFme1j0O0A
EiCOmyFyuz9kUSCU/4lQ5I8ZhWbcW9ZSkyYWDiCjcpF+Gw/y
-----END NEW CERTIFICATE REQUEST----
Por mais incrível que pareça neste emaranhado de letras e números estão gravados os dados que foram
informados no IIS na tela de configuração.
O próximo passo é utilizar a página da certificadora para emitir o certificado para servidor. Utilize a url
http://localhost/certsrv para acessar a certificadora como na Figura 13.
12
Figura 13 - Certificadora Windows 2008 baseada em web
Escolha a opção “Request a certificate” -> “Advanced certificate request” -> “Submit a certificate request by using a base-64-encoded …”. Na caixa de texto cole o conteúdo do arquivo texto ou então use o link para encontrar o arquivo certreq. No final receberá uma tela de confirmação de pedido encaminhado e avisa que é necessário o administrador liberar o seu certificado. Estes passos estão nas Figuras 14, 15 e 16.
Figura 14 - Escolha do tipo de certificado
13
Figura 15 - Opção por formulário ou envio de arquivo PKCS
Figura 16 - Formulario para pedido de certificado com PKCS
Esta liberação é feita na ferramenta “Active Directory Certificate Authority” nas ferramentas
administrativas do certificador. Ao abrir vá à árvore “Pending Requests” e o certificado estará listado,
bastando clicar com o botão direito e escolher Issue (Aprovar) ou Reject (Rejeitar).
Feito a aprovação o certificado está disponível como na Figura 17, onde estão listados os certificados
emitidos. Para revogar um certificado você poderá clicar em qualquer um destes e escolher Revoke
(Revogar), que ele irá passar a constar na lista CRL vista anteriormente.
14
Figura 17 - Liberando os certificados na ferramenta de administração da certificadora
Agora volte na página onde o certificado foi solicitado e escolha a opção “View status of pending request”.
Seu certificado já está aguardando para ser copiado, como mostra a Figura 13. Basta clicar e salvá-lo em um
local apropriado.
Figura 18 - Recebendo o certificado após a liberação
Nota
O certificado que você acabou de baixar (arquivo cer) não contem a chave privada, apenas a chave
pública. A chave privada são os dados que geraram o arquivo texto PKCS no IIS e precisa agora ser
complementado pela chave pública gerada e guardada no arquivo cer.
ATENÇÃO: Não adianta ter uma cópia do arquivo cer e tentar utilizá-lo novamente. Veremos a frente
como fazer backup do certificado completo (chaves públicas+privada).
Com o arquivo do certificado em mãos, vamos terminar o processo no IIS. Volte no seu web site e
utilizando o painel de ações do lado direito, Figura 19, escolha a opção “Complete Certificate Request”.
Lembre-se conforme a note acima que é neste momento que se fará a ligação entre a chave privada do IIS
com a chave pública enviada pelo CA.
15
Figura 19 – Completar o processo de instalação do certificado emitido para o servidor IIS
O próximo passo consiste em configurar o site para utilizar certificados. Para isso siga ao site como na Figura 20 e
clique em “SSL Settings”.
Figura 20 - Tela de configuração do Site
Na Figura 21 podemos adicionar a porta que será utilizada para o SSL, a porta padrão é 443, e na Figura 22 podemos
escolher o certificado que irá ser usado na criptografia dos dados.
16
Figura 21 - Opções de binding do certificado ao site
Figura 22 - Associando o certificado instalado à porta correspondente do Site
Nota
Uma interessante alteração no IIS 7 é que agora podemos ter para um mesmo site vários certificados
diferentes, um para cada porta SSL, o que permite por exemplo, o site certificar na porta X o usuário
utilizando o certificado do ICP-Brasil e na porta Y um certificado com nossa própria CA.
Isso não era possível no IIS até a versão 6, cada site utiliza um único certificado de CA.
Parte 3: Emitindo e certificando o usuário
Terminada a certificação do servidor precisamos certificar os usuários. Como a configuração do servidor
exige certificados para acesso ao site o processo de certificação do usuário se tornou imprescindível e não
apenas recomendado como anteriormente.
Para emissão instrua o usuário a acessar a certificadora pelo mesmo link utilizado para emitir o certificado
do IIS, descrito na Figura 13. Processa com a opção de solicitação e no tipo de certificado escolha
novamente “Advanced certificate request” e na tela seguinte a opção para submit de formulário, onde o
usuário irá preencher os dados e receberá a informação para aguardar a liberação.
Vá à ferramenta “Active Directory Certificate Authority” como descrito anteriormente e libere o
certificado. Instrua o usuário a retornar ao site da certificadora e escolher a segunda opção para receber o
certificado como mostra a Figura 18. Ao clicar em “Install Certificate” o certificado é automaticamente
instalado na máquina do usuário, diferente do processo quando para o servidor que o certificado é apenas
copiado.
Após este processo o usuário já possui os certificados instalado na máquinas, como pode ser visto na tela
do próprio IE (Tools -> Content -> Certificates) como na Figura 23 e 24.
17
Figura 23 - Opções do IE
Figura 24 - Certificado do usuário instalado
Concluído este processo o usuário já irá conseguir acessar o seu site de forma autenticada e será possível
suas páginas com o código apresentado anteriormente identificar o usuário e ler os dados que foram
preenchidos no formulário da certificadora, que pode ser acessada localmente ou mesmo pela internet se o
seu servidor estiver publicado.
18
Dicas Dica 1: Lembre-se de fazer backup do “System State” periodicamente. No Windows 2008 tambem é
possível fazer backup clicando na ferramenta “Active Directory Certificate Autority”com o botão direito e
escolher Backup. Isso é importante porque perder a certificadora causa a perda também da CRL (Certificate
Revogation List) que irá impedir que mesmo os certificados JÁ EMITIDOS sejam utilizados.
Dica 2: Este ponto e o abaixo tem a ver com o mesmo problema. Se a sua certificadora for interna irá
aparecer na tela o aviso de que o computador do usuário não confia no seu certificador, por este não ser um
daqueles autorizados internacionalmente comentados no inicio.
Neste caso você pode importar o “Chain” que é o certificado da autoridade certificadora. Para isso acesse a
página web da CA e escolha a opção “Download a CA certificate” conforme a Figura 25.
Figura 25 - Download do certificado do CA
Agora envei este certificado ao cliente, lembrando que não há perigo já que no arquivo CER não existe a
chave privada. Clique no arquivo CER do certificado e escolha a opção “Import”. Ao fazer isso abrirá o
wizard de importação e você irá colocar o certificado no repositório de certificadoras confiáveis, como a
Figura 26 abaixo demonstra.
19
Figura 26 - Registrando a CA no computador cliente
Dica 3: Se o seu site está na internet e você precisa acabar com o erro comum “Certificate revogation List
not accessible” altere o caminho do arquivos CRL que os certificados utilizam.
Isso é simples de ser feito, mas é importantíssimo. Clique na ferramenta de configuração do certificador e
peça propriedades. Note na Figura 27 que é possível alterar o local onde a CRL será distribuída.
Alterando este valor procure os arquivos de extensão CRM no diretório
“Windows\System32\CertSrv\CertEnroll” do servidor e copie estes para o seu servidor web.
20
Figura 27 - Alterando o caminho do CRL
Dica 4: Quando o usuário não terá acesso ao formulário pelo site e quem irá emitir será o administrador,
como fazer para instalar no usuário?
Neste caso você poderá fazer todo o processo de uma maquina na sua rede interna. A sequencia é a mesma
da citada na parte 3. Ao ter o certificado emitido na maquina interna, basta você exportar o certificado
utilizando o padrão PKCS. Veja na Figura 23 e 24 e entre nas opções do IE, escolha o certificado e utilize o
botão “Export”.
Ao clicar no Export será executa o “Certificate Export Wizard”, onde você deverá exportar a chave
privada junto com o certificado, como mostra a Figura 28 abaixo.
21
Figura 28 - Exportando certificados
Note na Figura 29 que as opções “Include all...” e “Export extend...” devem estar checados para que
funcione o certificado, mas cuidado para não escolher a opção que deleta a chave privada, senão o certificado
da máquina interna estará inválido após o processo de exportação.
Figura 29 - Opções de exportação do certificado
Para finalizar defina uma senha para o arquivo PFX que será gerado. Esta senha será importante para o
usuário instalar em sua máquina o certificado.
Por fim, observe na Figura 30 o processo do usuário destino. Basta que ele dê duplo clique sobre o
certificado e na tela do wizard de importação utilizar o ultimo dos três checkbox habilitados.
22
Figura 30 - Importando o certificado no cliente
Nota
Caso no wizard de importação você escolha a opção “Enable strong protection” o usuário irá ter que
digitar uma senha, um PIN, todas as vezes em que o certificado for utilizado.
A opção “Mark key as exportable” não é aconselhável, já que isso permitiria que o usuário externo
exporte o certificado e instale em outras máquinas.
Conclusões Neste artigo abordamos o que são os certificados digitais, como funcionam, a estrutura que existe para
funcionamento e sua utilização no servidor web. Vale a pena lembrar novamente que o e-CPF/e-CNPJ são
certificados e que o ICP-Brasil nada mais é do que uma certificadora, portanto todos os exemplos aqui são
válidos. Inclusive o modo como administramos a solicitação, a liberação e a instalação dos certificados é a
mesma utilizada pelas certificadoras comercias, apenas com interfaces mais elaboradas.
A utilização dos certificados digitais é simples mas poderosa permitindo autenticação segura do usuário.
Vemos que a segurança ganha com o processo é muito maior que o custo envolvido, principalmente
quando lembramos que uma fraude utilizando o nome de outra pessoa é responsabilidade do site e não do
cliente que foi fraudado segundo o Código do Consumidor.
Links e Referências Interessantes http://www.icpbrasil.gov.br/ Site oficial do ICP Brasil (Infra-estrutura Chaves Públicas). http://www.certisign.com.br/home Uma das mais importantes certificadoras mundiais, que vende o e-CPF e o e-CNPJ.
Marcelo Sincic ([email protected]) é certificado Microsoft como MCT, MCITP, MCPD,
MCTS, MCSA, MCDBA, MCAD, pela IBM como CLP Domino 6.5 e pela SUN como Java Trainer. Atualmente como consultor e instrutor ministrando treinamentos em .NET e plataforma Microsoft, mas é desenvolvedor desde 1989 com Clipper S’87 e Dbase III rodando Novell 2.1. Bons tempos aqueles... Recebeu o prêmio Latin American MCT Awards no MCT Summit 2009 e o prêmio IT HERO da equipe Microsoft Technet Brasil em reconhecimento a projeto desenvolvido.