Mot de passe
Accès réservé

Limitation d'accès par login et mot de passe

Certaines pages sensibles de votre site

Vos messages Outlook Express se sont enrichis de musiques et d'images que vous stockez sur un serveur (un site). Disposant d'un espace chez un hébergeur vous avez fait un site que vos amis ou partenaires visitent. Bravo !

Vous souhaitez limiter l'accès de certaines pages personnelles à des visiteurs que vous aurez choisis. Le bon moyen c'est "Le login et le mot de passe" que vous communiquerez aux internautes de votre choix.

Il existe un grand nombre de procédés offrant des garanties plus ou moins grandes de sécurité.

Nous nous intéresserons ici uniquement à la méthode .htacess .htpasswd qui est sans doute la plus sûre.

Avant tout, informez-vous auprès de votre hébergeur ! Savoir s'il traite ce genre de fonction. En effet, si votre hébergeur est gratuit, certaines fonctions ne sont pas toujours disponibles. Ou bien encore le serveur, je veux parler du matériel, n'est pas compatible avec .htaccess. Il n'est pas toujours facile de savoir si votre serveur est du type "Apache" (précisément celui qu'il nous faut ! ). Chez Free® la méthode est différente, chez Alice® c'est encore autre chose, chez Orange le .htacess .htpasswd est disponible mais c'est le site d'Orange Pages Perso qui le génère etc.

Vous êtes prêtes ou prêts ? Alors commençons :

Vous disposez sans doute d'un logiciel de transfert de fichiers de votre disque dur vers votre site. Vous avez donc un dossier que vous avez appelé Mon site web ou quelque chose d'approchant. Dans ce dossier se trouvent les différentes pages de votre site, les dossiers de photos ou de musiques etc.

Dans ce dossier (que nous appellerons ici monsiteweb) vous allez créer un dossier que j'ai nommé ici private.

Dossier

Dans ce dossier nous allons y placer une page d'index et deux fichiers (.htpasswd et .htaccess)

La page que je nomme index peut être mapageperso ou n'importe quelle autre appellation ! Le principal étant de vouloir accéder à cette page par le biais d'un login et d'un mot de passe.

Nous allons avoir besoin de connaître le chemin absolu de notre site. Pour le connaitre nous allons placer un fichier root.php sur notre site, (à la racine pas dans un dossier !) via le FTP habituel.

Ce fichier que vous avez téléchargé et décompressé ici, étant maintenant sur votre site, ouvrez votre navigateur habituel et tapez l'adresse de votre site plus le nom de ce fichier root.

Vous devriez avoir quelque chose comme cela : http://www.monsite.fr/root.php

L'affichage de la page générée par ce fichier root sera de ce genre:

 

retourphp

 

Vous l'avez compris, /kunden/homepages/4/d142698751/htdocs représente l'adresse absolue de votre site. Copiez la, et conservez la, elle va nous servir.

Vous avez préparée une page d'index que vous avez placée dans ce dossier private.

Il nous faut maintenant créer un fichier htaccess et un fichier htpasswd.

Création des fichiers .htaccess et .htpasswd

Pour le .htaccess il existe plusieurs syntaxes mais la plus simple est celle ci :

AuthUserFile /kunden/homepages/7/d190518173/htdocs/private/.htpasswd
AuthGroupFile /dev/nul
lAuthName "Pages privées"
AuthType Basic<limit GET>
require valid-user
</Limit>

Vous avez reconnu en jaune l'adresse absolue de votre site suivie du nom du dossier protégé (private) et enfin du nom du fichier .htpaswd contenant les codes de logins et mots de passe (nous allons les créer un peu plus loin)

En bleu et entre guillemets, le texte qui apparaitra dans la fenêtre LoginPass (ici "Pages privées")

login

 

Ne faîtes pas de copier/coller sur cette page du script htaccess mais téléchargez les modèles ici, ils sont à éditer dans le bloc notes de Windows et à modifier selon vos paramètres.

Une fois la syntaxe respectée et les paramètres d'adresse absolue modifiés, vous enregistrez ce fichier dans votre dossier déjà créé private sous le nom htaccess.txt

Pour le fichier .htpasswd nous utiliserons aussi le bloc notes de Windows pour l'écrire. Ce fichier contiendra les logins et mots de passe cryptés des divers internautes à qui vous souhaitez donner accès aux pages protégées se trouvant dans votre dossier "private".

La syntaxe est simple :

monlogin:motde passe crypté
philippe:145dr48gy65hj512
charles:78fty9j645v4et

Vous l'avez compris, dans le bloc notes vous tapez le login que vous souhaitez (charles) puis deux points (:) puis le mot de passe crypté (78fty9j645v4et) ceci sans accent ni espace. Puis vous l'enregistrez dans votre dossier private sous le nom htpasswd.txt

Si votre login est tapé en clair (charles) en revanche le mot de passe doit être crypté. Pour cela il existe différents moyens mais le plus simple est d'aller sur internet ou certains sites proposent la création du couple login/mot de passe crypté.
Sur le site http://shop.alterlinks.com/htpasswd/passwd.phpvous aurez accès à ce générateur, il vous suffira de taper le login souhaité (charles) de taper le mot de passe tel que vous le communiquerez à vos internautes (f478bn) et vous aurez en bas le couple login:mot de passe crypté à copier/coller dans le bloc notes de Windows.

Attention ! il arrive que le générateur donne un mot de passe cripté comportant des point (ex: dr45.78t.h;58) dans ce cas répétez l'opération. Votre mot de passe crypté ne doit pas comporter de point.

Vous pouvez créer autant de couples login:mot de passe que vous voudrez en les tapant au fur et à mesure dans le bloc notes. Attention ! employez un login différent pour chaque couple login/mot de passe cripté. Lorsque cette opération est terminée, comme je vous l'indique plus haut, vous enregistrez sous htpasswd.txt dans votre dossier private.

Dans votre répertoire Mon site web vous avez donc un sous dossier private lequel contient une page quelconque .html que vous avez crée etl qui sera la page d'accueil protégée (ici index.html), un fichier htaccess.txt et un fichier htpasswd.txt

dossiers

Il suffit maintenant de transférer ce dossier private sur votre site. Vous employez un logiciel FTP avec sans doute deux fenêtres. D'un côté vos fichiers et dossiers de votre disque dur et de l'autre les fichiers et dossiers présents sur votre site, chez votre hébergeur. Transférez donc ce dossier private, et une fois le transfert effectué, dans la fenêtre côté hébergeur, ouvrez le dossier private pour accéder aux fichiers htaccess.txt et htpasswd.txt. Sélectionnez le premier fichier et renommez le en .htaccess et le second en .htpasswd. Votre serveur va accepter cette forme avec le point devant le nom, alors que sous Windows nous ne le pouvions pas.

serveur

Vous devriez avoir cette forme côté serveur. Vous pouvez fermer, l'accès de votre page se trouvant dans le dossier private ne peut se faire désormais qu'avec un login et un mot de passe.

Tapez dans votre navigateur favori l'adresse de cette page. Pour ici, et pour l'exemple, voici ce lien : http://123-pages.fr/private/index.html
Le login est philippe et le mot de passe 258

Il vous reste à communiquer le login et le mot de passe (non crypté !) à vos internautes choisis qui auront accès à vos pages protégées.

Amusez-vous bien et sachez que l'on réussi rarement le sans faute du premier coup !

J'ai voulu être le plus clair et compréhensible possible, mais comme pour une recette de cuisine, j'ai pu "sauter" un détail, une explication qui finalement bloque la réussite. N'hésitez pas à me communiquer ces difficultés, leurs corrections serviront à d'autres amateurs !

 

Philippe Février 2009

 

Retour au menu principal