begin process at 2012 05 27 01:57:38
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Administration

 > VERIFICATION NOM/MOT DE PASSE A LA CONNECTION

VERIFICATION NOM/MOT DE PASSE A LA CONNECTION


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Administration Niveau :Débutant Date de création :06/08/2003 Date de mise à jour :07/08/2003 09:14:05 Vu :12 705

Auteur : glad

Ecrire un message privé
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

 Description

Voici une petite procèdure pour sécuriser un peu l'accès à un site ou portion de site.

Il faut créer une base Access avec la table "Agents" minimale suivante :
Nom
Prenom
MDP

Et créer un lien DSN système à cette base sous le nom de "WebAgents"

Source

  • Index.asp
  • <html>
  • <head>
  • <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
  • <title>ACCES AU MODULE ...</title>
  • </head>
  • <body>
  • <BR>
  • <p align="center">
  • <center>
  • <form name=login action="logon.asp" method="POST">
  • <table align="center" valign="center">
  • <tr><td>Nom:</td><td><input type="TEXT" name="NoID"></td></tr>
  • <tr><td>Mot de passe:</td><td><input type="password"name="password"></td></tr>
  • <tr><td colspan=1 align=center>
  • <input type="submit" value="Login!"></td></tr>
  • </table>
  • </form>
  • </center>
  • </html>
  • Logon.asp
  • <%
  • function crypter(s)
  • dim i
  • dim temp
  • for i=1 to len(s)
  • temp=temp+chr(asc(mid(s,i,1)) xor 33)
  • next
  • crypter=temp
  • end function
  • password=crypter(Request.Form("password"))
  • NoID=Request.form("NoID")
  • %>
  • <html>
  • <head>
  • <title>ACCES</title>
  • </head>
  • <body>
  • <%
  • dim conn
  • dim sql
  • dim rs
  • dim TNOM, TPRENOM, TTEL, TNIVEAU, TSERVICE, TMDP
  • dim qui
  • dim ok
  • ok=0
  • on error resume next
  • set conn=server.createobject("ADODB.Connection")
  • conn.open "WebAgents"
  • sql="select * from Agents;" // Mettre le nom de la table ou reqête adéquate à la place de Agents
  • set rs=server.createobject("ADODB.recordset")
  • rs.open sql,conn,3,3
  • if not rs.eof then
  • if rs.recordcount>0 then
  • rs.movefirst
  • do while not rs.eof
  • TNom=rs.fields("Nom")
  • if lcase(NoID)=lcase(TNom) then
  • TPRENOM=rs.fields("PRENOM")
  • TMDP=rs.fields("MDP")
  • if TMDP=password then
  • ok=-1
  • response.Redirect "main.asp?Nom="&chr(34)&TNOM&chr(34)&"&Prenom="&chr(34)&TPRENOM&chr(34)
  • response.flush
  • response.end
  • end if
  • end if
  • rs.movenext
  • loop
  • else
  • response.write("<B>la base est vide</B>")
  • end if
  • end if
  • rs.close
  • conn.close
  • set conn=nothing
  • if ok=0 then response.write("Mot de passe ou NoID erroné")
  • %>
  • </body>
  • </html>
  • main.asp
  • <%Response.Buffer = True
  • dim TNom
  • dim TPrenom
  • dim id
  • TNom=request("Nom")
  • TPrenom=request("Prenom")
  • id=mid(TPrenom,2,len(TPrenom)-2) &" "&mid(TNom,2,len(TNom)-2)
  • %>
  • <html>
  • <head>
  • <meta http-equiv="Content-Language" content="fr">
  • <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
  • <title>Administration ...</title>
  • </head>
  • <body>
  • <p align="left"><font size="1">Bienvenue&nbsp;<% =id %></font>
  • La suite du code ici
  • </body>
  • </html>
Index.asp 


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>ACCES AU MODULE ...</title>
</head>

<body>

<BR>

<p align="center">
    <center>
    <form name=login action="logon.asp" method="POST">
    <table align="center" valign="center">
    <tr><td>Nom:</td><td><input type="TEXT" name="NoID"></td></tr>
    <tr><td>Mot de passe:</td><td><input type="password"name="password"></td></tr>
    <tr><td colspan=1 align=center>
    <input type="submit" value="Login!"></td></tr>
    </table>
    </form>
    </center>
</html>

Logon.asp

<%
	function crypter(s)
		dim i
		dim temp
	
		for i=1 to len(s)
			temp=temp+chr(asc(mid(s,i,1)) xor 33)
		next
	
		crypter=temp
	end function

   password=crypter(Request.Form("password"))
   NoID=Request.form("NoID")
%>
<html>

<head>
<title>ACCES</title>
</head>

<body>

<%
	dim conn
	dim sql
	dim rs
	dim TNOM, TPRENOM, TTEL, TNIVEAU, TSERVICE, TMDP
	dim qui
	dim ok
	
	ok=0
	
	on error resume next 
	set conn=server.createobject("ADODB.Connection")
	conn.open "WebAgents"
	
	sql="select * from Agents;" // Mettre le nom de la table ou reqête adéquate à la place de Agents
	
	set rs=server.createobject("ADODB.recordset")
	rs.open sql,conn,3,3
	if not rs.eof then
		if rs.recordcount>0 then
			rs.movefirst
			do while not rs.eof 
				TNom=rs.fields("Nom")
				if lcase(NoID)=lcase(TNom) then
					TPRENOM=rs.fields("PRENOM")
					TMDP=rs.fields("MDP")
					if TMDP=password then
						ok=-1
					   response.Redirect "main.asp?Nom="&chr(34)&TNOM&chr(34)&"&Prenom="&chr(34)&TPRENOM&chr(34)
				   	   response.flush
				      response.end
					end if
				end if
				rs.movenext
			loop
		else
			response.write("<B>la base est vide</B>")
		end if
	end if
	rs.close
	conn.close
	set conn=nothing
	if ok=0 then response.write("Mot de passe ou NoID erroné")
%>

</body>

</html>

main.asp

<%Response.Buffer = True

   dim TNom
   dim TPrenom
   dim id
   
   TNom=request("Nom")
   TPrenom=request("Prenom")
   
   id=mid(TPrenom,2,len(TPrenom)-2) &" "&mid(TNom,2,len(TNom)-2)
%>
<html>

<head>
<meta http-equiv="Content-Language" content="fr">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Administration ...</title>
</head>

<body>

<p align="left"><font size="1">Bienvenue&nbsp;<% =id %></font>
La suite du code ici
</body>

</html>
 

 Conclusion

A+


 Sources du même auteur

NOMBRE D'OCCURENCE D'UNE CHAÎNE DANS UNE TABLE
MIN ET MAX
ISALPHA
FORMATAGE DES CHIFFRES AVEC UN ZÉRO DEVANT
N° DU JOUR (A LA FAÇON D'EXCEL)

 Sources de la même categorie

Source .NET (Dotnet) UTILISATION DES DATATABLES ET L'AFFICHAGE DU CONTENU DANS UN... par hedi_tounsi
Source .NET (Dotnet) RÉCUPÉRATION DES GROUPES AD D'UN USER EN ASPNET par DemonFire21
Source avec Zip Source avec une capture Source .NET (Dotnet) .NET2 GESTIONNAIRE DE DROITS DE FICHIERS AVEC SQL SERVER EN ... par gldfdp
Source avec Zip AUTHENTIFICATION D'UTILISATEURS AVEC BASE DE DONNÉES par Nurgle
Source .NET (Dotnet) CLASS : VALIDER UN LOGIN ET MOT DE PASSE SUR ACTIVE DIRECTOR... par Trinita16

Commentaires et avis

Commentaire de fabrice69 le 07/08/2003 09:10:27 administrateur CS

Très classique, ce type de source existe en de nombreuses version mais soit.
Pour le commentaire, ce n'est pas "Et créer un accés DNS système" mais un lien DSN système.
Merci de corriger.

F___

Commentaire de glad le 07/08/2003 09:13:12

Je corrige :-)
J'essaye de faire (un peu) bouger le site en cette période de canicule :)
pas facile
a+

Commentaire de fabrice69 le 03/09/2003 01:55:09 administrateur CS

Au lieu de mettre une boucle avec ta comparaison entre le MDP fourni et celui de la base, il suffit d'envoyer le MDP fourni dans la requette SQL :

SELECT * FROM TaTable WHERE MDPBase = MDPTransmis

Ca te renverra alors soit 1 élément (si unicité garantie) et alors le User dera identifié, soit 0 élément et dans ce cas le MDP est faux.

C'est plus court et plus efficace.

F___

Commentaire de glad le 03/09/2003 07:56:04

Ok, je vais essayer d'améliorer tout ça selon tes conseils.
Je ne pratique l'ASP que depuis peu, et il y a tant à voir.
Au début, je ne soupçonnais pas l'étendue de ce langage !
Mais maintenant, je l'apprécie beaucoup.
Je suis aussi en train de chercher comment faire interagir le vbscript (ASP) et le PHP ... Pas évident, dirait-on.
a+

Commentaire de essafir le 17/04/2006 11:58:20

Bonjour,
  J'ai essayé d'intégrer ce script dans mes pages mais
à chaque fois il m'affiche ce message d'erreur:
-*-------------------------------------------------------*-
Pages ASP error 'ASP 0113'

Délai d'exécution du script dépassé

/fichier/logon.asp

Le délai maximal d'exécution d'un script a été dépassé. Vous pouvez changer cette limite en donnant une nouvelle valeur à la propriété Server.ScriptTimeout ou en changeant la valeur dans les outils d'administration d'IIS.
-*----------------------------------------------*-
Merci de m'expliquer quelle est l'origine de cette erreur .
ou si vous avez un autre script asp d'authentification.
Merci pour votre aide.
Essafir

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales