Serveur HTTP Apache Version 2.4
L'authentification est un processus qui vous permet de vérifier qu'une personne est bien celle qu'elle prétend être. L'autorisation est un processus qui permet à une personne d'aller là où elle veut aller, ou d'obtenir les informations qu'elle désire.
Pour le contrôle d'accès en général, voir le How-To Contrôle d'accès.
Trois groupes de modules sont concernés par le processus d'authentification et d'autorisation. Vous devrez utiliser au moins un module de chaque groupe.
AuthType
)
AuthBasicProvider
et AuthDigestProvider
)
Require
)
On peut aussi ajouter mod_authn_core
et
mod_authz_core
. Ces modules implémentent des
directives générales qui opèrent au dessus de tous les modules
d'authentification.
Le module mod_authnz_ldap
est un fournisseur
d'authentification et d'autorisation. Le module
mod_authz_host
fournit une autorisation et un
contrôle d'accès basés sur le nom du serveur, l'adresse IP ou
certaines caractéristiques de la requête, mais ne fait pas partie du
système fournisseur d'authentification. Le module
mod_access_compat
a été créé à des fins de
compatibilité ascendante avec mod_access.
Vous devriez aussi jeter un coup d'oeil au manuel de recettes de Contrôle d'accès, qui décrit les différentes méthodes de contrôle d'accès à votre serveur.
Si votre site web contient des informations sensibles ou destinées seulement à un groupe de personnes restreint, les techniques exposées dans cet article vont vous aider à vous assurer que les personnes qui ont accès à ces pages sont bien celles auxquelles vous avez donné l'autorisation d'accès.
Cet article décrit les méthodes "standards" de protection de parties de votre site web que la plupart d'entre vous sont appelés à utiliser.
Si vos données ont un réel besoin de sécurisation, prévoyez
l'utilisation de mod_ssl
en plus de toute méthode
d'authentification.
Les directives décrites dans cet article devront être insérées
soit au niveau de la configuration de votre serveur principal (en
général dans une section <Directory>
), soit au niveau de la
configuration des répertoires (fichiers .htaccess
)
Si vous envisagez l'utilisation de fichiers
.htaccess
, la configuration de votre serveur devra
permettre l'ajout de directives d'authentification dans ces
fichiers. Pour ce faire, on utilise la directive AllowOverride
, qui spécifie quelles
directives pourront éventuellement contenir les fichiers de
configuration de niveau répertoire.
Comme il est ici question d'authentification, vous aurez besoin
d'une directive AllowOverride
du style :
AllowOverride AuthConfig
Si vous avez l'intention d'ajouter les directives directement dans le fichier de configuration principal, vous devrez bien entendu posséder les droits en écriture sur ce fichier.
Vous devrez aussi connaître un tant soit peu la structure des répertoires de votre serveur, ne serait-ce que pour savoir où se trouvent certains fichiers. Cela ne devrait pas présenter de grandes difficultés, et nous essaierons de clarifier tout ça lorsque le besoin s'en fera sentir.
Enfin, vous devrez vous assurer que les modules
mod_authn_core
et mod_authz_core
ont été soit compilés avec le binaire httpd, soit chargés par le
fichier de configuration httpd.conf. Ces deux modules fournissent
des directives générales et des fonctionnalités qui sont critiques
quant à la configuration et l'utilisation de l'authentification et
de l'autorisation au sein du serveur web.