mod_authn_file Authentification utilisateur à l'aide de fichiers texte Base mod_authn_file.c authn_file_module Disponible depuis les versions 2.1 et supérieures d'Apache

Ce module permet aux frontaux d'authentification comme mod_auth_digest et mod_auth_basic d'authentifier les utilisateurs en les recherchant dans des fichiers de mots de passe au format texte. mod_authn_dbm fournit une fonctionnalité similaire.

Lorsqu'on utilise mod_auth_basic ou mod_auth_digest, ce module peut être invoqué en affectant la valeur file à la directive AuthBasicProvider ou AuthDigestProvider.

AuthBasicProvider AuthDigestProvider htpasswd htdigest Formats de mots de passe AuthUserFile Définit le nom d'un fichier texte pour l'authentification contenant la liste des utilisateurs et de leurs mots de passe AuthUserFile chemin-fichier directory.htaccess AuthConfig

La directive AuthUserFile permet de définir le nom d'un fichier texte pour l'authentification contenant la liste des utilisateurs et de leurs mots de passe. chemin-fichier est le chemin vers le fichier des utilisateurs. S'il n'est pas absolu, il est considéré comme relatif au répertoire défini par la directive ServerRoot.

Chaque ligne du fichier des utilisateurs se compose du nom de l'utilisateur, du caractère ':' et du mot de passe chiffré. Si le même identifiant utilisateur est référencé plusieurs fois, mod_authn_file utilisera la première occurence pour vérifier le mot de passe.

Le format du mot de passe chiffré dépend du frontal d'authentification utilisé (par exemple mod_authn_basic ou mod_authn_digest). Voir la documentation sur les Formats de mots de passe pour plus de détails.

Pour mod_authn_basic, utilisez le programme htpasswd fourni avec la distribution binaire, mais que vous trouverez aussi dans le répertoire src/support de l'arborescence des sources. Voir sa page de manuel pour plus de détails. En bref :

On crée un fichier de mots de passe nom-fichier avec nom-utilisateur comme identifiant initial. Le mot de passe correspondant sera alors demandé :

htpasswd -c nom-fichier nom-utilisateur

Pour ajouter ou modifier nom-utilisateur2 dans le fichier de mots de passe nom-fichier :

htpasswd nom-fichier nom-utilisateur2

Noter qu'une recherche dans de grands fichiers texte peut être très longue ; dans ce cas, il vaut mieux utiliser les fichiers DBM avec la directive AuthDBMUserFile.

Pour mod_authn_digest, vous devez utiliser le programme htdigest. Notez que vous ne pouvez pas mélanger des données utilisateur pour l'Authentification HTTP à base de condensé et des données pour l'Authentification de Base dans le même fichier.

Sécurité

Assurez-vous que le fichier AuthUserFile soit bien stocké en dehors de l'arborescence des documents du serveur web. Ne placez pas ce fichier dans le répertoire qu'il protège. Dans le cas contraire, les clients seraient en mesure de télécharger le fichier des mots de passe.