Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2880 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Java/Servlets - Cookie et authentification (débutant)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Java/Servlets - Cookie et authentification (débutant)

n°1749007
Sbartacus
Posté le 19-06-2008 à 17:13:04  profilanswer
 

Bonjour,
 
J'ai une BD SQL Server sous laquelle j'ai définie des utilisateurs.
Dans mon application, je voudrai définir un système de cookies. J'aurais plusieurs questions :
 
1 => Plusieurs cookies peuvent-ils avoir le même nom ?
Car je veux définir le cookie login, et je voudrais n'avoir qu'un cookie login par utilisateur.
EDIT : il semblerait que plusieurs cookies peuvent avoir le même nom, donc il ne faut pas utiliser response.addCookie(). Dans ce cas, qu'utiliser ?
Je sais que la méthode setValue() change la valeur, mais ça change la valeur de la variable seulement ou aussi la valeur du cookie stocké ?

 
2 => Pour changer la valeur d'un cookie, est-ce que ce code est correct :
 

Code :
  1. Cookie[] cookies = request.getCookies();
  2.             FOR (int i = 0; i < cookies.length; i++) {
  3.                 Cookie monCookie = cookies[i];
  4.                 IF (monCookie.getName().equals("login" )) {
  5.                     Cookie cookieLogin = new Cookie("login", login);
  6.                     cookieLogin.setValue(login);
  7.                     cookieLogin.setMaxAge(3600);
  8.                     response.addCookie(cookieLogin);
  9.                    
  10.                 }
  11.             }


 
3 => Je voudrais que les cookies soient détruits à 12h et à 19h. Est-ce possible de faire autrement que de calculer le nombre de seconde restant jusqu'à ces heures ?
 
4 => Comment détruire un cookie ?
 
Merci de votre aide.


Message édité par Sbartacus le 19-06-2008 à 17:18:18
mood
Publicité
Posté le 19-06-2008 à 17:13:04  profilanswer
 

n°1749145
Taz
bisounours-codeur
Posté le 19-06-2008 à 22:56:30  profilanswer
 

Dis moi, tu te servirais pas des cookie pour faire de la gestion de cache par hasard ?

n°1749265
Sbartacus
Posté le 20-06-2008 à 11:18:21  profilanswer
 

Non, enfin qu'est-ce que tu entends par gestion de cache ?
Je ne suis censé utiliser que 2 cookies dans toute l'application: login et password.
 
Les autres informations sont stockées en tant qu'attributs de session, et donc détruites soit durant l'appli, soit lors de la fermeture de l'appli.


Message édité par Sbartacus le 20-06-2008 à 11:18:37
n°1749380
Sbartacus
Posté le 20-06-2008 à 14:49:57  profilanswer
 

Finalement j'ai trouvé la réponse à la plupart de mes questions.
 
Je voudrais juste savoir : à chaque page de l'application, je parcours la liste des cookies (il y a 3 cookies en fait : JSESSIONID, login et password). Je regarde le login et le mot de passe sauvegardés. S'ils sont incorrects, je redirige systématiquement vers la page d'authentification.
 
Vaut-il mieux que je garde ce système, ou devrai-je récupérer les cookies et placer leur valeur dans un attribut de session ? Qu'est-ce qui se fait le + couramment ?
Merci.

n°1749398
brisssou
8-/
Posté le 20-06-2008 à 15:22:43  profilanswer
 

tu pourrais te mettre un filter, pour faire ça automatiquement à chaque fois, sans avoir à le coder dans tes servlets/pages.
 
peut-être que Spring pourrait t'aider à faire ça encore mieux, ou un framework AOP plus léger, ou que sais-je.


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°1749504
Sbartacus
Posté le 20-06-2008 à 18:46:11  profilanswer
 

Merci pour la réponse.
En fait pour le framework, je ne peux pas vraiment : le projet est déjà quasiment fini, et je manque de temps pour l'apprentissage de l'usage d'un framework. J'aurais du faire ça dès le début. :(

n°1749563
lorill
Posté le 20-06-2008 à 21:57:42  profilanswer
 

mettre login & mot de passe dans des cookies, c'est le meilleur moyen pour se planter un clou dans le pied en cas de XSS.

n°1750519
Sbartacus
Posté le 24-06-2008 à 10:49:31  profilanswer
 

Ben en fait le site est intranet est n'est utilisé que par 4 ou 5 employés. Chacun peut connaitre le mot de passe de l'autre, ce n'est pas un soucis, d'ailleurs le mot de passe dans le cookie est visible en clair.
 
Et hormis les cookies, n'y a-t-il pas plus persistant que les attributs de session ?
Car en fait, l'authentification est valide jusqu'à midi. L'utilisateur doit ensuite se ré-identifier, et ça reste valable jusqu'à 20h.
Merci.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Java/Servlets - Cookie et authentification (débutant)

 

Sujets relatifs
Faire exectuer une ligne de commande à un programme JavaNEED HELP un débutant C# inclusion de classe
Convertir un PDF en Texte via Javaappel procedure stockée de MySQL avec du java
javaJava + fichier CSV
java + chmodJAIN-Sip java
probleme de socket c/javaProbleme d'installation JAVA
Plus de sujets relatifs à : Java/Servlets - Cookie et authentification (débutant)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR