01. DADOS GERAIS
Produto: | TOTVS Saúde Planos |
---|---|
Linha de Produto: | Linha Datasul |
Segmento: | Saúde |
Módulo: | Portal do Prestador |
Função: | Login Check-in e Elegibilidade Menu Híbrido Tela de configurações |
País: | Brasil |
Requisito/Story/Issue (informe o requisito relacionado): | DSAUGPSPED-5029 DSAUGPSPED-5030 DSAUGPSPED-5389 DSAUGPSPED-5079 |
02. SITUAÇÃO/REQUISITO
Com o objetivo de dar continuidade à estratégia de evolução tecnológica dos produtos da linha Datasul, é necessário converter o módulo Autorizador WEB para a tecnologia HTML.
03. SOLUÇÃO
Foi realizada a implementação das funcionalidades destacadas abaixo, dando origem ao novo módulo denominado Portal do Prestador:
- Login - Documento de Referência - Login
- Check-in e Elegibilidade - Documentação de Referência - Check-in e Elegibilidade
- Registro de Consulta - Documentação de Referência - Registro de Consulta
- Menu Híbrido - Documento de Referência - Menu Híbrido
Além das funcionalidades acima, o processo de parametrização das propriedades do Autorizador WEB foi reformulado para o Portal do Prestador. No novo módulo, foi criada a tela Configurações do Portal do Prestador (hac.portPrestConfig) no Datasul - Documentação de Referência - Configuração do Portal do Prestador.
04. Procedimentos para Implantação
A implementação descrita no documento estará disponível a partir da atualização da mídia 12.1.2403 no cliente. Ao realizar a atualização para a mídia citada, o ambiente do cliente será atualizado com os seguintes artefatos:
- totvs-hgp-haw-auth.war: Artefato que contém a camada responsável pela autenticação do módulo Portal do Prestador. O fluxo de autenticação e autorização é baseado em OAuth2 e utiliza recursos já disponíveis no framework Datasul. Os passos para a configuração do modelo de autenticação estão descritos nas sessões subsequentes deste documento.
- totvs-hgp-portal-prestador.war: Artefato com a camada de apresentação do módulo Portal do Prestador;
- totvs-hgp-port-prest-checkin.war: Artefato com a implementação do Check-in;
- totvs-hgp-port-prest-consultation-register.war: Artefato com a implementação do Registro de Consulta;
- Diretório /portprest contendo os compilados responsáveis pelo backend da aplicação.
Para o correto funcionamento do módulo, é obrigatório a execução dos passos descritos abaixo.
4.1 Configuração do aplicativo OAuth2
Acessar a tela Propriedades do sistema e buscar pela opção Propriedades OAuth2:
Acessar a opção Propriedades OAuth2 e na aba Client Credentials adicionar um novo aplicativo, informando os dados abaixo:
Após salvar o aplicativo, na tela principal de configurações das propriedades OAuth2, é possível consultar o registro cadastrado.
Mais informações sobre a configuração OAuth2 do framework Datasul podem ser consultadas no link: CFG - OAuth2.
A partir da versão 12.1.2411.1, com expedição em 22/11/2024 e versão 12.1.2407.9 com expedição em 13/01/2024, a configuração do RO Credentials descrita abaixo não é necessária.
O aplicativo também que requer outra configuração de OAuth2 para gestão da impressão de documentos PDF como por exemplo o Comprovante de registro de consulta.
Para isso acesse, no mesmo programa a aba RO Credentials adicionar um novo aplicativo, informando os dados abaixo:
Após salvar o aplicativo, na tela principal de configurações das propriedades OAuth2, é possível consultar o registro cadastrado.
Concluído o cadastro será gerado um ID que será utilizado posteriormente na configuração do Tomcat.
4.2 Configuração do token JWT utilizado na autenticação por OAuth2
Ainda na tela Propriedades do sistema, acessar a área Propriedades Jwt:
Na aba Datasul, parametrizar o campo Expiração, que indica a validade do token JWT gerado. O tempo de expiração do token JWT indica a duração da sessão do usuário, ou seja, após o período de tempo parametrizado neste campo, o usuário é direcionado novamente para a página de login do módulo e será necessário nova autenticação para a utilização do módulo:
Mais informações sobre a configuração do token JWT do framework Datasul podem ser consultadas no link: CFG - JWT.
4.3 Configuração do broker escalável
É possível definir um servidor PASOE dedicado ao Portal do Prestador para execução da camada backend (progress) da aplicação.
Para realizar essa configuração, acessar o programa BTB962AA (Parâmetros Foundation) e realizar a inclusão de novo registro vinculado à empresa do cliente, com os seguintes parâmetros:
- Aplicativo: *
- Alias: totvs-hgp-portal-prestador
- Servidor Aplicação: informar a URL do PASOE que será dedicado ao Portal do Prestador.
Caso a configuração descrita nesta seção não seja realizada, o sistema utilizará os recursos do PASOE compartilhados com o ERP.
4.4 Configuração do servidor Tomcat
Para o correto funcionamento do módulo Portal do Prestador, é necessário configurar as seguintes propriedades no arquivo de inicialização do servidor Tomcat:
- TOTVS_HOST: Informar a URL do ambiente
- TOTVS_USERNAME: Informar um usuário do sistema.
- TOTVS_PASSWORD: Informar a senha do usuário informado no parâmetro acima.
- TOTVS_PORT_PREST_OAUTH2_USER: Informar o valor do campo 'Id cliente' gerado no passo anterior nas configurações do aplicativo OAuth2.
- TOTVS_PORT_PREST_OAUTH2_PASS: Informar o valor do campo 'Senha cliente' gerado no passo anterior nas configurações do aplicativo OAuth2.
- TOTVS_PORT_PREST_COMPANY_ID: Informar o código da empresa onde o servidor dedicado do portal do prestador está cadastrado. Conforme descrito na seção 4.3 Configuração do broker escalável.
- TOTVS_AUTH_TOKEN_SECRETKEY: Informar a chave secreta a ser utilizada na geração do token JWT para integração com o Autorizador WEB clássico. Informar uma chave com, no mínimo, 32 bytes de tamanho.
- TOTVS_AUTH_TOKEN_VALIDITY: Informar o número de segundos de validade do token JWT para integração com o Autorizador WEB clássico. Informar o mesmo valor parametrizado na sessão anterior para a duração do token JWT da autenticação OAuth2.
- TOTVS_PORT_PREST_RESOURCE_OWNER_ID: Informar o "ID" gerado no passo anterior nas configurações do aplicativo OAuth2, aba RO Credentials. Para clientes que estejam utilizando a versão 12.1.2411.1 ou superior, não se faz necessário cadastrar essa propriedade.
Exemplo de configuração:
Observações
Também é possível definir as propriedades acima nas variáveis de ambiente do sistema operacional.
4.5 Configuração das propriedades do Autorizador WEB clássico
Para o correto funcionamento da integração entre o Autorizador WEB clássico com o Portal do Prestador é necessário o cadastramento das seguintes propriedades:
- com.totvs.html.framework.app.jwt.expirationTime: Informar o mesmo valor parametrizado na propriedade TOTVS_AUTH_TOKEN_VALIDITY, descrita na sessão anterior deste documento.
- com.totvs.html.framework.app.jwt.secret: Informar o mesmo valor parametrizado na propriedade TOTVS_AUTH_TOKEN_SECRETKEY, , descrita na sessão anterior deste documento.
4.6 Configuração do ambiente do Autorizador WEB para correto funcionamento da integração com o Portal do Prestador
Em virtude do funcionamento dos navegadores modernos, em que estes não permitem que cookies de sites de terceiros sejam armazenados para posterior utilização, é necessário que o cliente possua uma configuração específica dos ambientes do Portal do Prestador e Autorizador WEB.
Configuração recomendada
É recomendado ao cliente utilizar ambos os ambientes em contexto seguro (HTTPS) e sob o mesmo domínio, exemplo:
Portal do Prestador: https://portaldoprestador.operadoraxyz.com.br/totvs-hgp-portal-prestador
Autorizador WEB: https://autorizador.operadoraxyz.com.br/autorizador.
Desta forma, como ambos os sites ficam hospedados sob o domínio 'operadoraxyz.com.br', o navegador não irá barrar o trafego dos cookies necessários para a integração entre os sistemas.
Configuração alternativa
A configuração descrita nesta seção é recomendada apenas para ambiente de homologação.
Como alternativa, o cliente pode utilizar apenas o Autorizador WEB com contexto seguro (HTTPS), permanecendo com o Portal do Prestador sem contexto seguro (HTTP).
Para que essa configuração surta o efeito desejado, é necessário parametrizar a propriedade com.totvs.wac.jsessionid.secure do Autorizador WEB como true. Desta forma, este módulo irá devolver o cookie de sessão JSESSIONID com o indicador 'SameSite=None; Secure', fazendo com que o navegador entenda que o cookie pertence a um contexto seguro.
Esta configuração possui um efeito colateral: como o Autorizador WEB sempre irá considerar o cookie de sessão como seguro, caso o cliente tente acessar o módulo Autorizador através do IP do ambiente sem contexto seguro, o acesso não ocorrerá de forma satisfatória.
Observação: a configuração alternativa, descrita acima, estará disponível a partir da mídia 12.1.2507.
4.7 Configuração do proxy reverso do Portal do Prestador
Em virtude de o módulo Portal do Prestador utilizar o conceito de módulos federados, o que permite a divisão do módulo em múltiplos arquivos WARs, é necessária a parametrização dos seguintes direcionamentos no proxy reverso:
- /totvs-login-oauth2: módulo utilizado pela camada de autorização;
- /totvs-hgp-haw-auth: módulo utilizado pela camada de autorização;
- /totvs-hgp-portal-prestador: módulo principal do Portal do Prestador;
- /totvs-hgp-port-prest-checkin: módulo responsável pela funcionalidade Checkin;
- /totvs-hgp-port-prest-consultation-register: módulo responsável pela funcionalidade Registro de Consulta;
- /totvs-hgp-port-prest-guides-batch: módulo responsável pela funcionalidade Upload XML TISS. Parametrização necessária a partir da versão 12.1.2503;
- /totvs-hgp-port-prest-restriction-appeal: módulo responsável pela funcionalidade Recurso de Glosa. Parametrização necessária a partir da versão 12.1.2503;
4.8 Configuração do proxy reverso do Autorizador WEB
Para clientes que utilizam Nginx como proxy reverso para o Autorizador WEB, identificamos a seguinte situação quando o ambiente estiver publicado com HTTPS:
Ao realizar login no módulo, o sistema executa a requisição abaixo:
https://autorizador.totvs.com.br/autorizador/login?j_provider=usuario.totvs&j_username=111&j_password=abcds
Na sequência, é realizada a seguinte requisição, onde o protocolo utilizado foi HTTP, não mantendo o protocolo HTTPS conforme a requisição anterior:
http://autorizador.totvs.com.br/autorizador/j_security_check?j_username=111/%3C;%3E/usuario.totvs&j_password=abcds
Esse comportamento afeta a integração do Portal do Prestador com o Autorizador WEB, fazendo com que as chamadas ao Autorizador híbrido não funcionem conforme esperado.
Para contorno à essa situação, é necessário remover a seguinte configuração no Nginx do cliente:
"proxy_set_header Host $http_host;"
A remoção desta configuração faz com que o Autorizador WEB mantenha o protocolo original (no caso HTTPS) para todas as requisições.
4.9 Importação do certificado HTTPS do Autorizador WEB
Quando o ambiente do Autorizador WEB estiver utilizando HTTPS, é necessário importar o certificado do Autorizador WEB no Progress do PASOE utilizado para o Portal do Prestador. Essa configuração se faz necessária para o correto funcionamento entre a integração do Portal do Prestador com o Autorizador WEB clássico.
Para mais informações sobre a importação do certificado no PASOE, acesse: Importação de certificados HTTPS.
Uma vez finalizadas as configurações descritas anteriormente, para acessar o módulo utilizar a seguinte URL: http://<servidor>:<porta>/totvs-hgp-portal-prestador/#/login.