Sécurité d'accès à un repertoire

Par lubetmonclax, il y a 6 ans


Bonjour,
Je cherche à sécuriser l'accés à un répertoire contenant des images. J'ai lu ce qui concerne .htaccess mais est-ce qu'une autre solution ne serait pas de mettre le repertoire des images au même niveau d'arborescence que le repertoire "public" où se trouve l'entrée du site, comme il est fait dans les tutos avec src, views.... pour empécher l'accès à ces réperoires.
On aurait:
/public/index.php
/....
/views
/...
/images

Merci.

8 réponses

psyfou, il y a 6 ans

Salut,

Tu peux tout simplement créer un fichier HTML vide nommé "index.html" dans le dossier que tu souhaites protéger. Tu pourras mettre un message du style :

<h1>Accès interdit</h1>
lubetmonclax, il y a 6 ans

Merci pour votre retour.
Mais ma solution tient-elle la route ?
Je crois avoir compris qu'en déclarant "/public" (ou un autre nom...) comme racine d'un site, l'utilisateur ne pourra pas remonter au-dessus, me trompes-je ?

Lartak, il y a 6 ans

Bonjour.
Pour information, si tu places les images dans un dossier qui ne peut pas être accessible par l'utilisateur, tu ne pourras pas les afficher avec le navigateur.
Donc si le point d'entrée du site est le dossier public, le dossier qui contient les images doit se situer à l'intérieur de celui-ci.

lubetmonclax, il y a 6 ans

Bonjour,
Merci pour ta réponse très claire qui explique aussi pourquoi on trouve la partie cliente (javascript...) sous le point d'entrée (public dans mon cas). Cela me semble évident maintenant... Donc je ne vois que la solution .htaccess pour protéger mon répertoire d'images.

Lartak, il y a 6 ans

En quoi veux-tu protéger le dossier des images exactement ?
Si tu veux juste éviter que l'utilisateur puisse avoir le listing des images en tappant dans l'adresse le nom du dossier des images, tu pourras en effet l'éviter, mais ça n'empèchera pas le téléchargement ou autre des images du dossier.

lubetmonclax, il y a 6 ans

Je veux que l'utilisateur n'aille pas se balader dans mon dossier images en dehors de l'accès par mon application.

Lartak, il y a 6 ans

Comment ça se ballader dans le dossier ?
Si tu empèches via un htaccess le listing des fichiers ou via la configuration apache/nginx, l'utilisateur ne pourra connaître le contenu du dossier que via les images que tu affiches sur ton site.
Il ne lui sera donc pas possible par exemple de récupérer les images du dossier au hasard via un sniffer ou autre, tant qu'il ne connait pas le nom et chemin des fichiers du dossier.

lubetmonclax, il y a 6 ans

OK. On est d'accord... La solution c'est htaccess si je n'ai pas accès à la config Apache.