Histórico da Página
01. DADOS GERAIS
Produto: | TOTVS Saúde Planos
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Linha de Produto: | | ||||||||||||||||
Segmento: | Saude | ||||||||||||||||
Módulo: | PLANO DE SAUDE SIGAPLS | ||||||||||||||||
Função: | Não se aplica | ||||||||||||||||
Ticket: | 7361972 | ||||||||||||||||
Requisito/Story/Issue (informe o requisito relacionado) : | DSAUBE-10407 |
02. SITUAÇÃO/REQUISITO
Implementada melhoria que permite o processo de validação do Token de Cartão virtual gerado por aplicativo.
O Token é uma senha numérica de 6 a 8 dígitos gerada por Aplicativo, que é informada pelo beneficiário no momento do atendimento e validada pelo sistema de Gestão ( PLS ), servindo como um segundo fator de autenticação, assegurando que quem está sendo atendido é mesmo o beneficiário portador da carteirinha informada.
03. SOLUÇÃO
Para que a validação seja possível, tanto o Aplicativo quanto o PLS devem ser capazes de gerar um mesmo Token para um mesmo usuário em um mesmo intervalo de tempo. Para isso, é necessário o compartilhamento, entre Aplicativo e PLS, de uma Chave (Seed) e alguns "parâmetros de alinhamento" para geração desse Token. Nesta implementação, esse compartilhamento é feito no momento do login.
04. DEMAIS INFORMAÇÕES
Criação de campo e do valid de alguns existentes.
...
O processo completo de Geração e Validação do Token Unimed , pode ser visualizado a seguir.
Dessa forma, esta implementação abrange as seguintes funções e processos:
...
Descrição: Retorna Seed customizado para ser utilizado na Geração do Token Unimed. O mesmo é gravado no registro do usuário (BA1_TKSEED):
...
3 - Funções de Geração e Validação do Token utilizando algoritmo TOTP (RFC6238 - https://tools.ietf.org/html/rfc6238 ), seguindo a recomendação do Comitê Estratégico de Tecnologia da Informação da Unimed. Essas funções são responsáveis por gerar, no PLS, o mesmo Token do Aplicativo para um determinado intervalo de tempo, de acordo com os parâmetros de alinhamento, e compará-lo com o Token informado no atendimento:
...
- Seed Gerado para o Beneficiário 00010001000002006 = xOS8KQ9WPsTU23PjPbJD em formato texto, no momento do login;
- Utilizar site https://emn178.github.io/online-tools/base32_encode.html para transformar text em Base32. Resultado: PBHVGOCLKE4VOUDTKRKTEM2QNJIGESSE
3. Utilizar Base32 como input do site https://totp.danhersam.com/ para geração do Token TOTP. Resultado: 298014
4. Verificar durante atendimento que Token gerado no sistema é o mesmo que o gerado pelo site de verificação:
4 - Inclusão de novo Motivo de Críticas do Sistema específico para a validação do Token;
...
Caso não seja válido, o sistema exibirá críticas.
Caso o parâmetro MV_PLSCABC esteja ativado, o sistema permitirá a continuação do Atendiemento com status não autorizado e gravará as críticas. Caso contrário, o atendimento não poderá ser concluído.
...
Caso não seja válido, o sistema exibirá críticas.
Caso o parâmetro MV_PLSCABC esteja ativado, o sistema permitirá a continuação do Atendiemento com status não autorizado e gravará as críticas. Caso contrário, o atendimento não poderá ser concluído.
...
<respostaPedidoAutorizacaoWS xmlns="http://ptu.unimed.coop.br/schemas/V80_00">
...
...
</ans:servicoAutorizado>
No sistema:
X6_VAR | X6_TIPO | X6_DESCRIC | X6_DESCRIC 1 | X6_CONTEUD |
---|---|---|---|---|
MV_PLSTKST | N | Tipo de Seed Gerado | 1=Text;2=Base64;3=Hex | 1 |
MV_PLSTKSH | N | Define o tamanho do Seed gerado. | 3=SHA1;5=SHA256;7=SHA512 | 5 |
MV_PLSTKDG | N | Número Dígitos Token | 6, 7 ou 8 | 6 |
MV_PLSTKTS | N | Token Time Step | Valor de tempo em segundos | 1800 |
...
Para funcionamento correto, deve-se, também, atualizar o binário do appserver com o disponibilizado no link a seguir: https://arquivos.totvs.com.br/TrocaArquivos/download.aspx?id=41096&key=YDZo8OTNECxr7Wy0rn9STo3hNWMPEMLPKy_UCQxHp3g1a versão 7.00.191205P-20201210
05. ASSUNTOS RELACIONADOS
<Não se aplica>
Templatedocumentos |
---|
...