Spring Boot : écrire le serveur (école d'ingénieur) · Chapitre 8 · Exercice de TD
Un compte désactivé
Sécuriser l'application · niveau 1 (application)
Énoncé
Ajouter un compte stagiaire, de rôle ADMIN mais désactivé (actif = false). Que reçoit-il, même avec le bon mot de passe ? Où le décide-t-on ?
Corrigé
Le compte, ajouté à data.sql avec false dans la colonne actif, reçoit 401 :
$ curl -i -u stagiaire:stage-2026 http://localhost:8000/api/moi
HTTP/1.1 401
WWW-Authenticate: Basic realm="Librairie du Campus"
Content-Type: application/problem+json;charset=UTF-8
Content-Length: 171
{"status":401,"title":"Authentification requise","detail":"Identifiez-vous pour accéder à cette ressource.","erreur":"Identifiez-vous pour accéder à cette ressource."}
La décision est prise par ComptesDuPersonnel, qui transmet disabled(!u.isActif()) ; Spring Security refuse l'authentification d'un compte désactivé (DisabledException), avant même de vérifier le mot de passe. Désactiver un compte plutôt que le supprimer garde la trace de ce qu'il a fait.
100 % gratuit
La suite du chapitre est sur Adloun
- 9 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le tuteur, qui guide pas à pas sans donner la réponse
Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.