Protection de pages et fichiers

Résolu
wam -  
nEm3sis Messages postés 710 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je suis en train de créer une application web. Pour certaines fonctions, il sera question d'espace membres. Chaque membres ayant un dossier personnel. Or j'ai constaté que l'accès aux fichiers contenus dans leurs dossiers personnels est libre en tapant l'url jusqu'aux fichiers en question.

exemple : machin a créé son compte. Un dossier est alors créé sur le serveur. Par exemple à l'adresse www.site.com/users/machin.
et disons qu'il y a ses fichiers stockés ( fichiers perso qu'il ne voudrait pas partager donc les rendre invisibles) dans www.site.com/users/machin/fichiersperso/

j'ai remarqué qu'on peut tout simplement y accéder en tapant l'url complète. et afficher par exemple un fichier texte contenu dedans.

J'aimerais donc savoir s'il est possible d'empêcher l'accès à ces dossiers et fichiers à toute personne tapant le chemin dans l'url. Et que ces fichiers soit accessible uniquement par des liens disponible dans le site.

il me semble qu'il y a un moyen de protéger des dossiers avec des fichiers .htaccess et .htpasswd. Mais avec cette méthode l'utilisateur aura une horrible pop up lui demandant ses droits d'accès se que je ne veux pas.
Alors est-il possible qu'on puisse remplir ce formulaire automatiquement si par exemple l'utilisateur est connecté au site ( donc de manière transparente pour lui ) ?

Merci d'avance pour vos réponses et bonne journée.


A voir également:

4 réponses

wam
 
Si je n'ai pas été assez clair, je voudrais empêcher l'accès à un dossier si on essaye d'y accéder en tapant son chemin dans l'url, mais que si c'est une requête venant du site lui même qui tente d'y accéder, alors on autorise son accès.
0
wam
 
Bon il me semble que j'ai résolu le problème en cherchant sur des tutoriels. Ainsi que sur la doc Apache.
Je partage ma trouvaille pour quelqu'un qui aurait le même problème :
créer un fichier htaccess dans le dossier qu'on veut protéger (sous windows c'est impossible de créer un fichier sans nom, allez sur www.siteduzero.com pour un tuto)

Ensuite, éditez le fichier avec un éditeur de texte et inscrivez ceci :
order deny,allow
deny from all
allow from localhost

avec sa, si on essaye d'accéder a un fichier du dossier protégé en tapant le chemin du fichier dans l'url on a le message 403 Forbidden alors que l'accès par une requète venant du serveur est autorisé.
0
mimigenie Messages postés 1180 Date d'inscription   Statut Membre Dernière intervention   313
 
Merci de l'info :)
0
webmaster
 
ceci dit, j'ai peur que d'autres sites ne puissent plus accéder aux pages du genre les robots de google etc... je ne suis pas sur, à tester.
0
bg62 Messages postés 23732 Date d'inscription   Statut Modérateur Dernière intervention   2 409
 
là c'est sur ...
0
bg62 Messages postés 23732 Date d'inscription   Statut Modérateur Dernière intervention   2 409
 
tu peux le faire, soit via un .htaccess qui va interdire ... l'accés à ce tu programmeras
soit aussi en plaçant des fichiers index.html vierges :
www.site.com/users/machin/fichiersperso/index.html ...
l'arborescence n'est plus visible ... ;)

"donc les rendre invisibles" : non !!! >>> rendre l'arborescence et l'accès aux fichiers d'un dossier inaccessible ...
0
nEm3sis Messages postés 710 Date d'inscription   Statut Membre Dernière intervention   113
 
tu peux interdire totalement l'accès à ces fichiers grace à un htaccess
et à l'aide d'une page php tu peux lire le fichier pour le renvoyer à l'utilisateur si c'est le bon utilisateur

comme ça, la protection sera bonne :)
0