Module Profil utilisateur
Chemin : Utilisateur → Profil (menu utilisateur en haut à droite).
Ce module permet à l’utilisateur connecté de consulter et modifier ses informations de profil (nom, prénom, email, etc. selon ce que fournit l’API) et de changer son mot de passe. Les données utilisateur sont gérées par Keycloak ; l’application affiche et met à jour le profil via le backend.
En bref : que faire dans ce module ?
| Objectif | Où aller | Guide pas à pas |
|---|---|---|
| Consulter ou modifier son profil | Personnel → Profil | Tutoriel : Profil et mot de passe |
| Changer son mot de passe | Profil → Changer le mot de passe | Tutoriel : Profil et mot de passe |
1. Consultation du profil
Aspects fonctionnels implémentés
- Affichage : nom, prénom, identifiant (username), email, téléphone optionnel, structure/service d’affectation si fournis par l’API, rôles ou groupes (affichage en lecture seule).
- Source : données chargées depuis le backend (ex. GET /users/me ou équivalent) qui agrège les informations Keycloak et le profil métier (structure, service, poste).
- Photo ou avatar : affichage d’une photo de profil ou d’un avatar (initiales) si disponible.
- Mise à jour : rechargement du profil à l’ouverture de la page ou après une modification.
2. Modification du profil
Aspects fonctionnels implémentés
- Champs modifiables : selon ce que l’API autorise (ex. prénom, nom, email, téléphone) ; les champs gérés uniquement par l’admin (rôles, structure, service) sont en lecture seule ou masqués.
- Formulaire : formulaire de modification avec validation (email valide, champs obligatoires).
- Sauvegarde : envoi des modifications au backend (ex. PATCH /users/me ou PUT) ; le backend met à jour Keycloak et/ou le profil métier.
- Feedback : message de succès (toast) après sauvegarde ; message d’erreur en cas d’échec (ex. email déjà utilisé).
- Contraintes : respect des règles métier (unicité de l’email, format du téléphone) ; les erreurs backend (RFC7807) sont affichées de manière claire.
3. Changement de mot de passe
Aspects fonctionnels implémentés
- Formulaire : champ « Mot de passe actuel », champ « Nouveau mot de passe », champ « Confirmer le nouveau mot de passe ».
- Validation : le nouveau mot de passe doit respecter la politique (longueur minimale, caractères spéciaux, etc.) affichée à l’utilisateur ; confirmation identique au nouveau mot de passe.
- Envoi : appel au backend (ex. POST /users/me/change-password ou PATCH) avec l’ancien et le nouveau mot de passe ; le backend met à jour le mot de passe dans Keycloak.
- Sécurité : les mots de passe ne sont jamais affichés en clair ; pas de stockage côté frontend.
- Feedback : succès (toast « Mot de passe modifié ») ; en cas d’erreur (mot de passe actuel incorrect, politique non respectée), message explicite.
- Déconnexion : après changement de mot de passe, l’utilisateur peut être déconnecté et invité à se reconnecter avec le nouveau mot de passe (selon la politique de l’application).
4. Préférences utilisateur
Aspects fonctionnels implémentés
- Langue : choix de la langue de l’interface (fr, en) si géré au niveau profil ; sauvegarde côté backend ou localStorage selon l’implémentation.
- Notifications : lien vers la page des préférences de notifications (module Notifications) pour configurer canaux et types.
- Thème : choix du thème (clair / sombre) si proposé dans le profil ; application immédiate et persistance.
- Autres : toute autre préférence utilisateur exposée par l’API (format de date, fuseau horaire personnel, etc.).
5. Accès au menu utilisateur
Aspects fonctionnels implémentés
- Menu : clic sur le nom ou l’avatar en haut à droite pour ouvrir un menu déroulant.
- Entrées : « Mon profil » (vers la page profil), « Préférences de notifications » (vers le module Notifications), « Changer le mot de passe » (vers la section ou une modale), « Déconnexion ».
- Déconnexion : action « Déconnexion » qui invalide la session (appel backend et/ou redirection vers Keycloak pour logout) et redirige vers la page de connexion.
6. Sécurité et droits
Aspects fonctionnels implémentés
- Profil : chaque utilisateur ne peut consulter et modifier que son propre profil (identifié par le token JWT ou l’API).
- Mot de passe : seul le titulaire du compte peut changer son mot de passe (vérification de l’ancien mot de passe côté backend).
- Données sensibles : pas d’affichage du mot de passe ; email et téléphone peuvent être masqués partiellement si requis (ex. ***@domain.bf).
Voir aussi
- Notifications — Préférences de notifications
- Paramètres — Configuration système (réservée aux admins)
- FAQ — Mot de passe oublié, changement d’email