Como um paciente ou psicólogo, quero poder recuperar minha senha caso eu esqueça, para continuar acessando minha conta na plataforma de forma segura.
✅ Critérios de Aceite
-
🔗 Fluxo de Recuperação
- Inserir link "Esqueci minha senha" nas telas de login de paciente e psicólogo.
- Ao clicar, abrir tela solicitando o e-mail cadastrado.
-
✉️ Envio do e-mail
- Após envio do e-mail, mostrar mensagem:
Se encontramos uma conta com este e-mail, você receberá as instruções para redefinir sua senha.
- Enviar e-mail com:
- Link único e temporário para redefinição da senha.
- Tempo de expiração configurável (ex: 30 minutos).
- Exemplo do link:
https://psycs.com.br/redefinir-senha?token=TOKEN-AQUI
-
🔐 Tela de Redefinição de Senha
- Ao acessar o link do e-mail, o usuário verá:
- Campo: Nova senha
- Campo: Confirmar nova senha
- Botão: Redefinir senha
- Validar token e permitir criação de nova senha se o token for válido e ainda estiver ativo.
-
🛡 Segurança
- O token deve ser criptografado, de uso único e com expiração.
- Utilizar criptografia padrão da UITEC
- Após a redefinição, invalidar o token imediatamente.
- O sistema não deve indicar se o e-mail existe ou não na base (para evitar vazamento de informações).
-
📤 Comunicação
- Após redefinição bem-sucedida, mostrar mensagem:
Sua senha foi atualizada com sucesso. Você já pode fazer login com a nova senha.
- Opcional: enviar e-mail de confirmação da alteração de senha.
🧱 Requisitos Técnicos
Backend
- Rota
POST /api/usuario/esqueci-senha
- Recebe:
{ email }
- Gera token de redefinição e envia por e-mail.
- Rota
POST /api/usuario/redefinir-senha
- Recebe:
{ token, nova_senha, confirmar_senha }
- Valida token, redefine senha, remove token do banco.
- Tabela
usuario campo co_redefinir_senha:
- Criar o hash com essas informações: id_usuario, criado_em, expira_em
Frontend
- Tela de recuperação (input de e-mail).
- Tela de redefinição de senha (com campos de nova senha e confirmação).
- Feedbacks visuais para todos os passos.
🧪 Testes
- Recuperação com e-mail válido.
- Token expirado ou inválido.
- Fluxo completo para usuários e psicólogos (ambos os papéis).
- Tentativas repetidas de redefinição.