CodeFlow-Inc / CodeFlow-Inc/Authentication
Implement Password Reset via Email Confirmation
- Dominant language
- C#
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
### **English**
**PBI: Implement Password Reset via Email Confirmation**
#### **Description**
To enhance security and user experience, we will implement a password reset functionality in the authentication API. The process will involve sending a confirmation code via **NotificaMail API**, which the user must provide to set a new password.
#### **Acceptance Criteria**
1. **Request Password Reset:**
- User submits their email to request a password reset.
- A unique confirmation code is generated and sent via the **NotificaMail API**.
- The code has a configurable expiration time (e.g., 10 minutes).
2. **Confirm Reset Code:**
- User submits the confirmation code and email.
- The system verifies if the code is valid and not expired.
3. **Set New Password:**
- Once the code is verified, the user submits a new password.
- The password is securely hashed and stored.
- The confirmation code is invalidated after successful reset.
4. **Security Measures:**
- Rate limiting to prevent brute-force attempts.
- Expired or incorrect codes should not expose account details.
- Secure password hashing using industry standards.
#### **Expected Benefits**
- Improved security by ensuring password resets are confirmed via email.
- Better user experience with a simple and structured process.
- Centralized email handling using the **NotificaMail API**.
---
### **Português**
**PBI: Implementar Redefinição de Senha via Confirmação por E-mail**
#### **Descrição**
Para melhorar a segurança e a experiência do usuário, será implementada a funcionalidade de redefinição de senha na API de autenticação. O processo envolverá o envio de um código de confirmação via **API NotificaMail**, que o usuário deverá informar para definir uma nova senha.
#### **Critérios de Aceitação**
1. **Solicitação de Redefinição de Senha:**
- O usuário informa seu e-mail para solicitar a redefinição.
- Um código de confirmação único é gerado e enviado via **API NotificaMail**.
- O código tem um tempo de expiração configurável (ex.: 10 minutos).
2. **Confirmação do Código:**
- O usuário informa o código de confirmação e o e-mail.
- O sistema valida se o código é válido e ainda não expirou.
3. **Definir Nova Senha:**
- Após a validação do código, o usuário informa uma nova senha.
- A senha é armazenada de forma segura após hashing.
- O código de confirmação é invalidado após o reset bem-sucedido.
4. **Medidas de Segurança:**
- Limite de tentativas para evitar ataques de força bruta.
- Códigos expirados ou incorretos não devem expor informações da conta.
- Hashing seguro das senhas seguindo padrões recomendados.
#### **Benefícios Esperados**
- Maior segurança ao garantir que a redefinição de senha seja confirmada por e-mail.
- Melhor experiência do usuário com um processo estruturado e simples.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.