Adapter le système d'authentification basé sur JWT pour permettre l'accès en lecture à l'application GeekHR Connect à tous les utilisateurs, mais exiger une authentification pour toutes les actions sensibles telles que l'ajout, la modification, et la suppression des collaborateurs.
Critères d'Acceptation:
Accès en Lecture : Tous les utilisateurs, y compris les non authentifiés, doivent pouvoir visualiser les informations sur l'application, y compris la liste des collaborateurs et l'organigramme de l'entreprise.
Actions Protégées : L'ajout, la modification, et la suppression des collaborateurs doivent exiger que l'utilisateur soit authentifié. Un JWT valide doit être présent dans les en-têtes de requête pour ces actions.
Génération et Validation de JWT : À la connexion réussie, générer un JWT pour l'utilisateur. Ce token sera utilisé pour authentifier les requêtes subséquentes nécessitant une authentification.
Page de Connexion : Fournir une page de connexion pour permettre aux utilisateurs de s'authentifier. Les utilisateurs doivent être redirigés vers cette page s'ils tentent d'effectuer une action protégée sans être authentifiés.
Gestion des Sessions : Après une authentification réussie, maintenir une session utilisateur pour les actions subséquentes. Permettre aux utilisateurs de se déconnecter, ce qui doit effacer le JWT côté client.
Sécurité des Routes : Configurer Spring Security pour protéger les endpoints d'API correspondant aux actions d'ajout, de modification, et de suppression. Les requêtes sans JWT valide ou avec un JWT expiré ne doivent pas être autorisées pour ces actions.
Réponses d'Erreur : Envoyer des réponses d'erreur appropriées pour les tentatives d'accès non autorisé ou en cas de problèmes d'authentification.
Adapter le système d'authentification basé sur JWT pour permettre l'accès en lecture à l'application GeekHR Connect à tous les utilisateurs, mais exiger une authentification pour toutes les actions sensibles telles que l'ajout, la modification, et la suppression des collaborateurs.
Critères d'Acceptation: