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

ASP Discussion :

Protéger une partie de mon site avec .htaccess et .htpasswd


Sujet :

ASP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 90
    Points : 47
    Points
    47
    Par défaut Protéger une partie de mon site avec .htaccess et .htpasswd
    Bonjour,

    Je souhaite protéger une partie de mon site en utilisant les .htaccess et .htpasswd. Mon site est en ASP, est-ce possible.

    Si oui, pouvez-vous m'expliquer la procèdure à suivre.

    Sinon comment faire pour sécuriser une partie de mon site.

    Merci.

    Cédric

  2. #2
    Modérateur
    Avatar de roro06
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    1 480
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 480
    Points : 1 978
    Points
    1 978
    Par défaut
    Bonjour

    les fichiers .htaccess et .htpasswd, si je ne m'abuse, sont des fichiers de config pour Apache, or ASP tourne sous IIS.

    Qu'entends-tu par sécuriser un site, et que veux-tu faire exactement, que veux-tu empêcher ?


    N'oubliez pas de consulter les FAQ ASP et les cours et tutoriels ASP

    " La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
    (J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

    Chuck Norris comprend JC Van Damme.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 90
    Points : 47
    Points
    47
    Par défaut
    Bonjour Roro06,

    Voilà, j'ai un site et je compte créer une page gérer mon compte.

    Donc je demande une identification de la personne par un mot de passe et un login, afin qu'il accède au contenu de son compte et qu'il puisse faire des modifs (ex : changer son mot de passe, imprimer sa facture...).

    Actuellement, j'ai ce bout de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    <%
    	Select Case Request("Action")
    	Case "","Erreur"
    %>
    <%
    	If Request("Action")="Erreur" Then
    		Response.Write("<font color='red'><b>" & Request("login") & "/" & Request("password") & " : DONNÉES D'IDENTIFICATION INCONNUES !!!</b></font>")
    	End If	
    %>	
     
    	<form action="/index.asp" method="post">
    		<table width="249">						
    			<tr>
    				<td width="50%" align="right" nowrap>Votre login</td>
    				<td width="50%"><input type="text" name="login" size="20"  style="border-style: solid; border-width: 1"></td>
    			</tr>
    			<tr>
    				<td width="50%" align="right" nowrap>Mot de passe</td>
    				<td width="50%"><input type="password" name="password" size="20" style="border-style: solid; border-width: 1"></td>
    			</tr>
    			<tr>
    				<td width="50%" align="right" nowrap></td>
    				<td width="50%" colspan="2" align="center" class="Style4">
    				<input type="submit" value="Valider" name="Action" style="border-style:solid; border-width:1; background-color: #64FEFD; border-color: #FFFFFF">    										
    				<input type="reset" name="Reset" value="Annuler" style="border-style:solid; border-width:1; background-color: #64FEFD; border-color: #FFFFFF">
    				</td>
    			</tr>								
    		</table>
      </form>
     
        <%
    	Case "Valider"
    		strRequete="SELECT * FROM Tbl_Abonnements WHERE identifiant='" & Request("login") & "' AND motdepasse='" & Request("password") & "'"
    		Set RsAbonne=Server.CreateObject("ADODB.Recordset")
    		RsAbonne.Open strRequete,Connexion
     
    		If RsAbonne.Eof Then
    			Response.Redirect "index.asp?Action=Erreur&login=" & Request("login") & "&password=" & Request("password")
    		Else
    			Session("user")=Session.SessionId
    			Response.Redirect "/site/GICM1pages/accueil.asp"
    		End If
    end Select
    %>
    ce code ne protége rien. Car si je saisi directement l'adresse suivante
    http://guide-congresmedicaux.com/sit...es/accueil.asp, n'importe qui peut y accéder.

    Donc il me faut quelque chose de sur.

    A+

    Cédric.

  4. #4
    Modérateur
    Avatar de roro06
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    1 480
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 480
    Points : 1 978
    Points
    1 978
    Par défaut
    Il y a plusieurs possibilités de protéger une page, la première c'est d'utiliser des variables de session

    Exemple : dans la page d'identification :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ' après que identification ok
    session("identOk")=true
    session("login")=Request.form("login")
    Puis au début des pages que tu veux protéger :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if session("identOk")<>true then response.redirect("login.asp")
    Petite remarque au passage :

    Response.Write("<font color='red'><b>" & Request("login") & "/" & Request("password") & " : DONNÉES D'IDENTIFICATION INCONNUES !!!</b></font>")
    On ne fait JAMAIS apparaître un mot de passe en clair, fut-il erroné.


    N'oubliez pas de consulter les FAQ ASP et les cours et tutoriels ASP

    " La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
    (J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

    Chuck Norris comprend JC Van Damme.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 90
    Points : 47
    Points
    47
    Par défaut
    Bonjour Roro06,

    Ok, j'ai appliqué ton exemple et ça marche bien. J'ai modifié mon code afin que le mot de passe et le login ne figurent plus en clair en cas d'erreur. J'ai crée un page de redirection "login.asp" pour ceux qui esssayent d'entrer directement sur le site.

    Mais est-il possible de faire évoluer ce code, en y ajoutant un délai (au bout d'une heure de connection le login doit-être réactualisé), ou d'indiquer que M. Dupont est connecté avec la possibilité de se déconnecter...

    Merci pour ton aide.

    A+
    Cédric

  6. #6
    vva
    vva est déconnecté
    Membre averti Avatar de vva
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    463
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 463
    Points : 447
    Points
    447
    Par défaut
    tu peux régler cela sur la console IIS en paramétrant le timeout de la connexion mais normalement c'est déjà 20 minutes ce qui veut dire que sans action de la part dde l'utilisateur sa session est close sur le serveur au bout de 20 minutes et les variables seront donc vides et au prochain clic il sera réorienté vers le login

  7. #7
    Modérateur
    Avatar de roro06
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    1 480
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 480
    Points : 1 978
    Points
    1 978
    Par défaut
    au bout d'une heure de connection le login doit-être réactualisé
    Comme le dit vva, la session va expirer au bout du temps de session par défaut sans action de l'utilisateur.Cela veut dire que tant qu'il surfe sur le site (en fait tant que le serveur reçoit des requêtes), la session n'expirera pas. Cette valeur peut être modifiée par programmation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Session.timeout=60 '(en minutes)
    .

    Si tu veux qu'il soit déconnecté automatiquement et systématiquement au bout d'une heurre, quelque soit l'activité du client, il faut enregistrer l'heure de la connexion dans une variable de session
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    session("heure_de_connexion")=now()
    et la tester à chaque fois


    N'oubliez pas de consulter les FAQ ASP et les cours et tutoriels ASP

    " La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
    (J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

    Chuck Norris comprend JC Van Damme.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 90
    Points : 47
    Points
    47
    Par défaut
    Merci Roro06 et vva.

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

Discussions similaires

  1. Serializer une partie de mon XML avec Xtream
    Par lionel84 dans le forum Persistance des données
    Réponses: 3
    Dernier message: 24/06/2011, 16h39
  2. Sécurisation d'une partie d'un site via htaccess
    Par DAGDD dans le forum Sécurité
    Réponses: 4
    Dernier message: 25/06/2010, 13h41
  3. Une partie de mon site disparait quand je diminue la fenetre
    Par xess91 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 31/03/2009, 10h26
  4. Une partie de mon site ne s'affiche plus sur IE
    Par dariozz dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 19/01/2009, 12h02
  5. Réponses: 6
    Dernier message: 08/04/2007, 03h26

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