Les langages de programmation du Web

Précédent Sommaire 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Suivant

15. La sécurité sur les serveurs Web Apache : le fichier .htaccess

Interdire l'accès à un répertoire

Dans le projet 14. Création d'un compte, les données (nom d'utilisateur et mot de passe) sont stockées dans le fichier c:/wamp/www/isn/login/data_login.txt

Actuellement, le contenu de ce fichier est visible par tous (http://localhost/isn/login/data_login.txt), ce qui pose un grave problème de sécurité :

Voir le fichier des mots de passe

Pour interdire l'accès à un répertoire, il suffit de créer dans ce répertoire, un fichier particulier nommé .htaccess (le nom du fichier commence par un point) contenant le texte :

deny from all

Travail à réaliser Créez ce fichier (c:/wamp/www/isn/login/.htaccess) et vérifiez que l'accès au fichier data_login.txt est maintenant interdit (erreur 403 : accès interdit).
On pourra se servir de l'éditeur de texte Notepad++.

Protéger par mot de passe l'accès à un répertoire

On veut maintenant protéger le répertoire http://localhost/isn/login/ avec le login admin et le mot de passe Fe45hJ

Protéger par mot de passe l'accès à un répertoire

Trois fichiers et un sous répertoire sont nécessaires :

c:/wamp/www/isn/login/.htaccess

AuthName "Identification requise"
AuthType Basic
AuthUserFile c:/wamp/www/isn/login/password/.htpasswd
Require valid-user

c:/wamp/www/isn/login/password/.htpasswd

admin:Fe45hJ

c:/wamp/www/isn/login/password/.htaccess

deny from all

Ce dernier fichier est indispensable pour interdire l'accès au fichier des mots de passe !

Travail à réaliser Créez ces fichiers et vérifiez que l'accès au fichier data_login.txt est maintenant protégé par mot de passe.
Vérifiez que le fichier .htpasswd est bien inaccessible.

Webographie

Tutoriel du serveur HTTP Apache : fichiers .htaccess

Exercices

Exercice 1 Photos de vacances

a) Créez le répertoire c:/wamp/www/perso et placez-y des documents personnels (des photos de vos dernières vacances par exemple).
b) Protégez ce répertoire avec un mot de passe.

Remarque Le répertoire /perso est protégé si on passe par le serveur Web (dans un navigateur http://monsiteweb/perso).
Cependant, ce répertoire peut être visible par un accès direct au disque dur. Au niveau du système d'exploitation, il faut donc définir les droits des utilisateurs.