[Servlets - JSP] Problème de session
Je développe un Intranet avec des pages jsp utilisant des beans, et des servlets…
Pour améliorer la sécurité, une authentification est requise au lancement de l’Intranet. Ceci entraine la création d’une variable de session.
Code:
1 2 3 4
|
HttpSession session = req.getSession() ;
Session.setAttribute(« user », new User(id, login, role)) ; |
Si quelqu’un essaye d’accéder directement à une page jsp de l’Intranet, sans être passé par l’authentification, il doit être redirigé vers une page « Accès interdit !! »
Pour cela, j’effectue un test dans chaque page jsp :
Code:
1 2 3 4 5 6 7 8
|
if ( (User) request.getSession(false).getAttribute("user") != null){
// jaffiche le contenu statique de ma pages jsp
// jexécute les méthodes du bean qui font afficher le contenu dynamique de ma page
}
else
res.sendRedirect(« forbidden.jsp ») ; // sinon je renvoie la page dinterdiction |
Le problème c’est qu’après une déconnexion ( fermeture de la session par session.invalidate() ), si je tape l’adresse d’une jsp dans le navigateur, il y accède quand même…
Par contre si je fais actualiser la page, il me met la page d’Interdiction…