
01. DADOS GERAIS
Produto: | |
---|
Linha de Produto: | |
---|
Segmento: | |
---|
Módulo: | HAT - Atendimento ao Cliente HAW - Autorizador Web |
---|
Função: | Manutenção de Guias Solicitação de Exames Solicitação de Internação Consulta Beneficiários Intercambio |
---|
País: | Brasil |
---|
Ticket: |
|
---|
Issue: | |
---|
02. SITUAÇÃO/REQUISITO
As implementações descritas neste documento correspondem as adequações efetuadas no TOTVS Saúde Planos - Linha Datasul para atender ao PTU Online 9.0.

Link para o comunicado completo
03. SOLUÇÃO
Conforme descrito no comunicado acima, à partir de 03/05/2023 a Unimed Brasil não aceitará mais protocolos inferiores a TLS 1.2.
A atual versão padrão do Java utilizada pelo Foundation Saúde (6u18 ou 6u45) somente tem suporte a TLS 1.0.
Portanto, para atender à nova necessidade, o Foundation Saúde precisará passar a utilizar uma versão customizada do Java 6, com suporte para TLS 1.2, disponibilizada neste documento.
Esta atualização não depende de aplicação de patch do Datasul. Apenas o Java deve ser atualizado. Portanto, pode/deve ser realizada o quanto antes. Recomenda-se atualizar no ambiente de protótipo, realizar as devidas validações e em seguida atualizar em Produção, sem a necessidade de esperar pela data de 03/05/2023, pois nesta data a Brasil apenas deixará de aceitar protocolos inferiores, mas desde já ela aceita o protocolo TLS 1.2. |
PACOTES PARA DOWNLOAD
Baixe os pacotes de acordo com a versão do Java que você já utiliza (6u18 ou 6u45) e Sistema Operacional.
Obs: cada versão está separada em 4 arquivos. Basta baixar todos e descompactar o arquivo com extensão 001:
ATUALIZAÇÃO DO JAVA NO FOUNDATION SAÚDE
- Antes de qualquer alteração, recomenda-se realizar backup, tanto da instalação atual do Java como do Jboss do Foundation Saúde.
- Recomenda-se instalar a nova versão sem sobrepor a anterior. Isso simplificará a gestão e os esforços caso seja necessário retornar à versão anterior.
|
- Baixar os arquivos do Java nos links acima, de acordo com seu Sistema Operacional.
- Descompactar no mesmo local onde já se encontra a versão anterior do seu Java, sem sobrepor arquivos. A sugestão do exemplo é apenas para manter os padrões:
- Se já existe c:\java\jdk1.6.0_18, então descompacte em c:\java\jdk1.6.0_18_TLS1.2
- Se já existe /usr/java/jdk1.6.0_18, então descompacte em /usr/java/jdk1.6.0_18_TLS1.2
- Após realizar backup do Jboss do Foundation Saúde, atualizar seu script de carga do Jboss do Foundation Saúde para considerar a nova versão do Java.
- Normalmente isso é tratado nos scripts com a variável de ambiente JAVA_HOME e/ou JAVA.
- No arquivo de start/configurações do seu Jboss (normalmente run.bat, run.sh ou run.conf), que se encontra na pasta bin do Jboss:
- Caso exista, eliminar o parâmetro abaixo, que indica restrição de TLS 1.0. Ao remover este parâmetro, a tomada de decisão sobre a versão de TLS passa a ser feita automaticamente pelo Java.
- No arquivo run.conf que se encontra na pasta bin do Jboss:
- Acrescentar o parâmetro -Dorg.bouncycastle.jsse.client.assumeOriginalHostName=true no JAVA_OPTS. Ex:
- JAVA_OPTS="-Xms128m -Xmx512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dorg.bouncycastle.jsse.client.assumeOriginalHostName=true"
- Após concluir as alterações acima e reiniciar o Jboss do Foundation Saúde, o mesmo estará recebendo e enviando mensagens utilizando o protocolo TLS 1.2.
04. SOLUÇÕES DE CONTORNO
Caso a nova versão do Java com TLS 1.2 gere conflitos de comunicação nas mensagens de entrada (sentido Brasil > Unimed), ou se o cliente optar por isolar uma instância do Jboss para ficar dedicada apenas a recebimento e outra para envio de mensagens para a Brasil, as orientações abaixo podem ser utilizadas para criar uma nova instância apartada do Jboss.
COMO CRIAR A NOVA INSTÂNCIA DO FOUNDATION SAÚDE
Existem duas formas para a criação da nova instância do Foundation Saúde:
- Clonar a VM do seu Foundation Saúde, e utilizar a nova com TLS 1.2 para envio de mensagens à Unimed Brasil
- Menor complexidade no ajuste de arquivos de configuração
- Maior consumo de recursos de hardware
- Criar uma cópia do seu Foundation Saúde na mesma VM, e configurar a nova com TLS 1.2
- Maior complexidade no ajuste de arquivos de configuração
- Menor consumo de recursos de hardware
Pontos de atenção para criar a nova instância do Foundation Saúde na mesma VM
Resumo: será feita uma cópia completa do Jboss já existente. Em seguida alguns arquivos serão alterados na nova versão.
- Derrubar o serviço Jboss do Foundation Saúde já existente. Ele precisa estar fora do ar para poder ser copiado corretamente.
- Limpar as pastas temporárias (log, temp, work e data) da instância, isso vai reduzir o tamanho e tempo da cópia. Ex:

- Fazer uma cópia da pasta inteira do Jboss. Novo nome sugerido, seguindo o padrão do exemplo: C:\totvs\foundation-saude\jboss-4.2.3.GA_TLS1.2.
- Carregar novamente o serviço do Foundation Saúde já existente.
A partir deste ponto, vamos configurar a nova cópia do Jboss do Foundation Saúde para trabalhar com TLS 1.2:
- Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA_TLS1.2\bin\run.bat (ou run.sh):
- Alterar para passar a considerar a nova versão do Java, instalada no passo anterior:
- Antes: set JAVA=C:\Java\jdk1.6.0_18\bin\java
- Depois: set JAVA=C:\Java\jdk1.6.0_18_TLS1.2\bin\java
- Obs: se a sua instalação não possui a linha acima, possivelmente está utilizando a variável de ambiente JAVA_HOME. Neste caso, declare a mesma no início do script apontando para a nova instalação do Java com TLS 1.2, mas não altere sua variável do sistema operacional, para não afetar seu Foundation Saúde já existente. Ex:
- Windows:
- set JAVA_HOME=C:\Java\jdk1.6.0_18_TLS1.2
- Linux:
- JAVA_HOME=C:\Java\jdk1.6.0_18_TLS1.2
- export JAVA_HOME
- Ajuste da nova localização da instância:
- Antes: set JAVA_OPTS=%JAVA_OPTS% -Ddatasul.framework.properties.dir=C:\totvs\foundation-saude\jboss-4.2.3.GA\server\default\conf
- Depois: set JAVA_OPTS=%JAVA_OPTS% -Ddatasul.framework.properties.dir=C:\totvs\foundation-saude\jboss-4.2.3.GA_TLS1.2\server\default\conf
- Retirar restrição da versão do TLS:
- Se existir, retirar esta propriedade: -Dhttps.protocols=TLSv1
- Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA_TLS1.2\bin\run.conf:
- Acrescentar o parâmetro -Dorg.bouncycastle.jsse.client.assumeOriginalHostName=true no JAVA_OPTS. Ex:
- JAVA_OPTS="-Xms128m -Xmx512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dorg.bouncycastle.jsse.client.assumeOriginalHostName=true"
- A partir deste ponto vamos alterar portas em arquivos de configuração, que precisam estar livres. É fundamental que o seu Foundation Saúde atual esteja no ar para testar as novas portas, garantindo que não haverão conflitos. Dica para verificar se uma porta está livre:
- Windows (cmd):
- netstat -ona | findstr <nr_porta>
- Linux (shell):
- netstat -ona | grep <nr_porta>
- Se os comandos acima não tiverem retorno, a porta está livre e pode ser utilizada.
- Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA_TLS1.2\server\default\conf\jboss-service.xml:
- Dica para identificar os pontos a serem alterados: procurar por port":


Anote o número da porta acima (no exemplo 21099). Será necessário atualizar no bin/service.bat (explicado a seguir).



- Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA\server\default\deploy\ejb3.deployer\META-INF\jboss-service.xml:
- Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA\server\default\deploy\jboss-web.deployer\server.xml:

Anote o número da porta acima (no exemplo, 28080): Esta será a porta para acesso http.
Será necessário atualizar também no bin/service.bat (explicado a seguir).

Anote o número da porta acima (no exemplo, 443): Está será a porta para acesso https.
Além da porta, ajustar o caminho correto do keystore na nova instância.

- Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA\server\default\deploy\properties-service.xml:

Ajustar o caminho correto do keystore na nova instância.
- Se você utiliza o arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA_TLS1.2\bin\service.bat para instalar o Jboss do Foundation Saúde como Serviço no Windows, atenção para estes ajustes ANTES de instalar o novo serviço:

SVCNAME: utilize um nome de serviço para distinguir a nova versão da antiga. Sugerido: adicionar -TLS1.2 ao final.
SVCDISP: utilize um display name para fácil distinção dos serviços.
SVCDESC: texto livre, onde podem ser adicionadas informações úteis, como as novas portas para acesso http e https. No exemplo acima, a porta http foi alterada de 28080 na instância antiga para 28090 na nova; a porta https é mudou de 443 na antiga para 9443 na nova.
- Nos pontos onde é tratado o arquivo r-<porta>.lock, ajustar para a nova porta http (no exemplo, mudou de 28080 para 28090):

- Nos pontos em que é tratado o shutdown do serviço, ajuste para a nova porta do NamingService (item 8 acima). No exemplo, mudou de 21099 para 29099.

- Após concluir estes ajustes, pode ser usada a instrução service.bat install para que o Jboss do novo Foundation Saúde seja instalado como serviço do Windows.
Após todas as configurações acima, por último é necessário modificar configuração da URL para a nova porta nos sistemas, onde no exemplo acima o http foi alterada de 28080 na instância antiga para 28090 na nova.
Ajustar no cadastro da área de ação na Administração do Sistema > Tabelas Básicas > Plano de Saúde a nova URL, atentando-se para a nova porta de acesso: 
|
|