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.
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 !! »
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 HttpSession session = req.getSession() ; Session.setAttribute(« user », new User(id, login, role)) ;
Pour cela, j’effectue un test dans chaque page jsp :
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…
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Par contre si je fais actualiser la page, il me met la page d’Interdiction…
Partager