Produto: | TOTVS Saúde Planos |
---|---|
Linha de Produto: | |
Segmento: | Saude |
Módulo: | PLANO DE SAUDE SIGAPLS |
Função: | AUTORIZAÇÃO SADT (PLSA094A) |
Ticket: | 7361972 |
Requisito/Story/Issue (informe o requisito relacionado) : | DSAUBE-10407 |
Implementada melhoria que permite o processo de validação do Token Unimed, conforme Manual de Padronização do Cartão do Beneficiário MS.003 - REV.12 Versão 6.0a.
O Token é uma senha numérica de 6 a 8 dígitos que deve ser gerada no Aplicativo Unimed, informada pelo beneficiário no momento do atendimento e validada pelo PLS, servindo como um segundo fator de autenticação, assegurando que quem está sendo atendido é mesmo o beneficiário portador da carteirinha informada.
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.
Criação de campo e do valid de alguns existentes.
Criação na tabela SX3:
X3_CAMPO | X3_TAMANHO | X3_PICTURE | X3_TITULO | X3_CONTEXT | X3_VISUAL |
---|---|---|---|---|---|
BA1_TKSEED | 128 | @! | Token Seed | 1 - Real | 1 - Alterar |
Alteração da tabela BE1 E BE4:
X3_CAMPO | X3_VALID |
---|---|
BE1_TOKEDI | If(Inclui, If(Empty(M->BE1_USUARI),.T.,PLSA090DAT("2")),.T.) |
X3_CAMPO | X3_VALID |
---|---|
BE4_TOKEDI | If(Inclui, If(Empty(M->BE4_USUARI),.T.,PLBE4USUAR()),.T.) |
Foram criados alguns parâmetros na X6.
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 |
<Não se aplica>
<style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |