Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

SARA - Portal WEB - Como configurar servidor SSL SC HTML para o e-CPF

time.png  Tempo aproximado para leitura: 00:12:20 min

Dúvida
Como configurar servidor SSL SC HTML para o e-CPF

Ambiente
SARA -  Portal WEB - A partir da versão 12 

Solução
Este documento descreverá o passo a passo para a configuração do Smart Client HTML para utilizar uma conexão segura HTTPS, na qual é utilizada para a autenticação via e-CPF.
O Smart Client HTML tem como base o servidor TomCat, no qual possibilita utilizar duas implementações de SSL.
Neste documento vamos abordar a utilização do conector SSL chamado JSSE, na qual já vem junto com o SCHtml por padrão.

1 - Geração do certificado SSL
Para utilizar o Smart Client com conexão segura, será necessário emitir um certificado de site seguro.
Estes certificados são emitidos por empresas especializadas como a CertiSign, Serasa, Caixa e etc.

1.1 - CSR
Para adquirir um certificado SSL é necessário gerar uma requisição da assinatura do certificado CSR que é um arquivo criptografado que contém a chave pública, nome, localidade e URL de sua organização. Na criação de um CSR deverá ser informado um arquivo inexistente em um caminho válido, este arquivo é o Keystore e o CSR é o inicio do Keystore.
Para gerar o CSR utilize a ferramenta Keytool do SDK localizada em <INSTALLDIR>/jre/bin/keytool
Execute o comando 1:
keytool-genkey -alias certificado-keyalg RSA -keystore C:\ssl\definaonome.kdb 

1.png

Informe uma senha, neste exemplo vamos usar: totvs@123

2.png

Após informar a senha é necessário preencher os dados do certificado SSL:

  • Qual é o seu nome ou sobrenome?: É o nome do site que você utilizará para instalar o Smart Client HTML na Web e que será publicado com o HTTPS;
  • Pode utilizar por exemplo: sara.empresa.com.brportal.empresa.com.br, etc
  • Qual é o nome da sua unidade organizacional?: É o nome da unidade ou empresa que possui o site;
  • Qual o nome da sua empresa?: Nome da empresa administradora do site;
  • Qual é o nome da sua cidade ou localidade?: Nome da cidade;
  • Qual é o nome do seu estado ou município?: Nome do estado, 2 dígitos;
  • Quais são as duas letras do código do país desta unidade?: Código com duas letras do país;

Após preencher as informações acima aparecerá uma linha confirmando os dados, onde um dos itens mais importante é a chave CN que deve ser o nome do seu site.
Com os dados confirmados digite, S, para confirmar e informe novamente a senha definida no começo do comando.
Neste exemplo: totvs@123

3.png

Importante

  • Lembrando que o caminho para o Keystore C:\Certificado\Keystore é válido e o arquivo definaonome.kdb não existe e será gerado com o CSR após a execução do comando.
  • Fazer imediatamente um backup do arquivo C:\Certificado\Keystore\definaonome.kdb, pois o certificado será gerado para apenas essa chave pública e no caso de perda do arquivo ocasionando uma nova geração.
  • Na criação do Keystore é solicitado a criação de uma senha, a mesma será utilizada durante todo o processo de implantação do certificado, portando guarde a senha para uma futura consulta.
  • No comando é utilizado o parâmetro -alias certificado, quando receber o certificado da certificadora, o certificado deverá ser importado para o alias certificado.
  • A requisição foi gerada dentro do keystore informado, agora é o hora de gerar o arquivo CSR com os dados da requisição que está no keystore. O arquivo será utilizado para efetuar o pedido do certificado juntamente com a certificadora. Algumas certificadoras possibilitam a inclusão direta do arquivo na solicitação on-line do certificado e outras disponibilizam um campo para ser incluído o conteúdo do arquivo CRS gerado, o conteúdo completo desde -----BEGIN NEW CERTIFICATE REQUEST----- até -----END NEW CERTIFICATE REQUEST-----

Para dar continuidade na solicitação de emissão do certificado, precisa-se executar o comando abaixo:
Comando 2:
keytool -certreq -keyalg RSA
- alias certificado -file C:\ssl\definaonome.csr -keystore C:\ssl\nomedefinidonocomando1.kdb

Importante

  • No comando é utilizado o parâmetro -alias certificado, este alias obviamente tem que ser o mesmo alias utilizado no comando 1.
  • O caminho para o .csr C:\ssl\ é válido e o arquivo definaonome.csr não existe e será gerado com após a execução do comando.
  • A senha solicitada na execução do comando a senha do keystore que foi cadastrada no comando 1.

4.png

1.2 Emissão do certificado junto aos órgãos responsáveis.
Após gerar o arquivo do comando 2, será necessário entrar em contato com os órgãos emissores de certificados SSL para a geração de uma chave publica.
Todo certificado SSL segue uma estrutura, uma sequência, que se resume em gerado para e gerado por
Exemplo: o certificado gerado para www.dominio.com.br foi gerado por Certificadora Intermediário e o certificado gerado para Certificadora Intermediário foi gerado por Certificadora Root, portanto para o funcionamento do seu certificado é necessário instalar, importar para o keystore, todos os certificados que fazem parte da estrutura, também conhecidos como raízes do certificado. Obviamente que cada certificadora segue uma estrutura diferente.
Para você identificar a estrutura correta do seu certificado, .cer, abra o seu certificado, dois cliques, na aba detalhes, mostrar tudo, localize o campo assunto, subject; neste campo estão as informações gerado para, localize o campo emissor, Issuer; neste campo estão as informações gerado por; sendo assim até chegar ao certificado root da certificadora. Enquanto você aguarda da certificadora a validação do seu CSR e a geração do seu certificado podemos ir instalando, importando, as raízes do certificado.
O pedido de SSL junto aos órgãos certificadores deve seguir o procedimento descrito no próprio site deles.
Neste exemplo, vamos usar um certificado emitido pelo site CACerts.org.
Para isto, será necessário abrir o arquivo criado no comando 2 no notepad e inseri-lo no site da emissora do certificado, para gerar a chave pública.

5.png

Após submeter o arquivo do comando 2 no site da certificadora, você receberá por e-mail ou no próprio site o conteúdo ou o arquivo da chave pública.
Caso receba o arquivo, basta baixa-lo e armazena-lo na pasta junto com os outros arquivos.
Caso receba o conteúdo, crie um arquivo com o mesmo nome definido no comando 2 porém com a extensão .cer.

6.png

Até este momento, você deverá possuir os seguintes arquivos na sua pasta, sendo que os nomes podem variar de acordo com o que você informou:

7.png

1.3 Importando as chaves de cadeia dos certificados
Como explicado anteriormente, para fechar a cadeia de Emitido para e Emitido Por, nós precisamos incorporar no nosso arquivo gerado no comando 1 as chaves ROOT e INTER.
Estes certificados ROOT e INTER são disponibilizados pela empresa emissora do seu certificado SSL.
Neste exemplo, vamos usar o da CACerts.org:

8.png

Vamos baixar estes arquivos salvar o Class 1 como root.crt e o Class 3 como inter.crt.
Desta forma teremos os arquivos até agora:

9.png

Para importar os certificados precisamos executar os comandos abaixo. Deve-se seguir a sequencia de importar primeiro o Root, depois o Inter e por último a chave pública:
Comando 3:
keytool -import -keystore C:\ssl\nomedefinidonocomando1.kdb -alias Root -trustcacerts -file C:\ssl\root.crt

Informar a senha definida no comando 1.

10.png

Comando 4:
keytool -import -keystore C:\ssl\nomedefinidonocomando1.kdb -alias Primary -trustcacerts -file C:\ssl\inter.crt

11.png

Informar a senha definida no comando 1.
Importante 

  •  Sempre começar pelo root, e depois ir seguindo a sequencia.
  • Os certificados raízes estão disponíveis no site das certificadoras.
  • Os certificados raízes deverão ser importados para o keystore gerado no comando 1.
  • A senha solicitada na execução do comando a senha do keystore que foi cadastrada no comando 1.
  • Cada certificado raiz é importado para um alias diferente.
  • O seu certificado pode ser enviado de diversas formas pela certificadora, algumas enviam o arquivo .cer .pem .crt e outras encaminham no corpo do e-mail. Para os casos dos arquivos é só salvar o arquivo e instalar, importar, para os casos que o certificado está no corpo do e-mail basta copiar o conteúdo desde -----BEGIN CERTIFICATE----- até -----END CERTIFICATE----- e através do notepad salvar um arquivo com este conteúdo no formato .cer .crt .pem. Com o certificado em mãos é hora de instalar, importar, para o mesmo keystore gerado no comando 1 e para o mesmo alias utilizado no comando 1.

Comando 5:
keytool -import -trustcacerts -keystore C:\ssl\nomedefinidonocomando1.kdb -alias certificado -file C:\ssl\meucertificadosalvodoitem1.1.2.cer

12.png

Importante

  • A senha solicitada na execução do comando a senha do keystore que foi cadastrada no comando 1.
  • No comando é utilizado o parâmetro -alias certificado, o certificado deverá ser importado para o alias utilizado na criação do CSR no comando 1.
  • O arquivo meucertificadosalvodoitem1.1.2.cer é o que foi gerado no tópico 1.2.

1.4 Validando a importação dos certificados
Para verificar se os certificados foram importados corretamente, seguir com o comando abaixo:

Comando 6:
keytool -list -keystore C:\ssl\nomedefinidonocomando1.kdb -v > C:\ssl\list.txt


Informar a senha definida no comando 1.

13.png

Importante verificar que foram importados os 3 certificados.

1.2 Configuração do Tomcat
Este manual prevê a utilização da implementação JSSE para o site seguro.
Para dar continuidade, precisa alterar o arquivo de configuração do tomcat. 
O arquivo de configurações se localiza em <INSTALLDIR>/server/conf/server.xml, sendo <INSTALLDIR> o diretório de instalação do SmartClient HTML.
Abra ele e localize a chave <Connector ... />. Edite conforme o exemplo abaixo.

<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="9443"
maxThreads="200"
scheme="https"
secure="true"
SSLEnabled="true"
keystoreFile="C:\ssl\fidelix_me.kdb"
keystorePass="totvs@123"
truststoreFile="C:\ssl\fidelix_me.kdb"
truststorePass="totvs@123"
clientAuth="want"
sslProtocol="TLS" />

Onde:

  • Protocol: Pode variar de acordo com a configuração do seu ambiente, para mais detalhes acesse: Escolhendo o Conector
  • Port: Deve-se definir a porta de comunicação para o site seguro. O padrão é utilizar 443
  • Keystorefile: Local onde foi armazenado o certificado emitido.
  • Keystorepass: Senha definida no comando 1.
  • Truststorefile: Local onde foi armazenado o certificado emitido.
  • Truststorepass: Senha definida no comando 1.
  • ClientAuth: Esta informação pode variar entre:
    • Want: Ao acessar o SmartClient HTML, será solicitado o e-CPF, caso o usuário informe fará a autenticação automática, caso o usuário cancele, aparecerá a tela de login normal
    • True: Sempre solicitará o e-CPF para o usuário quando acessar o SmartClient HTML, caso o usuário cancele, não abrirá o portal.
    • False: Não será solicitado o e-CPF ao usuário, e permitirá apenas o acesso via usuário e senha.

Importante
Para uso em exemplo, utilizou-se o domínio Fidelix.me. Onde este domino é válido porém não possui instalado o SCHTML.
Para isto, precisamos apontar nosso domínio Fidelix.me para o IP local, alterando o arquivo C:\Windows\System32\drivers\etc\hosts.

image2016-3-21_18_17_29.png

Saiba mais
1.3 Configurando e testando o e-CPF
Para configurar a utilização do e-CPF deve-se seguir os passos do TDN conforme link abaixo:
Tomcat - Configuração de acesso com e-CPF

Glossário 
SSL - Secure Socket Layer
SC - Smart Client 
JSSE - Java Secure Socket Extension
HTML - HyperText Markup Language
E-CPF - Cadastro de Pessoas Físicas Eletrônico
HTTPS - Hyper Text Transfer Protocol Secure
SCHtml - Smart Client HyperText Markup Language
CSR - Certificate Signing Request
URL - Endereço Web 
SDK - Software development kit 
CER - Formato Texto
CN - Common Name
IP - Internet Protocol
TDN - TOTVS Developer Network 

 

 

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _