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 :

Gestion de session utilisateur après connexion


Sujet :

Servlets/JSP Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Août 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2015
    Messages : 20
    Points : 7
    Points
    7
    Par défaut Gestion de session utilisateur après connexion
    Bonjour à tous!

    Développeur Java core depuis un moment, je décide de me lancer dans le développement web et le Java EE.

    Pour me faire la main, je suis en train de faire un petit projet, avec pour l'instant un système de création de compte / connexion.
    J'aurais besoin de vos avis sur la bonne pratique à suivre suite à la connexion d'un utilisateur déjà enregistré.

    Actuellement, j'ai une page JSP et sa servlet respective /signin qui permet de demander les credentials et les vérifier.
    Ma question porte sur la suite: je souhaite, lorsque la connexion est bonne, rediriger l'utilisateur vers une page qui lui est personnalisée. Dois-je ajouter le bean utilisateur (avec toutes ses infos) en tant que paramètre de requête et forwarder vers la dite page (mais dans ce cas, l'URL affiche toujours /signin) ? Ou bien dois-je plutôt créer un cookie avec un numéro de session, rediriger vers la page personnalisée et interroger de nouveau la base pour avoir les infos ?
    Ou bien avez-vous d'autres méthodes ?

    Je vous remercie pour votre aide!

    Adrien

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    (Pas sûr d'avoir compris exactement la nature de ton problème mais de ce que j'en ai compris...)

    La première question à se poser est : est ce que mon utilisateur va pouvoir ouvrir plusieurs onglets dans le navigateur avec des utilisateurs différents ?

    - NON : le plus simple est d'utiliser l'objet HttpSession côté serveur pour stocker tout ce qui est spécifique à la session de l'utilisateur, entre autre, ses informations personnelles.

    - OUI : ça se complique... parce que vu du côté serveur, il n'y a qu'une seule session (HttpSession), il va donc falloir ajouter un "identificateur de fenêtre" pour dissocier les différents "session" côté client.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Août 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2015
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Merci pour ta réponse!

    En fait, pour faire plus simple ma question est la suivante : une fois que j'ai vérifié les identifiants entrés dans la servlet que dois-je faire ? Conserver les informations que j'aurais déjà reçues de la base quand je l'ai interrogé pour vérifier le mot de passe, ou interroger de nouveau la base une fois que je serai redirigé vers la page d’accueil utilisateur?

    En effet, dans mon cas de figure, il n'y aura qu'une seule session utilisateur par navigateur .

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    le conteneur web se charge déjà de gérer la session, donc le plus simple serait de stocker dans la session que l'utilisateur a été authentifié et quels sont ses droits. Ca c'est pour le basique. Pour le plus compelx, il vaut mieux se fier à des implémentations existantes et leur laisser faire le boulot de redirection / authentification. Il y a beaucoup de chose à faire gaffe autour de l'authentification, ce qu'une authentification "maison" ne fait en général pas.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Août 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2015
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Merci tchize_ !

    Aurais-tu un framework à me recommander ? j'ai trouvé Apache Shiro lors de mes recherches...

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    apache shiro et spring security sont les deux qui me viennent en tête.

    Plus ce que le conteneur te met déjà à disposition pour la gestion des roles, qui est parfois plus rapide et plus standard, mais moins souple.

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Août 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2015
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Super merci.
    Je vais essayer ça cette semaine et te tiens au courant

  8. #8
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Sinon, il y a le bon vieux standard JAAS pris en compte par tous les serveurs...
    On peut même customiser l'objet représentant l'utilisateur authentifié, mais c'est un peu de boulot
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [Débutant] Gestion de session utilisateur
    Par bad-pop dans le forum ASP.NET
    Réponses: 6
    Dernier message: 13/04/2016, 17h34
  2. Désactiver la session HTTP après connexion
    Par infonettedu90 dans le forum Développement Web en Java
    Réponses: 1
    Dernier message: 04/07/2014, 15h34
  3. Gestion des sessions utilisateurs
    Par hossamoukli dans le forum Android
    Réponses: 6
    Dernier message: 17/04/2013, 16h27
  4. Gestion de session utilisateur
    Par medmehdi11 dans le forum JSF
    Réponses: 1
    Dernier message: 25/06/2009, 15h20
  5. Gestion des sessions utilisateurs
    Par rawanex dans le forum Struts 1
    Réponses: 3
    Dernier message: 21/05/2007, 14h39

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