begin process at 2012 02 14 04:39:29
  Trouver un code source :
 
dans
 
Accueil > 

Tutoriels

 > 

Tutoriaux

 > ASP - ADMINISTRER en ligne : PROTECTION des PAGES

ASP - ADMINISTRER en ligne : PROTECTION des PAGES


 Information sur le tutoriel

Note :
Aucune note

 Description

Principe :
1- Création d'un dossier (ADMIN) dans lequel on mettra toutes ses pages d’administration.
2- On accède alors simplement à son "espace d'administration en ligne" en tapant :
www.MONSITE.com/ADMIN
3- On donne ensuite son identifiant et son mot de passe pour accéder aux pages protégées.

Ici, je propose un accès à 3 niveaux (webmestre, administrateurs et collaborateurs),
avec cookie OU session.

Tutorial

Mon tutorial original se trouve ici :
http://www.asp-php.net/scripts/asp-php/protection-page.php

Les fichiers nécessaires :

_protect.asp
: contient vos identifiants et mots de passe
_protectpage.asp : vérifie la validité de l'accès
index.asp : celui du dossier ADMIN
vos pages à protéger : avec test de validité
_deconnexion.asp : déconnexion et retour à votre site


_protect.asp

(partie commune)

<%
' -----------------------------------------------------------------------------------------------------------------
' Definition de la liste des identifiants et mots de passe (3 niveaux)
' Remplacer les mots :
' IDENTIFIANT1 et MOTDEPASSE1 : par ceux du Webmestre
' IDENTIFIANT2 et MOTDEPASSE2 : par ceux des Administrateurs
' IDENTIFIANT3 et MOTDEPASSE3 : par ceux des collaborateurs
' -----------------------------------------------------------------------------------------------------------------
dim password(3,3)
i=0 : 
niv = 1 ' Webmestre
   i=i+1 : password(i,1) = "IDENTIFIANT1" : password(i,2)="MOTDEPASSE1"
   password(i,3) = niv
niv = 2 ' Administrateurs
   i=i+1 : password(i,1) = "IDENTIFIANT2" : password(i,2)="MOTDEPASSE2"
   password(i,3) = niv
niv = 3 ' collaborateurs
   i=i+1 : password(i,1) = "IDENTIFIANT3" : password(i,2)="MOTDEPASSE3"
   password(i,3) = niv
' -----------------------------------------------------------------------------------------------------------------
%>

(puis avec COOKIE)

<%
response.cookies("MONCOOKIE")="" 
' si le visiteur a validé le formulaire
if (request.form("LELOGIN")<>"" and request.form("LEPASS")<>"") then
   ' on compare avec la liste
   for i = 1 to ubound(password)
      ' si le login et le mot de passe sont bons
      if (request.form("LELOGIN")=password(i,1) and request.form("LEPASS")=password(i,2)) then
         ' on stocke le niveau dans un cookie
         response.cookies("MONCOOKIE")=password(i,3)
         validitecookie = 1 ' on definit la duree de validite du cookie (ici valable 1 jour)
         response.cookies("MONCOOKIE").Expires = Date + validitecookie
         exit for
      end if
   next
end if
' -----------------------------------------------------------------------------------------------------------------
' On lit le cookie. si il est vide : niveau 4
protect=request.cookies("MONCOOKIE")
if protect="" then protect="4"
end if
%>

(ou avec SESSION)

<%
Session("MASESSION") = ""
' si le visiteur a validé le formulaire
if (request.form("LELOGIN")<>"" and request.form("LEPASS")<>"") then
   ' on compare avec la liste
   for i = 1 to ubound(password)
      ' si le login et le mot de passe sont bons
      if (request.form("LELOGIN")=password(i,1) and request.form("LEPASS")=password(i,2)) then
         ' on stocke le niveau dans une variable de session
         Session("MASESSION") = password(i,3)
         ' on definit la duree de vie de la session en minutes (ici 1 heure)
         Session.TimeOut = 60 
         exit for
      end if
   next
end if
' -----------------------------------------------------------------------------------------------------------------
' On lit la variable de session. si elle est vide : niveau 4
protect = Session("MASESSION")
if protect="" then protect="4"
end if
%>

_protectpage.asp

(avec COOKIE)

(avec SESSION)

<%
' -------------------------------------------------------
' Remplacer le mot MONCOOKIE
' par LE MEME que dans _protect.asp
' -------------------------------------------------------
' On lit le cookie
   protect = request.cookies("MONCOOKIE")  
' si vide >> niveau 4
if (protect = "") then 
   protect="4"
end if
%>

<%
' -------------------------------------------------------
' Remplacer le mot MASESSION 
' par LE MEME que dans _protect.asp
' -------------------------------------------------------
' On lit la session
   protect = Session("MASESSION") 
' si vide >> niveau 4
if (protect = "") then 
   protect="4"
end if
%>

index.asp (celui du dossier ADMIN)

<!-- #include file="_protect.asp"-->
<html><head><title></title></head>
<body><div align="center">
<table>
<tr>
   <td align="center">
<%
' -----------------------------------------------------------------------------------------------------------------
' Accès autorisé si identifié
if protect<"4" then %>

   <a href="MONmenuADMIN.asp">&gt; ADMINISTRATION DU SITE</a>
<%else
' -----------------------------------------------------------------------------------------------------------------
' sinon affichage du formulaire d'identification
%>

   <FORM action="index.asp" method="POST">
      Utilisateur :<br><input name="LELOGIN" /><br><br>
      Mot de passe :<br><input name="LEPASS" type="password" /><br><br>
      <input type="submit" value="Valider" />
   </FORM>
<%end if%>
   </td>
</tr>      
</table>
</div></body></html>

Vos pages à protéger

Ajouter en tout début de chaque page à protéger :

<!-- #include file="_protectpage.asp"-->
<% if protect<"4" then %>

Pour gérer les différents niveaux de protection, on remplace par :

   <% if protect<"2" then %> (Accès 1 pour le webmestre uniquement)
   <% if protect<"3" then %> (Accès 1+2 pour le webmestre et administrateurs)
   <% if protect<"4" then %> (Accès 1+2+3 pour le webmestre, administrateurs et collaborateurs)

Ajouter en toute fin de chaque page à protéger :

<% else %>
Vous n'avez pas accès à cette page.
<% end if %>

Insérer un bouton de déconnexion dans ses pages :
- on insère dans les pages le formulaire :

<form method="POST" action="_deconnexion.asp">
<input type="submit" value="deconnexion" name="deconnexion">
</form>

_deconnexion.asp :

(avec COOKIE)

(avec SESSION)

<% ' deconnection
' -------------------------------------------------------
' on vide/detruit le cookie
response.cookies("MONCOOKIE")=""
response.cookies("MONCOOKIE").Expires = Date-1
' -------------------------------------------------------
' Redirection vers le site
response.redirect("http://www.MONSITE.com")
%>

<% ' deconnection
' -------------------------------------------------------
' on vide/detruit la session
Session.Contents.Remove("MASESSION") 

' -------------------------------------------------------
' Redirection vers le site
response.redirect("http://www.MONSITE.com")
%>


Commentaires

Commentaire de fayssal2005 le 16/05/2010 19:08:57

merci pour ce tutoriel c vraiment complet
je vous demende mon frérre d'aide par ce que je ferai un projet de créer un site dynamique avec asp net si c possible de m'aider mon mail c faycal_msg@yahoo.fr

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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,234 sec (3)

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