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 :

[JSP]ne pas permetre de retenir le mot de passe !


Sujet :

Servlets/JSP Java

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 21
    Points : 17
    Points
    17
    Par défaut [JSP]ne pas permetre de retenir le mot de passe !
    je travail avec JSP avec Tomcat 5.9 .
    j ai crée un formulaire qui permet à un utilisateur de saisir son nom d'utilisateur, et son mot de passe.
    Le probleme est ke le systeme retient le mot de passe .
    j 'aimerai bien savoir s'il y a une solution pour ne pas permetre au systeme de retenir les mots de passes dans ce formulaire
    je crois que je doit vider le cache Mais je sais pas comment
    Merci d'avance



    [Modéré par Didier] : ajout de tag dans le titre - Les règles du forum Java

  2. #2
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 864
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 864
    Points : 3 438
    Points
    3 438
    Par défaut
    Salut,

    Je pense que tu parles du système propre au navigateur qui permet de retenir les mots de passes entrés dans les formulaires.
    Pour empêcher celà il faut intervenir directement sur la machine cliente. Il ne sagit pas d'un paramètre coté serveur, mais d'un paramètre coté client, à changer dans les préférences du navigateur.

    Il existe cependant une astuce, pour que les navigateurs soient un peu perdu : changer régulièrement l'attribut "name" des input. Ainsi, tu peux dérouter le navigateur, qui a retenu le mot de passe pour un champ précis, mais qui ne peut pas faire le rapprochement avec ton nouveau champ doté d'un name différent, bien qu'étant sur la même page.

    Bon courage,
    K

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    Citation Envoyé par KiLVaiDeN
    Il existe cependant une astuce, pour que les navigateurs soient un peu perdu : changer régulièrement l'attribut "name" des input. Ainsi, tu peux dérouter le navigateur, qui a retenu le mot de passe pour un champ précis, mais qui ne peut pas faire le rapprochement avec ton nouveau champ doté d'un name différent, bien qu'étant sur la même page.

    Bon courage,
    K
    Oui c est vrai, le probleme c que si tu utilise les realm pour gerer tes authentifications, alors si tu changes les attributs name des input de ton form, je pense que tomcat ne sera pas capable d intercepter les informations pour les faire passer dans le realm

  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 21
    Points : 17
    Points
    17
    Par défaut
    Merci boucoup !
    Mais je crois pas que ça va marché
    comment changé régulièrement l'attribut "name" des input ?
    je les change manuellement :
    ç pas trés pratique

  5. #5
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 864
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 864
    Points : 3 438
    Points
    3 438
    Par défaut
    Faut mettre la partie login à part, pour la gérer independament.

    Passe en input hidden la valeur unique à concatener au name, par exemple l'heure en cours ( "2005072211" par exemple ) comme ça tu pourras gérer même les retardataires

    Si mon exemple n'est pas clair :

    <input type="hidden" name="concatValue" value="2005072211">
    <input type="text" name="login2005072211">
    <input type="password" name="password2005072211">

    Mais c'est une astuce bête et méchante !

    K

  6. #6
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 21
    Points : 17
    Points
    17
    Par défaut
    Merci boucoup !
    Mais j ai pas comprie !
    pour moi j ai deux champ :
    <input type="text" name="login" >
    <input type="password" name="password" >

  7. #7
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 31
    Points : 29
    Points
    29
    Par défaut
    je pense qu'en faisant simplement la chose suivante, ton mot de passe ne sera pas conserve dans le champ password

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="password" name="password" value=""/>
    Sinon si tu utilise struts, si l'utilisateur entre un mauvais mot de passe alors t'as la possibilité aussi de ne pas réafficher le mot de passe qu'il a saisi par:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <html:password property="password" redisplay="false"/>

  8. #8
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 21
    Points : 17
    Points
    17
    Par défaut

    voila ce que j'ai utilisé et ç tres bien marché !

    <input name="user" type="text" size="20" maxlength="25" onBlur="passwd.value='' ">

    <input type="password" maxlength="20" name="passwd" value = '' size="20" >

    et ça marche tres bien !

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 274
    Points : 307
    Points
    307
    Par défaut
    bonjour,

    je ne suis pas sur qu'il n'y pas d'effet de bord à ta méthode.


    Pourquoi n'avoir pas simplement effacé le champ password au chargement de la page ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    function effacerPassword() {
        document.forms[0].passwd.value="";
    }
     
    <body onLoad="effacerPassword()">

  10. #10
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 21
    Points : 17
    Points
    17
    Par défaut
    J'ai essayé ce que Pietra a dit mais ça marche pas !

    car ton script efface le valeur de passwd au chargement de la page.
    Mais il n empeche pas le sauvgarde du mot de passse !
    car lorsque je tappe le nom d utilisateur, il donne le mot de passe sauvgarder!
    Merci !

  11. #11
    Membre chevronné
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 414
    Points : 1 996
    Points
    1 996
    Par défaut
    Tu as résolu à moitié ton problème. Ta solution ne fait qu'effacer le mot de passe quand tu quittes (event: onblur) le champ user.

    • - ça n'interdit pas au système de retenir le mot de passe
      - en quittant le champ user (navigation par tab), le mot de passe est effacé grrrr



  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 274
    Points : 307
    Points
    307
    Par défaut
    en cherchant un peu


    Bon alors j'viens de tomber sur ZE truc tout con

    Dans le champ d'un formulaire, il suffit de foutre autocomplete="off" dans l'attribut de l'input.
    Exemple : <input name="passoueurde" type="password" autocomplete="off">
    Marche aussi d'une façon plus générale en l'appliquant directement dans le tag <form>

  13. #13
    Membre chevronné
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 414
    Points : 1 996
    Points
    1 996
    Par défaut
    L'attribut "autocomplete" ne fait pas parti des spécifications HTML ==> génère un document HTML invalide.

    Assurément, il fonctionne sur IE. Il faudra tester les autres navigateurs.

    AutoComplete

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. pas de rsync possible sans mot de passe
    Par khamed dans le forum Administration système
    Réponses: 2
    Dernier message: 20/09/2007, 11h08
  2. Ne pas permettre la sauvegarde du mot de passe
    Par Prosis dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 10/08/2007, 18h17
  3. [JSP] EL pas interprétées
    Par Pi2 dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 27/10/2005, 11h59
  4. Pas de mot de passe root...
    Par marchand_de_sable dans le forum Administration système
    Réponses: 22
    Dernier message: 16/08/2005, 22h32
  5. [jsp/servlet]Pas de com entre jsp/servlet?
    Par joseph_p dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 30/06/2005, 18h15

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