Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.



Informações
titleAtençãoNota:

Esta página foi revisada para considerar as configurações do TOTVS Fluig Plataforma na atualização 1.6.5 - Liquid ou superior.

Caso possua uma atualização 1.6.4 - Waterdrop ou inferior, acesse: Configuração HTTPS da release 1.6.0 a 1.6.4.

Nota
titlePlataforma em Cloud

Clientes cloud precisam entrar em contato com o time de Cloud para que eles realizem esse procedimento.

Dica
titleDica!

Caso encontre dificuldades para cadastrar o serviço, essa documentação pode lhe ajudar: Resolução de inconsistência (PKIX path validation failed) ao cadastrar serviço.


Índice
outlinetrue
exclude.*ndice
stylenone

...

O objetivo deste guia é apresentar os passos necessários para utilização do TOTVS Fluig Plataforma sobre com o protocolo HTTPS.


Pré-requisitos

...

Para o certificado ser válido para a internet, este deve ser emitido para um domínio específico (WildCard) ou para um host deste domínio, o que torna obrigatório configurar a plataforma com o mesmo domínio do certificado caso deseje o uso de HTTPS (ex: *.suaempresa.com.br).

Informações
titleNota:

Se o certificado for vinculado ao Fluig e o acesso continuar sendo via IP (e não pelo domínio), constantes mensagens de certificado não confiável serão apresentadas, pois o navegador tentará validar a URL de acesso com o domínio do certificado, retornando erro.

Caso sua empresa ainda não possua nenhum certificado, o mesmo deve ser adquirido de uma autoridade certificadora. Não é recomendado o uso de certificados self-signed (auto-assinado), já que alguns navegadores não aceitam este tipo de certificado e podem provocar comportamentos inesperados durante a utilização da plataforma.

Dica
titleDicas!


Configuração de HTTPS pelo wcmadmin

...

A partir da atualização Crystal Lake (1.7.1), a configuração de HTTPS pode ser realizada diretamente pelo Painel de controle da plataforma, para isso é necessário seguir os passos abaixo.

...

titlePlataforma em Cloud

...

para isso é necessário seguir os passos abaixo.


Deck of Cards
historyfalse
idPassos_wcmadmin
Card
labelPasso 1
  • Acessar a plataforma com o usuário wcmadmin.
  • No menu principal, acionar Painel de Controle, logo depois verificar o agrupador WCM e acionar Configurações do sistema.

Card
labelPasso 2
  • Na aba Portal, marcar a opção HTTPS no campo Protocolo.
Painel

Será apresentada uma mensagem informando que, ao alterar o protocolo para HTTPS, será necessário configurá-lo. 

  • Acionar Configurar para prosseguir com a configuração em tela.

Card
labelPasso 3
  • Selecionar no campo Plataforma como será configurado o protocolo HTTPS. As opções são: Apache, Nginx ou TOTVS Fluig Plataforma. 
Painel

A opção Apache ou Nginx é utilizada quando a plataforma é configurada através de um proxy reverso. Sempre recomendamos configurar um ambiente distribuído (com Apache/Nginxtopologia DMZ) para reforçar a segurança de seu ambiente. Para mais detalhes consulte a documentação de Configuração de Proxy Reversoreverso.

  • Configurar o certificado digital de acordo com a opção escolhida:


Column
width48%

TOTVS Fluig Plataforma


 Veja a imagem

Preencha os campos abaixo:

  • Certificado
    Selecione o certificado digital que será utilizado para estabelecer a conexão segura da plataforma. Os formatos de arquivos permitidos são: .crt, .pem, .p12, p12 e .pfx
  • Senha
    Informe a senha do certificado digital
    Informe a senha do certificado digital para estabelecer a conexão segura da plataforma.
  • Caminho da chave
    Informe o caminho completo (com extensão), da chave privada do certificado para estabelecer a conexão segura da plataforma.
Column
width2%


Column
width50%

Apache ou Nginx


 Veja a imagem

Primeiramente, preencha os campos abaixo:

  • Caminho do certificado
    Informe o caminho completo (com extensão .crt, .pem ou .p12), do certificado digital gerado para estabelecer a conexão segura da plataforma. 
  • Caminho da chave
    Informe o caminho completo (com extensão .key ou .pem), da chave privada do certificado para estabelecer a conexão segura da plataforma.

Após isso, acione a opção Gerar arquivo para gerar um template com as configurações HTTPS.

Por último, baixe o arquivo gerado e utilize para finalizar a configuração na plataforma selecionada (Nginx ou Apache).

Card
labelPasso 4
  • Acionar Salvar.
Painel

Serão realizadas algumas verificações, para validar se o certificado está correto, se a senha informada corresponde ao certificado, entre outras. Se estiver tudo certo, a plataforma realiza as alterações necessárias para concluir a configuração. Ao final, será apresentada a mensagem de sucesso. 

Card
labelPasso 5
  • Reiniciar os serviços da plataforma.
Painel

Após configurar o HTTPS na instalação da plataforma, é recomendável conferir se está funcionando corretamente. O teste pode ser feito através da ferramenta SSL Checker.

Com a configuração, será possível acessar também o aplicativo Fluig Mobile com HTTPS, sem necessidade de configurações adicionais.

...

Deck of Cards
effectDuration0.5
historyfalse
idssl
effectTypefade
Card
defaulttrue
id1
labelPasso 1


  • Parar os serviços do Fluig (fluig, fluig_indexer, fluig_RealTime e cache, caso estiver utilizando cache externo e.g: MemCached ou redis).


Card
defaulttrue
id2
labelPasso 2


  1. No arquivo domain.xml, localizado em [Instalação Fluig]/appserver/domain/configuration, incluir a tag <https-listener> no subsystem "undertow". Não deve ser retirada a tag contendo as configurações HTTP.
  2. Na tag HTTP, acrescente o atributo proxy-address-forwarding="true" conforme mostrado abaixo:
  3. Caso deseje restringir o tráfego de cookie de sessão em conexões seguras (HTTPS), basta incluir nas configurações do subsystem undertow a tag session-cookie informando o atributo secure ="true". (Opcional)

    Dica
    titleDica!

    A partir da atualização Crystal Lake (1.7.1), é possível habilitar a opção Flags "HttpOnly" e "Secure"

    . (Opcional)

    nos cookies nas Configurações do sistema, não sendo mais necessário definir essa configuração manualmente.

Bloco de código
languagexml
themeEclipse
titledomain.xml
<subsystem xmlns="urn:jboss:domain:undertow:3.1">
	<...>
	<server name="default-server">
		<http-listener max-post-size="1073741824" name="default" socket-binding="http" proxy-address-forwarding="true"/> <!-- 2- Adicionar nesta linha o atributo -->
		<https-listener max-post-size="1073741824" name="https" secure="true" security-realm="TOTVSTech" socket-binding="https"/> <!-- 1- Incluir esta linha para validacao do certificado -->
		<...>
	</server>
	<servlet-container name="default" stack-trace-on-error="local-only">
		<...>
		<session-cookie http-only="true" secure="true"/> <!-- 3- Incluir esta linha para restringir o trafego de cookie de sessao -->
	</servlet-container>   
	<...>
</subsystem>
Card
id3
labelPasso 3

Âncora
alias
alias

  • A partir da atualização 1.7.0 (Lake), a tag <security-realm> não existirá mais, porém pode ser incluída conforme desejo do usuário em habilitar o uso do HTTPS. Nesse caso, será preciso procurar a tag <security-realm> no arquivo host.xml.

Disponibilizamos as instruções de configuração do repositório de certificados no formato PKCS12 (p12) portanto, siga as instruções abaixo:
  • Incluir a tag <server-identities></server-identities> juntamente com <ssl> e o <keystore> conforme exemplicado no código abaixo;
  • No atributo path, informe o diretório do repositório de certificados (keystore.p12).
  • Em key-password e keystore-password, substitua a valor "suasenha" pela senha utilizada na criação do repositório de certificados (keystore).
Nota
titleAtençãoImportante!

Em <security-realm name="ApplicationRealm"> também contém as configurações de certificado porém, suas informações não devem ser modificadas, deixando os valores padrões salvos.

Bloco de código
languagexml
themeEclipse
titlehost.xml
<security-realm name="TOTVSTech">
  <server-identities>
    <ssl>
      <keystore path="certs\fluig.p12" keystore-password="suasenha" key-password="suasenha" relative-to="jboss.domain.config.dir"/>
    </ssl>
  </server-identities>
</security-realm>
Dica
titleDica!

O diretório "certs" se refere à pasta onde os certificados são guardados. Recomendamos que esse diretório seja criado dentro do volume, para evitar que, em uma atualização ou migração de tecnologia, a pasta seja afetada.

Dúvidas sobre a utilização do OpenSSL ou sobre os comandos de exportação do PKCS12 (p12), consulte a documentação Utilizando OpenSSL para configurar HTTPS.

Card
id4
labelPasso 4


  • Iniciar novamente os serviços do Fluig em sua ordem correta (cache, caso estiver utilizando cache externo e.g: MemCached ou redis, fluig_indexer, fluig_RealTime e fluig).
  • O acesso será realizado via HTTPS, na porta 8443.


Card
id5
labelPasso 5


  • Após configurar o HTTPS na instalação do TOTVS Fluig Plataforma, é necessário ajustar o domínio de acesso com o novo protocolo.
  • Para isto, será necessário acessar a plataforma com o usuário wcmadmin, e nas configurações do sistema, na aba Portal, alterar o Protocolo para HTTPS. Caso não esteja utilizando um web server, é necessário também informar a Porta de acesso do servidor da plataforma. Para mais informações, consulte a documentação Gerenciar configurações do sistema.
Dica
titleDica!

Você também pode conferir se sua configuração HTTPS está funcionando corretamente, através da ferramenta: https://www.sslshopper.com/ssl-checker.html


Nota
titleImportante!
Nota

É recomendável revisar o limite de tempo das requisições lentas, como forma de trazer mais segurança à plataforma. Acesse a documentação de Prevenção de ataques DDoS Slow Post e Slow Headers e saiba mais.

...

Deck of Cards
effectDuration0.5
historyfalse
idstudio
effectTypefade
Card
defaulttrue
id1
labelPasso 1


  1. No diretório em que o Fluig Studio foi instalado, editar o arquivo eclipse.ini;
  2. Adicione a linha abaixo no final do arquivo.
Bloco de código
languagebash
themeEclipse
titleeclipse.ini
-Djsse.enableSNIExtension=false
Card
id2
labelPasso 2


  • Para chamadas de Web Service é importante configurar o arquivo de configuração domain.xml localizado em [Instalação Fluig]/appserver/domain/configuration.
  • Procurar o trecho abaixo:
Bloco de código
languagexml
themeEclipse
titledomain.xml
...
<subsystem xmlns="urn:jboss:domain:webservices:2.0">
    <modify-wsdl-address>true</modify-wsdl-address>
    <wsdl-host>10.80.73.203</wsdl-host>
    <endpoint-config name="Standard-Endpoint-Config"/> 
...
  • Alterar para:
Bloco de código
languagexml
themeEclipse
titledomain.xml
...
<subsystem xmlns="urn:jboss:domain:webservices:2.0">
    <modify-wsdl-address>true</modify-wsdl-address>
    <wsdl-host>jbossws.undefined.host</wsdl-host>
    <wsdl-uri-scheme>https</wsdl-uri-scheme>
    <wsdl-secure-port>443</wsdl-secure-port>       
    <endpoint-config name="Standard-Endpoint-Config"/>
...
Nota
titleImportante!

Alterar a porta da tag "<wsdl-secure-port>443</wsdl-secure-port>" para a porta de acesso utilizada (Portas padrões 443 e 8443).

...

O serviço responsável pelas notificações em tempo real (entrega de dados do servidor para os clientes) também deve ser preparado para funcionar via HTTPS, quando essa configuração for realizada.

Nota
titleAtençãoImportante!
  • Não é permitido utilizar barra invertida ou contra barras "\" para informar os caminhos do certificado e chave privada no arquivo package.json. Caso for utilizada, o serviço de RealTime (Node) não irá subir.
  • Caso o certificado possua uma senha na chave informada, é necessário remover a senha. Caso contrário, o Node.js não será iniciado.
  • Se o servidor possuir proxy, é necessário liberar as portas do serviço de notificações em tempo real para SSL nesse proxy.
  • Caso seu certificado e chave estiverem no formato de repositório de certificados PKCS12 (p12), consulte a documentação Utilizando OpenSSL para configurar HTTPS para obter os comandos de exportação dos mesmos. Para isso, é preciso que o pacote OpenSSL esteja instalado no servidor.
  • Importante mencionar que a linha que contém a porta nas configurações do SSL no arquivo package.json deve ser apagada.

...

Atributo

Descrição

usessl

Informar true, para caracterizar a utilização de configuração HTTPS.

key

Informar o caminho do arquivo de chave.

certInformar o caminho do arquivo de certificado.
caInformar o caminho do arquivo de certificado.
passphraseEsse parâmetro não é obrigatório. Caso tenha sido usada uma senha para geração do certificado, pode ser necessário adicionar esse parâmetro indicando a senha.

Após a alteração do package.json, o serviço RealTime (Node.js) deve ser reiniciado.

...

PlataformaComo consultar
iOSA lista de certificados confiáveis para o iOS está disponível aqui.
Android

É necessário verificar no aparelho em: Configurações > Segurança > Credenciais Confiáveis

Na Aba Sistema existe a lista de certificados confiáveis para aquela versão do Android.

Nota
titleAtençãoImportante!

Cada versão do Android pode ter uma lista de certificados confiáveis diferente.

...

Em caso de dúvidas, procure a unidade certificadora para assegurar que seu certificado é homologado pelas plataformas mencionadas acima.

Nota
titleImportante!

Caso o seu certificado não esteja na lista dos homologados, realize o procedimento descrito no item Procedimentos de configuração de SSL, mas lembre-se de que o arquivo .p12 que você utilizar deve conter também o certificado intermediário. Para gerar o arquivo .p12 com todos os certificados juntos siga esses passos:

  1. Para gerar o Bundle (intermediário + root):
    cat intermediario.pem root.pem > bundle.pem

  2. Para gerar o PEM do fluig.com:
    cat fluig.crt fluig.key bundle.pem > fluig.pem

  3. Para gerar o PKCS#12 do fluig.com:
    openssl pkcs12 -export -out fluig.p12 -inkey fluig.key -in fluig.crt -certfile bundle.pem
Nota
titleImportante!

Para acessar a plataforma com HTTPS através do Fluig Mobile, basta adicionar uma conta com a nova URL do portal no aplicativo. Para mais detalhes sobre o acesso, confira a documentação por sistema (Android ou iOS).

HTML
<script>
	$("b:contains('oculto')").parent().parent().hide();
</script>

...