IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

sessions : securiser l'acces a une page web


Sujet :

Servlets/JSP Java

  1. #1
    En attente de confirmation mail
    Inscrit en
    Octobre 2006
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 130
    Points : 33
    Points
    33
    Par défaut sessions : securiser l'acces a une page web
    Salut,
    j'ai une page d'identification ou l'utilisateur doit entrer user et password, si les parametres sont valides, sa session est créee(grace a une servlet) et je le redirige vers une autre page (zone reservée) qui dispose d'une option de deconnection pour invalider la session et le reporter à la page d'identification.Mais si il clique sur precedent et puis sur suivant(InternetExplorer) ,le navigateur le reporte vers la zone reservée, je cherche une solution pour le maintenir toujours dans la meme page d'identification.
    Merci.

  2. #2
    Membre confirmé

    Inscrit en
    Avril 2005
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 317
    Points : 553
    Points
    553
    Par défaut
    Il te faut créer un filtre de session qui va n'autoriser l'acces à tes pages que si ta session est valide

    Regardes ca :
    http://www.developpez.net/forums/sho...ghlight=filter
    http://www.developpez.net/forums/sho...on+null+filter

  3. #3
    En attente de confirmation mail
    Inscrit en
    Octobre 2006
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 130
    Points : 33
    Points
    33
    Par défaut
    Salut,
    C'est un peu compliqué pour un debut, vous porriez vous m'expliquer un peu comment faire?
    1/j'ai ma page "index.html" qui contient deux champs : user & password.
    2/j'ai une servlet session dont la methode dopost est invoquée pour verifier les parametres et l'affichage de la page(zone reservée)si ces parametres sont valides.
    3/Si l'utilisateur clique sur deconnection,la session est invalidée,et j'appelle doget de la servlet session pour me rediriger vers la page index(user et password).
    Comment faire pour empecher le navigateur d'afficher la page du menu si l'utilisateur clique sur precedent en etant dans la page index apres avoir invalider la session.

  4. #4
    Membre confirmé

    Inscrit en
    Avril 2005
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 317
    Points : 553
    Points
    553
    Par défaut
    Il te faut mettre en place un filtre de session qui va controler les acces aux pages sécurisées.

    Pour cela, il faut définir une classe, genre comme suit :
    package fr.test.filter;
    public class SessionFilter implements Filter{

    public void destroy() {
    // TODO Auto-generated method stub

    }

    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    HttpSession session = ((HttpServletRequest) request).getSession();

    // On recupere le bean de session
    BeanDeSession bean = (BeanDeSession) session.getAttribute("BEAN_SESSION");

    if( bean==null ) {
    // la session n'est pas valide....on retourne au login
    ((HttpServletResponse) response).sendRedirect("index.html");
    } else {
    // on autorise l'acces...la page demandée peut s'afficher
    chain.doFilter(request,response);
    }
    }

    public void init(FilterConfig config) throws ServletException {
    // TODO Auto-generated method stub

    }


    }
    Il faut ensuite activer ce filtre. Pour cela ajoutes ces lignes dans le fichier web.xml :
    <filter>
    <filter-name>SessionFilter</filter-name>
    <filter-class>fr.test.filter.SessionFilter</filter-class>
    </filter>

    <filter-mapping>
    <filter-name>SessionFilter</filter-name>
    <!-- Le filtre se déclenche sur tout ce qui est dans le répertoire /prive -->
    <url-pattern>/prive/*</url-pattern>
    </filter-mapping>
    Ensuite dans ta servlet qui vérifie l'identification, tu ajoutes une ligne qui va stocker par exemple le nom de l'utilisateur en session :
    session.setAttribute("BEAN_SESSION",...);
    Et quand tu te déconnectes, tu vides la session via :
    session.setAttribute("BEAN_SESSION", null);
    Je t'invites également à lire les liens donnés précédement

Discussions similaires

  1. [shop To date 5] Restreindre l'accès d'une page web
    Par arnaud59310 dans le forum Internet
    Réponses: 0
    Dernier message: 31/01/2014, 18h25
  2. Acces a une page web via HttpWebRequest
    Par olibara dans le forum C#
    Réponses: 11
    Dernier message: 21/07/2010, 17h49
  3. Surfer en C#, accès à un bouton d'une page WEB
    Par moihenry dans le forum C#
    Réponses: 3
    Dernier message: 08/04/2007, 17h39
  4. Confirmer une fermeture de session d'une page Web en VBA?
    Par pegase33 dans le forum Général VBA
    Réponses: 2
    Dernier message: 05/09/2006, 14h42
  5. Réponses: 2
    Dernier message: 28/07/2006, 12h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo