Accueil > Forum > > > > restreindre l'acces à un dossier
restreindre l'acces à un dossier
mardi 26 juillet 2005 à 14:16:29 |
restreindre l'acces à un dossier

emeric b
|
Salut,
Je rencontre un problème sur un site en cfm. Je souhaite restreindre l'accès à certains dossiers (un dossier restreint par membre).
En premier lieu je pensais utiliser la fameuse protection .htaccess mais l'hébergeur refuse.
Il semble que l'on puisse restreindre l'accès à un dossier à l'aide d'une appli ColdFusion. Mais j'ai rien trouver dans la rubrique Codes qui traite de cette fonctionnalité.
J'ai besoin d'un coup de pousse pour commencer...
Merci d'avance
Emeric B
|
|
vendredi 29 juillet 2005 à 22:18:24 |
Re : restreindre l'acces à un dossier

lfontaine
|
Salut,
Le plus simple serait de gerer un system de login lie avec une base de donnes, tu crees un form qui accepte un login et mot de passe. Ta page d'action verifie que ces infos sont dans ta table logins ou utilisateurs. Si oui, tu cree une variable de session qui te permet de retrouver l'id de l'utilisateur logge. Si non, retour au form.
Pour proteger une page cfm, un dossier contenant des pages cfm, tu cree un application.cfm dans ce dossier avec dedans
cfparam session.userid = 0 if session.userid EQ 0 cflocation url="monurl/login.cfm" addtoken=no
Laurent
|
|
mardi 2 août 2005 à 13:08:07 |
J'y arrive pas !

emeric b
|
Slt Laurent,
D'abord merci pour le coup de pousse. Le problème c ke j'y arrive pas. Voila la situation :
Soit l'architecture suivante :
dossier_public/admin
dossier_public c la racine du site tout le monde peut consulter les pages /admin c le dossier à protéger
Dans dossier_public j'ai une page login.cfm qui accepte un login et un mot de passe qui sont contenus dans une table de la base MS Access. Si le login et le pass sont OK l'utilisateur doit aller à /admin sinon retour à login.cfm
Voila la page login.cfm créée avec le "Connecter l'utilisateur" dans Dream MX : ::::::::::::::::::::::::::::::::::::::::::::::::::::::
<cfif IsDefined("FORM.login_tz")> <cfset MM_redirectLoginSuccess="admin/"> <cfset MM_redirectLoginFailed="login.cfm"> <cfquery name="MM_rsUser" datasource="autodb"> SELECT login,pass FROM admin WHERE login='#FORM.login_tz#' AND pass='#FORM.pass_tz#' </cfquery> <cfif MM_rsUser.RecordCount NEQ 0> <cftry> <cflock scope="Session" timeout="30" type="Exclusive"> <cfset Session.MM_Username=FORM.login_tz> <cfset Session.MM_UserAuthorization=""> </cflock> <cfif IsDefined("URL.accessdenied") AND true> <cfset MM_redirectLoginSuccess=URL.accessdenied> </cfif> <cflocation url="#MM_redirectLoginSuccess#" addtoken="no"> <cfcatch type="Lock"><!--- code for handling timeout of cflock ---> </cfcatch> </cftry> </cfif> <cflocation url="#MM_redirectLoginFailed#" addtoken="no"> <cfelse> <cfset MM_LoginAction=CGI.SCRIPT_NAME> <cfif CGI.QUERY_STRING NEQ ""> <cfset MM_LoginAction=MM_LoginAction & "?" & XMLFormat(CGI.QUERY_STRING)> </cfif> </cfif> <form name="form1" method="POST" action="<cfoutput>#MM_loginAction#</cfoutput>"> <table width="417" border="0"> <tr> <td width="95">login</td> <td width="312"><input name="login_tz" type="text" id="login_tz"></td> </tr> <tr> <td>pass</td> <td><input name="pass_tz" type="text" id="pass_tz"></td> </tr> <tr> <td> </td> <td><input type="submit" name="Submit" value="Envoyer"></td> </tr> </table> </form>
::::::::::::::::::::::::::::::::::::::::::::::::::::::
Malheureusement ça marche pas ! Dans le dossier /admin j'ai mis la page application.cfm kom tu ma dis mé même en mettant un bon jeu login/mot de passe je retourne tjs sur login.cfm
T'as une idée ? Merci d'avance Emeric
PS : y'a quelques mois tu m'avais conseillé Autoresize de CFDev.com et franchement ça marche très bien. Merci !
|
|
mercredi 3 août 2005 à 04:02:32 |
Re : restreindre l'acces à un dossier

lfontaine
|
Salut,
humm interessant l'usine a gaz. Tu as mis quoi dans ton fichier application.cfm ?
j'ai quelques idees a mon avis tu as une erreur qui est capturee par le cftry ce qui fait que tu ne la voie pas.
Mais je serais toi je simplifierait le tout du genre:
<cfparam name="FORM.login_tz" default=""> <cfif FORM.login_tz NEQ ""> <cfquery name="MM_rsUser" datasource="autodb"> SELECT login FROM admin WHERE login='#FORM.login_tz#' AND pass='#FORM.pass_tz#' </cfquery> <cfif MM_rsUser.RecordCount NEQ 0> <cfset Session.MM_Username=FORM.login_tz> <cflocation url="admin/index.cfm" addtoken="no"> </cfif> </cfif> <form name="form1" method="POST" action="#"> <table width="417" border="0"> <tr> <td width="95">login</td> <td width="312"><input name="login_tz" type="text" value="<cfoutput>#FORM.login_tz#</cfoutput>" id="login_tz"></td> </tr> <tr> <td>pass</td> <td><input name="pass_tz" type="text" id="pass_tz"></td> </tr> <tr> <td> </td> <td><input type="submit" name="Submit" value="Envoyer"></td> </tr> </table> </form>
le fichier Application.cfm dans admin deviendrais donc
<cfparam name="session.MM_Username" default = 0> <cfif session.MM_Username EQ 0 > <cflocation url="/login.cfm" addtoken="no"> </cfif>
Penses a creer un fichier index.cfm dans le repertoire admin.
Laurent
|
|
jeudi 4 août 2005 à 14:41:27 |
Re : restreindre l'acces à un dossier

emeric b
|
Salut,
Désolé pour l'usine à gaz mais je dois avouer que ce probleme de restriction d'accès ça me dépasse. Ton code fonctionne déjà mieux mais si je tape le bon login et mot de passe il me sort l'erreur suivante :
Erreurs signalées par le compilateur Java :
Found 1 semantic error compiling "C:/CFusionMX/wwwroot/WEBINF/cfclasses/cfApplication2ecfm306801756.java": 1. public final class cfApplication2ecfm306801756 extends coldfusion.runtime.CFPage{ <-------------------------> *** Error: Cannot write class file "cfApplication2ecfm306801756.class" because that name conflicts with the name of the class file "cfapplication2ecfm306801756.class" in directory "cfclasses". This is illegal because file names are case-insensitive in this system.
T'as une idée ?
Merci Emeric
|
|
vendredi 5 août 2005 à 01:12:52 |
Re : restreindre l'acces à un dossier

lfontaine
|
Salut,
Humm strange, n'aurais tu pas renomme ton fichier application.cfm en Application.cfm ?
Essayes de trouver le repertoire WEBINF, dans ce repertoire tu as un repertoire cfclasses, supprime le fichier cfapplication2ecfm306801756.class Cela devrait supprimer l'erreur.
Laurent
|
|
mercredi 21 septembre 2005 à 15:34:00 |
Re : restreindre l'acces à un dossier

crahier
|
Bonjour,
Ne faudrait-il pas également tester si #session.MM_Username# = le nom du répertoire car une personne logguée pourrait très bien aller dans le répertoire d'une autre, non ?
Christophe
|
|
jeudi 22 septembre 2005 à 00:46:52 |
Re : restreindre l'acces à un dossier

lfontaine
|
Salut,
Je ne pense pas que le but soit d'avoir un repertoire par utilisateur. Juste s'assurer que la personne est identifiee avant d'acceder a un certain repertoire.
Laurent
|
|
jeudi 22 septembre 2005 à 07:30:44 |
Re : restreindre l'acces à un dossier

crahier
|
Possible ... :-) C'était juste au cas où ;-)
|
|
Cette discussion est classée dans : dossier, acces, accès, restreindre
Répondre à ce message
Sujets en rapport avec ce message
transfert de base de donnee (acces -> Unix) [ par guad ]
salut a tous!!je suis étudient dans les réseaux (dut GTR 2é annee) et comme projet technique je me suis lancé dans le transfert d'une base de donnée s
pb accès page acceuil admin CF [ par joelfromparis ]
Bonjour, voici mon problème :Installation de Cold Fusion MX sur un serveur Windows 2000 Server SP3 (en mode autonome) fonctionnant avec IIS 5.0L'insta
macro acces [ par bruno270579 ]
bonjour le forumqqn saurait il m'expliquer comment executer une macro (base de données acces) via coldfusion?je suppose qu'il y a moyen ..merci de vot
remonter d'un niveau [ par Mr_Q ]
Bonjour.Je souhaite afficher une image sur une page cfm. Mon problème est que mon image se trouve dans le dossier parent, par rapport à ma page.exempl
Compacter base data acces à partir de base pgm [ par BachM ]
Comment dans un module d'une base access compacter une autre base access . La base à compacter est généralement ouverte (le .ldb existe et on connait
Pas d'accès à l'administration de Coldfusion mx [ par Julien Briens ]
Bonjour,j'ai un problème!!!Lorsque je veux accéder à l'administration de Coldfusion mx, j'ai un écran blanc qui s'affiche.J'ai l'impression que les pa
Supprimer un dossier via cfftp [ par mandaillou ]
SalutJe voudrais supprimer un répertoire via cfftp. Mon problème est que ce dossier est non vide et donc j'ai une erreur.Pour supprimer un dossier non
suppression de dossier non vide [ par melvar ]
Salut à tous !! Je précise tout de suite que le serveur de mon entreprise tourne sous une version inférieure à coldfusion 7... L'option de récursivité
Appel d'un tag depuis un autre dossier. [ par illeriane ]
Bonjour,Mon problème est simple: L'application que je développe s'étend sur plusieurs répertoires. Mes tags ainsi que
CFFTP CHMODE CFZIP [ par XnomosX ]
Salut ,Voila j'ai besoin de dé-zipper un dossier sur un serveur A pour l'envoyer sur le serveur B ... Jusque la tout vas bien.Sauf qu'une fois dé-zipp
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|