Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/12/2006, 10h45   #1
Membre du Club
 
Étudiant
Inscription : août 2006
Messages : 132
Détails du profil
Informations personnelles :
Localisation : France, Gard (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2006
Messages : 132
Points : 58
Points : 58
Par défaut Bloquer l'accés aprés 3 tentatives

Bonjour,

j'aimerais pouvoir bloquer l'accés de l'utilisateur au site aprés 3 tentative de log infructueuse. Je ne sais pas trop comment m'y prendre.
J'ai un formulaire de login avec un page de vérification qui compare avec les valeurs de ma base de données, si l'utilisateur à un niveau admin alors il a accés à tout sinon il est rediriger vers une page light.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
SQL = "SELECT * FROM User" _
	& " WHERE Log = '"& Request.Form("login") &"'" _
	& " AND Pass = '"& Request.Form("mdp") &"'"
 
Set RS = Server.CreateObject("ADODB.Recordset") 
RS.Open SQL, Conn, 3,3 
 
if RS.RecordCount=0 then
	Response.Redirect("loginError.asp")
else if RS("Nivo")=1 then
             Response.Cookies("Nivo")=RS("Nivo")
             Response.Redirect("/all/default.asp")
      else
             Response.Cookies("Nivo")=RS("Nivo")
	Response.Redirect("/light/default.asp")
     end if
end if
 
'Fermeture de l'objet Recordset
RS.Close
 
' Déconnexion   
Conn.close : Set Conn=nothing
J'aimerais maintenant pouvoir bloquer l'accés au site à un utilisateur qui se trompe plus de 3 fois dans son authentification.
(Je peux toucher à la base de données)

Merci de votre aide
guigui11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2006, 11h26   #2
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 2 809
Détails du profil
Informations personnelles :
Âge : 56
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 2 809
Points : 3 011
Points : 3 011
Bonjour,

Tu devrais pouvoir t'en sortir avec une variable de session.

Tu l'initialise à zéro puis tu l'incrémentes de 1 à chaque tentative de connexion.
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
pc75 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2006, 11h35   #3
Membre du Club
 
Étudiant
Inscription : août 2006
Messages : 132
Détails du profil
Informations personnelles :
Localisation : France, Gard (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2006
Messages : 132
Points : 58
Points : 58
je te remercie, c'est à quoi j'avais pensé, je travaille dessus et je te donne des news dès que j'ai fini ;-)
guigui11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2006, 11h52   #4
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
Salut,

Ok, mais il suffit de fermer le navigateur et de recommencer. Donc ça sert pas à grand chose. La meilleur idée est de stocker l'info en base.

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2006, 17h44   #5
Membre du Club
 
Étudiant
Inscription : août 2006
Messages : 132
Détails du profil
Informations personnelles :
Localisation : France, Gard (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2006
Messages : 132
Points : 58
Points : 58
Oui, j'ai géré ça, cela fonctionne. Quand un utilisateur s'authentifie 3 fois en se trompant, cela s'inscrit dans la base.
Il ne peut plus désormais se reconnecter au site tant que son marqueur dans la base n'est pas à 1.
Maintenant j'aimerais que se marqueur passe à 1 au bout d'une heure, j'ai essayé de récupérer dans une variable de session l'heure à laquelle l'update de la base s'effectue mais si l'utilisateur ferme son navigateur alors il perd l'heure.
Donc comment pourrais-je faire pour indiquer cela afin de gérer mon deuxième update un heure aprés le premier???

Merci d'avance
guigui11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2006, 20h50   #6
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
Il y a un évènement qui est déclenché quand la session d'un utilisateur se termine (Session_OnEnd dans le "global.asa"). Ce n'est pas un évènement instantané mais cela peut toujours servir.

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h44.


 
 
 
 
Partenaires

Hébergement Web