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

JSF Java Discussion :

Verrouillez un utilisateur au bout de trois tentatives


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Par défaut Verrouillez un utilisateur au bout de trois tentatives
    Mon problème est assez général, lors de l'authentification, un utilisateur va saisir son login/mot de passe.

    Je veux bloquer l'utilisateur au bout de 3 tentatives fausses de saisis de mot de passe. mon problème est que je trouve pas ou je peux faire l'incrémentation de la variable qui vas compter le nombre de fois de saisis.

    j'ai penser a faire un bean session mais est ce la possible, est ce qu'on peux parler d'une session alors que l'utilisateur n'est pas encore authentifié !!! et si c'est oui , cette session est propriétaire à quel utilisateur, ou comment est défini son durée de vie!!!

  2. #2
    Membre éclairé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Août 2007
    Messages
    509
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Août 2007
    Messages : 509
    Par défaut
    Créer une variable privée static ne marcherait pas?
    Je pense à un truc comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    private static int fail = 0;
    ......
    if( ! authentication("login","mot_de_passe")){
      fail++;
    }

  3. #3
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Par défaut
    non, jamais

    et fait attention aux variables statique et surtout dans le distribuée

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 338
    Par défaut
    Ne pas se fier au session car un utilisateur qui ouvre 2 fenêtres différentes pour authentifié le même utilisateur aura plus de chance..
    Rajoute une colonne dans la table de l'authentification.
    A chaque consultation du login tu décrémente un compteur qui est au max par défaut
    Si compteur = 0 alors nombre de tentative autorisé est atteint du coup l'user est bloqué.
    Si authentifié remettre le compteur au nombre max de tentative à la fin de la connexion (Si on veut qu'un seul user soit connecté avec le login).

  5. #5
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par anisj1m Voir le message
    Mon problème est assez général, lors de l'authentification, un utilisateur va saisir son login/mot de passe.

    Je veux bloquer l'utilisateur au bout de 3 tentatives fausses de saisis de mot de passe. mon problème est que je trouve pas ou je peux faire l'incrémentation de la variable qui vas compter le nombre de fois de saisis.

    j'ai penser a faire un bean session mais est ce la possible, est ce qu'on peux parler d'une session alors que l'utilisateur n'est pas encore authentifié !!! et si c'est oui , cette session est propriétaire à quel utilisateur, ou comment est défini son durée de vie!!!
    la session d'un utilisateur démarre lorsqu'il lance le navigateur avec l'application, même sans authentification la session existe déjà.
    la durée de la session est défini dans le web.xml avec session-timeout.
    Je pense que tu trouvera plus d'explications dans la faq J2EE/Servlets..

  6. #6
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Par défaut
    Citation Envoyé par Sniper37 Voir le message
    la session d'un utilisateur démarre lorsqu'il lance le navigateur avec l'application, même sans authentification la session existe déjà.
    la durée de la session est défini dans le web.xml avec session-timeout.
    Je pense que tu trouvera plus d'explications dans la faq J2EE/Servlets..
    Bravo sniper,
    c'était juste cela ma confusion, quand le session démarre, j'ai cru qu'elle démarre après l'authentification de l'utilisateur.

    Merci énormément

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 338
    Par défaut
    Ma proposition ne plait pas

  8. #8
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Par défaut
    Non hibour mon ami;

    j'ai pensé a votre solution dès que j'ai rencontré le problème, mais cela vas me couter un accès supplémentaire a ma base qui est évitable si j'utilise les sessions.

    Merci pour vous aussi hibour

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 338
    Par défaut
    Mais cela n'empêchera pas de pouvoir avoir plus de 3 tentative a chaque nouvelle fenêtre!! faudrait utiliser une ServletContext peut être ou autre Map valide pendant la durée de vie de l'application.

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 15/04/2015, 09h56
  2. Réponses: 3
    Dernier message: 18/02/2013, 17h51
  3. Exécution d'un script au bout de trois Run
    Par JCD21 dans le forum Eclipse PHP
    Réponses: 0
    Dernier message: 19/12/2010, 14h40
  4. bloquer un utilisateur après 5 tentatives d'accès
    Par adel.87 dans le forum Langage
    Réponses: 1
    Dernier message: 24/04/2008, 00h16
  5. Réponses: 3
    Dernier message: 22/06/2007, 19h01

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