01. DADOS GERAIS

Produto:

TOTVS Saúde Planos

Linha de Produto:

Linha Datasul

Segmento:

Saúde

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:

Descrição

Download (Linux)

Download (Windows)

Java 6u18 customizado para suportar TLS 1.2
Java 6u45 customizado para suportar TLS 1.2

WIN-jdk1.6.0_45x64_TLS1.2.7z.001

WIN-jdk1.6.0_45x64_TLS1.2.7z.002

WIN-jdk1.6.0_45x64_TLS1.2.7z.003

WIN-jdk1.6.0_45x64_TLS1.2.7z.004


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.


  1. Baixar os arquivos do Java nos links acima, de acordo com seu Sistema Operacional.

  2. 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:
  3. 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.
  4. 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:
  5. No arquivo run.conf que se encontra na pasta bin do Jboss:
  6. 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:

  1. Clonar a VM do seu Foundation Saúde, e utilizar a nova com TLS 1.2 para envio de mensagens à Unimed Brasil
  2. Criar uma cópia do seu Foundation Saúde na mesma VM, e configurar a nova com TLS 1.2


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.

  1. Derrubar o serviço Jboss do Foundation Saúde já existente. Ele precisa estar fora do ar para poder ser copiado corretamente.

  2. Limpar as pastas temporárias (log, temp, work e data) da instância, isso vai reduzir o tamanho e tempo da cópia. Ex:


  3. 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.

  4. 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:

  5. Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA_TLS1.2\bin\run.bat (ou run.sh):
    1. 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

    2. 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

    3. Retirar restrição da versão do TLS:
      • Se existir, retirar esta propriedade: -Dhttps.protocols=TLSv1

  6. Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA_TLS1.2\bin\run.conf:
    1. 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"

  7. 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:
  8. Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA_TLS1.2\server\default\conf\jboss-service.xml:
  9. Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA\server\default\deploy\ejb3.deployer\META-INF\jboss-service.xml:
  10. Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA\server\default\deploy\jboss-web.deployer\server.xml:
  11. Arquivo C:\totvs\foundation-saude\jboss-4.2.3.GA\server\default\deploy\properties-service.xml:
  12. 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:
  13. 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.


  14. 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.

    Exemplo antigo: http://cxs-squad-sus01.jv01.local:28080/htz-foundation/WsdPtuSenderWSv9000?wsdl                     
    Exemplo novo: http://cxs-squad-sus01.jv01.local:28090/htz-foundation/WsdPtuSenderWSv9000?wsdl

                       


    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: