Project

General

Profile

Actions

Feature #1144

open
RA

Feature #1133: Implémenter une page de profil utilisateur avec gestion des crédits et des tiers d'abonnement

Fullstack — Changement de mot de passe sécurisé (vérif ancien + email de confirmation)

Feature #1144: Fullstack — Changement de mot de passe sécurisé (vérif ancien + email de confirmation)

Added by Redmine Admin about 2 months ago. Updated about 2 months ago.

Status:
QA
Priority:
Normal
Assignee:
-
Start date:
06/18/2026
Due date:
% Done:

0%

Estimated time:
spec_ref:

issue:1133 — spec in epic + ticket description

build_status:
build_number:
ci_run_url:
scan_status:
scan_report_url:
deploy_status:
preprod_url:
deployed_at:
branch:
feat/1144-password-change
pr_url:
https://github.com/omdev-tech/PipeLiner-Client/pull/71
security_key:
severity:
paused:

Description

## Objectif
Flux complet et sécurisé de changement de mot de passe : endpoint backend (vérification de l'ancien mot de passe + déclenchement de l'email de confirmation) et formulaire frontend dans la page profil.

## Dépendances
Dépend du backend modèle/permissions (#1141) et des notifications email (#1142, pour l'email de confirmation).

## Portée — Backend (`api/`)
- Endpoint authentifié de changement de mot de passe : exige l'ancien mot de passe, le vérifie, applique les règles de robustesse, hashe et persiste le nouveau.
- Émet l'événement « mot de passe changé » consommé par les notifications (#1142) pour l'email de confirmation.
- Rejet 400/401 si l'ancien mot de passe est incorrect; rate-limiting raisonnable.

## Portée — Frontend (`src/`)
- Formulaire sécurisé dans la page « Mon compte » : champs ancien mot de passe, nouveau, confirmation; validation côté client + affichage des erreurs serveur.
- États succès/erreur clairs; clés i18n dans `en.ts` ET `fr.ts`.

## Acceptance criteria
- [ ] Le changement échoue si l'ancien mot de passe est incorrect (erreur explicite).
- [ ] Un mot de passe valide est hashé et persisté; les règles de robustesse sont appliquées.
- [ ] Un email de confirmation est envoyé après un changement réussi (via #1142).
- [ ] Le formulaire valide la confirmation et affiche les erreurs serveur.
- [ ] Clés i18n cohérentes `en.ts`/`fr.ts`.
- [ ] Backend : pytest verts, `ruff check .`, `mypy src` propres. Frontend : `vitest`, `tsc`, `eslint`, `build` verts.


Files

design-1144-before.png (211 KB) design-1144-before.png Redmine Admin, 06/18/2026 01:09 PM
design-1144-after.png (467 KB) design-1144-after.png Redmine Admin, 06/18/2026 01:09 PM
design-1144-mockup.html (6.98 KB) design-1144-mockup.html Redmine Admin, 06/18/2026 01:09 PM
design-1144-before.png
design-1144-after.png
Actions

Also available in: PDF Atom