mod_authn_dbm Authentification utilisateur utilisant des fichiers DBM Extension mod_authn_dbm.c authn_dbm_module

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

Lorsqu'on utilise mod_auth_basic ou mod_auth_digest, ce module est invoqué en affectant la valeur dbm à la directive AuthBasicProvider ou AuthDigestProvider.

AuthName AuthType AuthBasicProvider AuthDigestProvider Formats de mots de passe htpasswd htdbm AuthDBMUserFile Définit le nom d'un fichier de base de données pour l'authentification contenant la liste des utilisateurs et de leurs mots de passe AuthDBMUserFile chemin-fichier directory.htaccess AuthConfig

La directive AuthDBMUserFile définit le nom d'un fichier de base de données pour l'authentification contenant la liste des utilisateurs et de leurs mots de passe. chemin-fichier doit être un chemin absolu vers le fichier de base de données.

La clé du fichier de base de données est le nom de l'utilisateur. La valeur associée est le mot de passe chiffré, éventuellement suivi par un ':' et des données aléatoires. Ce ':' ainsi que les données aléatoires qui suivent seront ignorées par le serveur.

Sécurité :

Faites en sorte que le fichier spécifié par la directive AuthDBMUserFile soit stocké en dehors de l'arborescence des documents du serveur web ; en particulier, ne l'enregistrez pas dans le répertoire qu'il protège, faute de quoi, les clients auraient la possibilité de télécharger le fichier des mots de passe.

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

Note importante concernant la compatibilité : l'implémentation de dbmopen dans les modules d'Apache lit la longueur de la chaîne correspondant aux données chiffrées dans la structure des données DBM, plutôt que de calculer cette longueur en se basant sur le caractère nul final. Certaines applications par contre, comme le serveur web Netscape, calculent cette longueur en se basant sur le caractère nul final ; par conséquent, si vous rencontrez des difficultés en échangeant des fichiers DBM entre plusieurs applications, le problème peut éventuellement s'expliquer par cette différence d'implémentation.

Un script perl nommé dbmmanage est fourni avec Apache. On peut utiliser ce programme pour créer et mettre à jour les fichiers de mots de passe au format DBM que ce module utilise. Le programme fourni htdbm est un autre utilitaire permettant de maintenir les fichiers DBM.

AuthDBMType Définit le type de fichier de base de données utilisé pour stocker les mots de passe AuthDBMType default|SDBM|GDBM|NDBM|DB AuthDBMType default directory.htaccess AuthConfig

Cette directive définit le type de fichier de base de données utilisé pour stocker les mots de passe. Le type de base de données par défaut est défini à la compilation. La liste des autres types de bases de données disponibles dépend aussi de la configuration de la compilation.

Par exemple, pour activer le support de Berkeley DB (correspondant au type db), il faut ajouter l'option --with-berkeley-db à la ligne de commande configure de httpd pour générer le DSO approprié.

Il est impératif que le programme que vous utilisez pour créer vos fichiers de mots de passe soit configuré pour utiliser le même type de base de données.