Ir para o conteúdo principal

Alteração e expiração de senhas do sistema Consignação

Data de elaboração 28/02/2023
Responsável pelo estudo
  1. Rafael Passos dos Santos (Assessor)
Equipe do estudo
  1. André Honório de Andrade Silva (Tecnico)
  2. Gezinéia Paula da Costa (Product Owner)
  3. Emanuel Rufino Alcantara de Lima (Analista)
  4. Rafael Passos dos Santos (Assessor)
  5. Alef Carvalho (Analista)
  6. Gustavo Félix (Analista)
Alvo Consignação
Origem

Implementação: ResetAlteração e expiração de senhas do sistema de Consignação

Objetivo

O presente estudo visa analisar e propor a funcionalidade para resetaralterar e expirar senhas de usuários do sistema Consignação

Documentação correlata
Observações O presente estudo pretende também pretende levantar as Historias dos cards para a Sprint 


1. Objetivo

O presente estudo visa analisar e propor a funcionalidade para resetaralterar e expirar senhas de usuários do sistema Consignação.

1.1 JUSTIFICATIVA

O sistema não conta com uma ferramenta automatizada em que o próprio usuário realize a alteração de senha. Também é necessário criar um mecanismo para expirar a senha.

1.2 RESULTADOS ESPERADOS

Espera-se que, após este estudo, seja possível identificar uma forma para que o próprio usuário realize a alteração de senha.

2. Introdução

Há a necessidade de alteração de senha por parte do usuário, pois este item não está funcionando.

3. Desenvolvimento - Reset e expiração de senhas dos usuários

3.1 CENÁRIO ATUAL

Atualmente,No momento que foi realizado o estudo, somente o usuário MASTER realizarealizava a alteração de senhas dentro do sistema.

Existia uma funcionalidade para alteração de senhas, porém a mesma parou de funcionar e foi retirada do front-end do sistema.

Ao analisar o código fonte, foi possível identificar os passos para recuperação de senha

BackEnd: FuncionarioRecuperacaoSenhaControlador e FuncionarioRecuperacaoSenhaServico

Ação Parâmetros Descrição
Método de solicitar a recuperação a senha

login e email

- É gerado um token de confirmação

- É criado um registro no banco na tabela FuncionarioRecuperacaoSenha

- É criado e enviado o email para recuperação de senha

Método de alterar a senha

token e novaSenha

- É buscado um funcionário por um token

- Caso o funcionário seja encontrado, é realizada a alteração da senha.




















Observações:

Classes no BackEnd: FuncionarioRecuperacaoSenhaControlador e FuncionarioRecuperacaoSenhaServico

No momento que foi realizado o estudo, a tela de Recuperar a senha não estava funcionando.


3.2 SOLUÇÃO

Após a análise do problema, propomos a seguinte solução:

1) Reset de senhas

1 - Criar umaou recuperar a tela para a solicitação do reset de senhas

2 - ConsumirAlterar o envio do email  para utilizar o sistema Hermes para envio do e-mail de reset.Hermes.

3 - Criar uma tela para realizar o reset de senhas


2) Expiração de senha

1 - Criar um job no CaveiraJob para expirar a senha após um tempo determinado

2 - Mostrar tela informando que a senha foi expirada com link para redirecionamento para o reset de senhas (após o login do usuário)


3.3 IMPLEMENTAÇÃO E HISTÓRIAS DE USUÁRIOS

Para aplicar a solução acima será necessário as seguintes histórias de usuários:

O que? Pontos Regras Produto
ResetAlteração de senhas


Criar umaou recuperar a tela para a solicitação do reset de senhas 8
Consignação
Consumir o sistema Hermes para envio do e-mail de reset. 138 No e-mail haverá um link para o reset de senhas Consignação
Criar uma tela para realizar o reset de senhas 135

- Alterar a senha no banco

- Atualizar o campo "data de expiração" e "expirado".

Consignação
Expiração de senha


Bloquear login de usuários com senha expirada 5

- Criar campo "Data de expiração"

- Criar campo boleano "Expirado"

Consignação
Criar rota para expirar as senhas e criar um job no CaveiraJob para expirarconsumir aessa senha após um tempo determinadorota 8

- Criar rota para verificar quais logins estão com a data de expiração expiradas


Consignação
Mostrar tela informando que a senha foi expirada com link para redirecionamento para o reset de senhas (após o login do usuário) 85


Consignação

3.4 POSSÍVEIS IMPEDIMENTOS

A linguagem utilizada no projeto é nova para o time.

4. Conclusão

Conclui-se que para a devida implementação destas melhorias, o time poderá, além consultar este documento, consultar a PO e os demais integrantes da SETIC, pois objetiva-se a funcionalidade de resetar a senha dos usuários.