mod_authz_dbm - Serveur Apache HTTP Version 2.4

Apache Server 2.4

<-

Module Apache mod_authz_dbm

Description:Autorisation basée sur les groupes à l'aide de fichiers DBM
Statut:Extension
Identificateur de Module:authz_dbm_module
Fichier Source:mod_authz_dbm.c
Compatibilité:Disponible depuis les versions 2.1 et supérieures d'Apache

Sommaire

Ce module permet d'autoriser ou d'interdire l'accès à certaines zones du site web aux utilisateurs authentifiés en fonction de leur appartenance à un groupe spécifié. Le module mod_authz_groupfile fournit une fonctionnalité similaire.

top

The Require Directives

Les directives Require d'Apache permettent, au cours de la phase d'autorisation, de s'assurer qu'un utilisateur est bien autorisé à accéder à une ressource. mod_authz_dbm ajoute les types d'autorisation dbm-group et dbm-file-group.

A partir de la version 2.4.8, les directives require DBM supportent les expressions.

Require dbm-group

Cette directive permet de spécifier à quel groupe un utilisateur doit appartenir pour obtenir l'autorisation d'accès.

Require dbm-group admin

Require dbm-file-group

Lorsque cette directive est définie, l'utilisateur doit appartenir au groupe du fichier pour pouvoir y accéder.

Require dbm-file-group
top

Exemple d'utilisation

Notez que si vous utilisez mod_authz_dbm, le mot-clé pour les groupes d'authentification qui était auparavant group est maintenant dbm-group :

<Directory "/foo/bar">
  AuthType Basic 
  AuthName "Secure Area"
  AuthBasicProvider dbm 
  AuthDBMUserFile "site/data/users"
  AuthDBMGroupFile "site/data/users" 
  Require dbm-group admin 
</Directory>
top

Directive AuthDBMGroupFile

Description:Définit le nom du fichier de base de données contenant la liste des groupes d'utilisateurs permettant de définir les autorisations des utilisateurs
Syntaxe:AuthDBMGroupFile chemin-fichier
Contexte:répertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authz_dbm

La directive AuthDBMGroupFile sert à définir le nom d'un fichier DBM contenant la liste des groupes d'utilisateurs. Les utilisateurs peuvent dès lors se voir autoriser ou refuser leurs accès selon l'appartenance à tel ou tel groupe. chemin-fichier est le chemin absolu du fichier de groupes.

La clé du fichier de groupes est le nom d'utilisateur. La valeur de chaque clé est la liste des groupes, séparés par des virgules, auxquels l'utilisateur appartient. Cette liste ne doit comporter ni espace, ni caractère ':'.

Sécurité

Le fichier spécifié par la directive AuthDBMGroupFile doit être situé en dehors de l'arborescence des documents du serveur web. Ne le placez surtout pas dans le répertoire qu'il protège, faute de quoi, les clients pourraient le télécharger, en l'abscence de protection supplémentaire.

Utilisation combinée de fichiers DBM de groupes et de mots de passe : dans certains cas, il est plus simple de gérer une seule base de données contenant les groupes et mots de passe de chaque utilisateur. L'écriture de programmes de support en est ainsi simplifiée car ils n'ont plus qu'un seul fichier DBM à gérer et à verrouiller. Pour ce faire, on attribue le même nom de fichier DBM aux fichiers de groupes et de mots de passe :

AuthDBMGroupFile "/www/userbase"
AuthDBMUserFile "/www/userbase"

La clé du fichier DBM unique est le nom d'utilisateur. La valeur associée à la clé contient :

Mot de passe chiffré : Liste de groupes [ : (ignoré) ]

La partie mot de passe contient comme d'habitude le mot de passe chiffré. Viennent ensuite le caractère ':' et la liste des groupes séparés par des virgules. Il est possible d'ajouter d'autres données en fin de ligne après un autre caractère ':', mais elles seront ignorées par le module d'autorisation. Il s'agit du format utilisé par www.telescope.org pour sa base de données combinée groupes et mots de passe.

top

Directive AuthzDBMType

Description:Définit le type de fichier de base de données contenant la liste des groupes d'utilisateurs
Syntaxe:AuthzDBMType default|SDBM|GDBM|NDBM|DB
Défaut:AuthzDBMType default
Contexte:répertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authz_dbm

Définit le type de fichier de base de données contenant la liste des groupes d'utilisateurs. Le type de base de données par défaut est déterminé à la compilation. Les autres types de bases de données disponibles dépendent aussi de la configuration de la compilation.

Quel que soit le programme que vous utilisez pour créer votre fichier de groupes, il est impératif que celui-ci soit configuré pour utiliser le même type de base de données.