Serveur Apache HTTP Version 2.2
Description: | Permet d'utiliser un annuaire LDAP pour l'authentification HTTP de base. |
---|---|
Statut: | Extension |
Identificateur�de�Module: | authnz_ldap_module |
Fichier�Source: | mod_authnz_ldap.c |
Compatibilit�: | Dosponible depuis les versions 2.1 et sup�rieures d'Apache |
Ce module permet aux frontaux d'authentification comme
mod_auth_basic
d'authentifier les utilisateurs via
un annuaire ldap.
mod_authnz_ldap
supporte les fonctionnalit�s
suivantes :
Lorsqu'on utilise mod_auth_basic
, ce module est
invoqu� en affectant la valeur ldap
� la directive
AuthBasicProvider
.
L'utilisateur se voit accorder l'acc�s selon un processus en deux
phases. La premi�re phase est l'authentification, au cours de
laquelle le fournisseur d'authentification
mod_authnz_ldap
v�rifie que les informations de
connexion de l'utilisateur sont valides. Elle est aussi connue sous
le nom de phase de recherche/connexion. La deuxi�me
phase est l'autorisation, au cours de laquelle
mod_authnz_ldap
d�termine si l'utilisateur
authentifi� a la permission d'acc�der � la ressource consid�r�e.
Elle est aussi connue sous le nom de phase de
comparaison.
mod_authnz_ldap
comporte un fournisseur
d'authentification authn_ldap et un gestionnaire d'autorisation
authz_ldap. Le fournisseur d'authentification authn_ldap peut �tre
invoqu� en affectant la valeur ldap
� la directive
AuthBasicProvider
. Le
gestionnaire d'autorisation authz_ldap enrichit la liste des types
d'autorisations de la directive Require
en y ajoutant les
valeurs ldap-user
, ldap-dn
et
ldap-group
.
Au cours de la phase d'authentification,
mod_authnz_ldap
recherche une entr�e de l'annuaire
LDAP qui correspond au nom d'utilisateur fourni par le client HTTP.
Si une correspondance unique est trouv�e,
mod_authnz_ldap
tente de se connecter au serveur
h�bergeant l'annuaire LDAP en utilisant le DN de l'entr�e et le mot
de passe fourni par le client HTTP. Comme ce processus effectue tout
d'abord une recherche, puis une connexion, il est aussi connu sous
le nom de phase de recherche/connexion. Voici le d�tail des �tapes
constituant la phase de recherche/connexion :
AuthLDAPURL
avec le nom d'utilisateur et le mot de
passe fournis par le client HTTP.Les directives utilis�es durant la phase de recherche/connexion sont les suivantes :
AuthLDAPURL |
Sp�cifie le serveur LDAP, le DN de base, l'attribut � utiliser pour la recherche, ainsi que les filtres de recherche suppl�mentaires. |
AuthLDAPBindDN |
Un DN optionnel pour se connecter durant la phase de recherche. |
AuthLDAPBindPassword |
Un mot de passe optionnel pour se connecter durant la phase de recherche. |
Au cours de la phase d'autorisation,
mod_authnz_ldap
tente de d�terminer si
l'utilisateur est autoris� � acc�der � la ressource consid�r�e. Une
grande partie de cette v�rification consiste pour
mod_authnz_ldap
en des op�rations de comparaison au
niveau du serveur LDAP. C'est pourquoi cette phase est aussi connue
sous le nom de phase de comparaison.
mod_authnz_ldap
accepte les directives Require
suivantes pour
d�terminer si les informations de connexion permettent d'accorder
l'acc�s � l'utilisateur :
Require ldap-user
,
l'autorisation d'acc�s est accord�e si le nom d'utilisateur
sp�cifi� par la directive correspond au nom d'utilisateur fourni
par le client.Require
ldap-dn
, l'autorisation d'acc�s est accord�e si le DN
sp�cifi� par la directive correspond au DN extrait du r�sultat de
la recherche dans l'annuaire LDAP.Require ldap-group
,
l'autorisation d'acc�s est accord�e si le DN extrait du r�sultat de
la recherche dans l'annuaire LDAP (ou le nom d'utilisateur fourni
par le client) appartient au groupe LDAP sp�cifi� par la
directive.Require ldap-attribute
, l'autorisation d'acc�s
est accord�e si la valeur de l'attribut extraite de la recherche
dans l'annuaire LDAP correspond � la valeur sp�cifi�e par la
directive.Require ldap-filter
, l'autorisation d'acc�s
est accord�e si le filtre de recherche renvoie un objet
utilisateur unique qui corresponde au DN de l'utilisateur
authentifi�.Sous r�serve du chargement de modules d'autorisation
suppl�mentaires, d'autres valeurs de la directive Require
peuvent �tre
sp�cifi�es. Notez que si vous utilisez une valeur Require
fournie par un autre module
d'autorisation, vous devrez vous assurer que la directive AuthzLDAPAuthoritative
est
d�finie � off
, afin de pouvoir confier la phase
d'autorisation au module qui a fourni l'autre valeur Require
. Lorsqu'aucune directive LDAP
Require
sp�cifique n'est
fournie, la phase d'autorisation peut �tre confi�e � d'autres
modules, comme si AuthzLDAPAuthoritative
�tait
d�finie � off
.
Require
valid-user
est pr�sente (n�cessite le module
mod_authz_user
).Require group
, l'autorisation
d'acc�s est accord�e si le module
mod_authz_groupfile
a �t� charg� et si la
directive AuthGroupFile
a �t�
d�finie.Durant la phase de comparaison, mod_authnz_ldap
utilise les directives suivantes :
AuthLDAPURL
|
On utilise l'attribut sp�cifi� dans l'URL pour les
op�rations de comparaison initi�es par la directive
Require ldap-user . |
AuthLDAPCompareDNOnServer |
D�termine le comportement de la directive Require
ldap-dn . |
AuthLDAPGroupAttribute |
D�termine l'attribut utilis� pour les op�rations de
comparaison initi�es par la directive Require
ldap-group . |
AuthLDAPGroupAttributeIsDN |
Sp�cifie si l'on doit utiliser le DN ou le nom de
l'utilisateur lors des op�rations de comparaison initi�es par la
directive Require ldap-group . |
Les directives Require
d'Apache sont utilis�es
au cours de la phase d'autorisation afin de s'assurer que
l'utilisateur est autoris� � acc�der � une ressource.
mod_authnz_ldap enrichit la liste des types d'autorisations avec les
valeurs ldap-user
, ldap-dn
,
ldap-group
, ldap-attribute
et
ldap-filter
. D'autres types d'autorisations sont
disponibles, sous r�serve du chargement de modules d'autorisation
suppl�mentaires.
La directive Require ldap-user
permet de sp�cifier
les noms des utilisateurs autoris�s � acc�der � la ressource.
Lorsque mod_authnz_ldap
a extrait un DN unique de
l'annuaire LDAP, il effectue une op�ration de comparaison LDAP en
utilisant le nom d'utilisateur sp�cifi� par la directive
Require ldap-user
, pour v�rifier si ce nom
d'utilisateur correspond � l'entr�e LDAP extraite. On peut accorder
l'acc�s � plusieurs utilisateurs en pla�ant plusieurs nom
d'utilisateurs sur la m�me ligne s�par�s par des espaces. Si un nom
d'utilisateur contient des espaces, il doit �tre entour� de
guillemets. On peut aussi accorder l'acc�s � plusieurs utilisateurs
en utilisant une directive Require ldap-user
par
utilisateur. Par exemple, avec la directive AuthLDAPURL
d�finie �
ldap://ldap/o=Airius?cn
(sp�cifiant donc que l'attribut
cn
sera utilis� pour les recherches), on pourra
utiliser les directives Require suivantes pour restreindre l'acc�s
:
Require ldap-user "Barbara Jenson"
Require ldap-user "Fred User"
Require ldap-user "Joe Manager"
De par la mani�re dont mod_authnz_ldap
traite
cette directive, Barbara Jenson peut s'authentifier comme
Barbara Jenson, Babs Jenson ou tout autre
cn
sous lequel elle est enregistr�e dans l'annuaire
LDAP. Une seule ligne Require ldap-user
suffit pour
toutes les valeurs de l'attribut dans l'entr�e LDAP de
l'utilisateur.
Si l'attribut uid
avait �t� sp�cifi� � la place de
l'attribut cn
dans l'URL pr�c�dente, les trois lignes
ci-dessus auraient p� �tre condens�es en une seule ligne :
Require ldap-user bjenson fuser jmanager
Cette directive permet de sp�cifier un groupe LDAP dont les membres auront l'autorisation d'acc�s. Elle prend comme argument le DN du groupe LDAP. Note : n'entourez pas le nom du groupe avec des guillemets. Par exemple, supposons que l'entr�e suivante existe dans l'annuaire LDAP :
dn: cn=Administrators, o=Airius
objectClass: groupOfUniqueNames
uniqueMember: cn=Barbara Jenson, o=Airius
uniqueMember: cn=Fred User, o=Airius
La directive suivante autoriserait alors l'acc�s � Fred et Barbara :
Require ldap-group cn=Administrators, o=Airius
Le comportement de cette directive est modifi� par les directives
AuthLDAPGroupAttribute
et
AuthLDAPGroupAttributeIsDN
.
La directive Require ldap-dn
permet �
l'administrateur d'accorder l'utorisation d'acc�s en fonction du DN.
Elle permet de sp�cifier un DN pour lequel l'acc�s est autoris�. Si
le DN extrait de
l'annuaire correspond au DN sp�cifi� par la directive Require
ldap-dn
, l'autorisation d'acc�s est accord�e. Note :
n'entourez pas Le DN de guillemets.
La directive suivante accorderait l'acc�s � un DN sp�cifique :
Require ldap-dn cn=Barbara Jenson, o=Airius
Le comportement ce cette directive est modifi� par la directive
AuthLDAPCompareDNOnServer
.
La directive Require ldap-attribute
permet �
l'administrateur d'accorder l'autorisation d'acc�s en fonction des
attributs de l'utilisateur authentifi� dans l'annuaire LDAP. Si la
valeur de l'attribut dans l'annuaire correspond � la valeur
sp�cifi�e par la directive, l'autorisation d'acc�s est accord�e.
La directive suivante accorderait l'autorisation d'acc�s � tout utilisateur dont l'attribut employeeType a pour valeur "actif" :
Require ldap-attribute employeeType=actif
Plusieurs paires attribut/valeur peuvent �tre sp�cifi�es par une
m�me directive en les s�parant par des espaces, ou en d�finissant
plusieurs directives Require ldap-attribute
. La logique
sous-jacente � une liste de paires attribut/valeur est une op�ration
OU. L'autorisation d'acc�s sera accord�e si au moins une paire
attribut/valeur de la liste sp�cifi�e correspond � la paire
attribut/valeur de l'utilisateur authentifi�. Si elle contient des
espaces, la valeur, et seulement la valeur, doit �tre entour�e de
guillemets.
La directive suivante accorderait l'autorisation d'acc�s � tout utilisateur dont l'attribut city aurait pour valeur "San Jose", ou donc l'attribut status aurait pour valeur "actif" :
Require ldap-attribute city="San Jose" status=actif
La directive Require ldap-filter
permet �
l'administrateur d'accorder l'autorisation d'acc�s en fonction d'un
filtre de recherche LDAP complexe. L'autorisation d'acc�s est
accord�e si le DN renvoy� par le filtre de recherche correspond au
DN de l'utilisateur authentifi�.
La directive suivante accorderait l'autorisation d'acc�s � tout utilisateur poss�dant un t�l�phone cellulaire et faisant partie du d�partement "marketing" :
Require ldap-filter &(cell=*)(department=marketing)
Alors que la directive Require ldap-attribute
se
contente d'une simple comparaison d'attributs, la directive
Require ldap-filter
effectue une op�ration de recherche
dans l'annuaire LDAP en utilisant le filtre de recherche sp�cifi�.
Si une simple comparaison d'attributs suffit, l'op�ration de
comparaison effectu�e par ldap-attribute
sera plus
rapide que l'op�ration de recherche effectu�e par
ldap-filter
, en particulier dans le cas d'un annuaire
LDAP de grande taille.
AuthLDAPURL "ldap://ldap1.airius.com:389/ou=People, o=Airius?uid?sub?(objectClass=*)"
Require valid-user
AuthLDAPURL "ldap://ldap1.airius.com ldap2.airius.com/ou=People, o=Airius"
Require valid-user
cn
,
car une recherche sur le cn
doit
retourner une entr�e et une seule. C'est pourquoi cette
approche n'est pas recommand�e : il est pr�f�rable de choisir un
attribut de votre annuaire dont l'unicit� soit garantie, comme
uid
.
AuthLDAPURL "ldap://ldap.airius.com/ou=People, o=Airius?cn"
Require valid-user
AuthLDAPURL ldap://ldap.airius.com/o=Airius?uid
Require ldap-group cn=Administrators, o=Airius
qpagePagerID
. Seuls ces utilisateurs
(authentifi�s via leur UID) se verront accorder l'autorisation
d'acc�s :
AuthLDAPURL ldap://ldap.airius.com/o=Airius?uid??(qpagePagerID=*)
Require valid-user
L'exemple suivant illustre la puissance des filtres pour effectuer des requ�tes complexes. Sans les filtres, il aurait �t� n�cessaire de cr�er un nouveau groupe LDAP et de s'assurer de la synchronisation des membres du groupe avec les utilisateurs poss�dant un bippeur. Tout devient limpide avec les filtres. Nous avons pour but d'accorder l'autorisation d'acc�s � tout utilisateur disposant d'un bippeur ainsi qu'� Joe Manager qui ne poss�de pas de bippeur, mais doit tout de m�me pouvoir acc�der � la ressource :
AuthLDAPURL ldap://ldap.airius.com/o=Airius?uid??(|(qpagePagerID=*)(uid=jmanager))
Require valid-user
Ce dernier exemple peut sembler confus au premier abord ; en
fait, il permet de mieux comprendre � quoi doit ressembler le
filtre en fonction de l'utilisateur qui se connecte. Si Fred
User se connecte en tant que fuser
, le filtre devra
ressembler � :
(&(|(qpagePagerID=*)(uid=jmanager))(uid=fuser))
Un recherche avec le filtre ci-dessus ne retournera un r�sultat positif que si fuser dispose d'un bippeur. Si Joe Manager se connecte en tant que jmanager, le filtre devra ressembler � :
(&(|(qpagePagerID=*)(uid=jmanager))(uid=jmanager))
Un recherche avec le filtre ci-dessus retournera un r�sultat positif que jmanager dispose d'un bippeur ou non
Pour l'utilisation de TLS, voir les directives du module
mod_ldap
LDAPTrustedClientCert
, LDAPTrustedGlobalCert
et LDAPTrustedMode
.
Un second param�tre optionnel peut �tre ajout� � la directive
AuthLDAPURL
pour
remplacer le type de connexion par d�faut d�fini par la directive
LDAPTrustedMode
. Ceci
permettra de promouvoir la connexion �tablie via une URL du type
ldap:// au statut de connection s�curis�e sur le m�me
port.
Pour l'utilisation de SSL, voir les directives du module
mod_ldap
LDAPTrustedClientCert
, LDAPTrustedGlobalCert
et LDAPTrustedMode
.
Pour sp�cifier un serveur LDAP s�curis�, utilisez
ldaps:// au lieu de
ldap:// dans la directive AuthLDAPURL
.
Au cours du processus d'authentification, les attributs LDAP
sp�cifi�s par la directive AuthLDAPUrl
sont enregistr�s
dans des variables d'environnement pr�fix�es par la cha�ne
"AUTHENTICATE_".
Si les champs attribut contiennent le nom, le CN et le num�ro de t�l�phone d'un utilisateur, un programme CGI pourra acc�der � ces informations sans devoir effectuer une autre requ�te LDAP pour les extraire de l'annuaire.
Ceci a pour effet de simplifier consid�rablement le code et la configuration n�cessaire de certaines applications web.
Normalement, FrontPage utilise des fichiers utilisateur/groupe
sp�cifiques � FrontPage-web (c'est � dire les modules
mod_authn_file
et
mod_authz_groupfile
) pour effectuer toute
l'authentification. Malheureusement, il ne suffit pas de modifier
l'authentification LDAP en ajoutant les directives appropri�es, car
ceci corromprait les formulaires de Permissions dans le
client FrontPage, qui sont cens�s modifier les fichiers
d'autorisation standards au format texte.
Lorsqu'un site web FrontPage a �t� cr��, lui adjoindre
l'authentification LDAP consiste � ajouter les directives suivantes
� chaque fichier .htaccess
qui sera cr�� dans
le site web :
AuthLDAPURL "l'url" AuthGroupFile mon-fichier-de-groupes Require group mon-fichier-de-groupes
FrontPage restreint l'acc�s � un site web en ajoutant la
directive Require valid-user
aux fichiers
.htaccess
. La directive Require valid-user
permettra l'acc�s � tout utilisateur valide du point de vue
LDAP. Cela signifie que tout utilisateur poss�dant une entr�e
dans l'annuaire LDAP sera consid�r� comme valide, alors que
FrontPage ne consid�re comme valides que les utilisateurs
enregistr�s dans le fichier des utilisateurs local. En rempla�ant
l'autorisation par groupe LDAP par une autorisation par fichier de
groupe, Apache sera en mesure de consulter le fichier des
utilisateurs local (g�r� par FrontPage) - au lieu de l'annuaire LDAP
- lors du processus d'autorisation des utilisateurs.
Une fois les directives ajout�es selon ce qui pr�c�de, les utilisateurs FrontPage pourront effectuer toutes les op�rations de gestion � partir du client FrontPage.
mod_authn_file
. A cette fin,
l'UID est id�al.mod_auth_basic
, mod_authn_file
et mod_authz_groupfile
. Ceci est d� au fait
qu'Apache doit utiliser le fichier de groupes de
mod_authz_groupfile
pour d�terminer le niveau
d'acc�s d'un utilisateur au site web FrontPage..htaccess
. Elles ne fonctionneront pas si vous les
placez dans une section <Location>
ou <Directory>
. Ceci est d� au fait que pour savoir
o� se trouve la liste des utilisateurs valides,
mod_authnz_ldap
doit �tre en mesure d'atteindre
la directive AuthGroupFile
qui se trouve
dans les fichiers .htaccess
de FrontPage. Si les directives
de mod_authnz_ldap
ne sont pas situ�es dans le
m�me fichier .htaccess
que les directives FrontPage,
la configuration ne fonctionnera pas, car
mod_authnz_ldap
ne sera jamais en mesure de
traiter le fichier .htaccess
, et par cons�quent ne
pourra jamais trouver le fichier des utilisateurs g�r� par
FrontPage.Description: | D�termine si d'autres fournisseurs d'authentification doivent �tre utilis�s lorsqu'un utilisateur correspond � un DN, alors que le serveur ne parvient pas � se connecter avec les donn�es d'authentification. |
---|---|
Syntaxe: | AuthLDAPBindAuthoritativeoff|on |
D�faut: | AuthLDAPBindAuhtoritative on |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Compatibilit�: | Disponible dans les versions sup�rieures � 2.2.14 |
Par d�faut, d'autres fournisseurs d'authentification ne sont
sollicit�s que si l'utilisateur ne correspond � aucun DN, mais pas
lorsque celui-ci correspond � un DN alors que le serveur ne parvient
pas � se connecter avec les donn�es d'authentification. Si la
directive AuthLDAPBindAuthoritative
est
d�finie � off, d'autres modules d'authentification seront
en mesure de valider l'utilisateur si l'identification LDAP (avec
les donn�es d'authentification courantes) �choue pour une raison
quelconque.
Ceci permet � un utilisateur pr�sent � la fois dans LDAP et dans
AuthUserFile
de
s'authentifier lorsque le serveur LDAP est disponible alors que son
compte est bloqu� ou que son mot de passe est inutilisable.
Description: | Un DN optionnel pour se connecter au serveur LDAP |
---|---|
Syntaxe: | AuthLDAPBindDN dn |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Cette directive permet de d�finir un DN optionnel pour se
connecter au serveur afin d'y rechercher des entr�es. Si aucun DN
n'est sp�cifi�, mod_authnz_ldap
tentera une
connexion anonyme.
Description: | Mot de passe � utiliser en conjonction avec le DN de connexion |
---|---|
Syntaxe: | AuthLDAPBindPassword mot-de-passe |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Compatibilit�: | exec: est disponible depuis la version 2.2.25 du serveur HTTP Apache. |
Cette directive permet de sp�cifier un mot de passe � utiliser en
conjonction avec le DN de connexion. Notez que ce mot de passe
constitue en g�n�ral une donn�e sensible, et doit donc �tre prot�g�
de mani�re appropri�e. Vous ne devez utiliser les directives
AuthLDAPBindDN
et AuthLDAPBindPassword
que si
vous en avez vraiment besoin pour effectuer une recherche dans
l'annuaire.
Si la cha�ne sp�cifi�e comme mot de passe commence par exec: , la commande correspondante est ex�cut�e, et c'est la premi�re ligne qui sera renvoy�e par la commande sur la sortie standard qui sera utilis�e comme mot de passe.
# Mot de passe sp�cifi� directement AuthLDAPBindPassword secret # Ex�cution de /path/to/program pour obtenir le mot de passe AuthLDAPBindPassword exec:/path/to/program # Ex�cution de /path/to/program avec un argument pour obtenir le mot de passe AuthLDAPBindPassword "exec:/path/to/otherProgram argument1"
Description: | Chemin du fichier de configuration de la correspondance langage/jeu de caract�res |
---|---|
Syntaxe: | AuthLDAPCharsetConfig chemin-fichier |
Contexte: | configuration du serveur |
Statut: | Extension |
Module: | mod_authnz_ldap |
La directive AuthLDAPCharsetConfig
permet
de d�finir le chemin du fichier de configuration de la
correspondance langage/jeu de caract�res. chemin-fichier
est un chemin relatif au r�pertoire d�fini par la directive
ServerRoot
. Ce fichier contient une liste
de correspondances extension de langage/jeu de caract�res. La
plupart des administrateurs utilisent le fichier
charset.conv
fourni qui associe les extensions de
langage courantes � leurs jeux de caract�res.
Le fichier contient des lignes au format suivant :
extension de langage jeu de caract�res
[Nom du langage] ...
L'extension est insensible � la casse. Les lignes vides et les
lignes commen�ant par un di�se (#
) sont ignor�es.
Description: | Utilise le serveur LDAP pour comparer les DNs |
---|---|
Syntaxe: | AuthLDAPCompareDNOnServer on|off |
D�faut: | AuthLDAPCompareDNOnServer on |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Lorsque cette directive est d�finie � on,
mod_authnz_ldap
utilise le serveur LDAP pour
comparer les DNs. Il s'agit de la seule m�thode infaillible pour
comparer les DNs. mod_authnz_ldap
va rechercher
dans l'annuaire le DN sp�cifi� par la directive Require dn
, puis extraire ce DN et le
comparer avec le DN extrait de l'entr�e de l'utilisateur. Si cette
directive est � off, mod_authnz_ldap
effectue une
simple comparaison de cha�nes. Cette derni�re approche peut produire
de faux n�gatifs, mais elle est beaucoup plus rapide. Notez
cependant que le cache de mod_ldap
peut acc�l�rer
la comparaison de DNs dans la plupart des situations.
Description: | A quel moment le module va d�r�f�rencer les alias |
---|---|
Syntaxe: | AuthLDAPDereferenceAliases never|searching|finding|always |
D�faut: | AuthLDAPDereferenceAliases Always |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Cette directive permet de sp�cifier � quel moment
mod_authnz_ldap
va d�r�f�rencer les alias au cours
des op�rations li�es � LDAP. La valeur par d�faut est
always
.
Description: | L'attribut LDAP utilis� pour v�rifier l'appartenance d'un utilisateur � un groupe. |
---|---|
Syntaxe: | AuthLDAPGroupAttribute attribut |
D�faut: | AuthLDAPGroupAttribute member uniquemember |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Cette directive permet de sp�cifier quel attribut LDAP est
utilis� pour v�rifier l'appartenance d'un utilisateur � un
groupe. On peut sp�cifier plusieurs attributs en r�p�tant cette
directive plusieurs fois. Si la directive n'est pas d�finie,
mod_authnz_ldap
utilise les attributs
member
et uniquemember
.
Description: | Utilise le DN de l'utilisateur pour v�rifier son appartenance � un groupe |
---|---|
Syntaxe: | AuthLDAPGroupAttributeIsDN on|off |
D�faut: | AuthLDAPGroupAttributeIsDN on |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Lorsqu'elle est d�finie � on
, cette directive
indique que c'est le DN de l'utilisateur qui doit �tre utilis� pour
v�rifier son appartenance � un groupe. Dans le cas contraire, c'est
le nom de l'utilisateur qui sera utilis�. Par exemple, supposons que
le client envoie le nom d'utilisateur bjenson
, qui
correspond au DN LDAP cn=Babs Jenson,o=Airius
. Si la
directive est � on
, mod_authnz_ldap
va
v�rifier si cn=Babs Jenson, o=Airius
est un membre du
groupe. Dans le cas contraire, mod_authnz_ldap
v�rifiera si bjenson
est un membre du groupe.
Description: | Sp�cifie l'attribut dont la valeur renvoy�e au cours de la requ�te de l'utilisateur sera utilis�e pour d�finir la variable d'environnement REMOTE_USER |
---|---|
Syntaxe: | AuthLDAPRemoteUserAttribute uid |
D�faut: | none |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Lorsque cette directive est d�finie, la variable d'environnement
REMOTE_USER
sera d�finie � la valeur de l'attribut
sp�cifi�. Assurez-vous que cet attribut soit bien inclus dans la
liste d'attributs sp�cifi�s dans la d�finition de AuthLDAPUrl ; dans
le cas contraire, cette directive n'aurait aucun effet. Si elle est
pr�sente, cette directive l'emporte sur AuthLDAPRemoteUserIsDN. Elle
peut s'av�rer utile par exemple, si vous souhaitez que les
utilisateurs se connectent � un site web en utilisant leur adresse
email, alors qu'une application sous-jacente n�cessite un nom
d'utilisateur comme identifiant.
Description: | Utilise le DN de l'utilisateur pour d�finir la variable d'environnement REMOTE_USER |
---|---|
Syntaxe: | AuthLDAPRemoteUserIsDN on|off |
D�faut: | AuthLDAPRemoteUserIsDN off |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Lorsque cette directive est � on, la variable d'environnement
REMOTE_USER
sera d�finie avec la valeur du DN complet
de l'utilisateur authentifi�, et non plus avec simplement le nom
d'utilisateur fourni par le client. Elle est d�finie � off par
d�faut.
Description: | L'URL permettant de sp�cifier les param�tres de la recherche LDAP |
---|---|
Syntaxe: | AuthLDAPUrl url [NONE|SSL|TLS|STARTTLS] |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Une URL conforme � la RFC 2255 qui permet de sp�cifier les param�tres � utiliser pour la recherche dans l'annuaire LDAP. La syntaxe de l'URL est :
ldap://h�te:port/DN-de-base?attribut?port�e?filtre
Si vous souhaitez mettre � la disposition d'Apache plusieurs URLs LDAP, la syntaxe sera :
AuthLDAPUrl "ldap://ldap1.example.com
ldap2.example.com/dc=..."
ldap
. Pour ldap s�curis�, utilisez � la place la
cha�ne ldaps
. LDAP s�curis� n'est disponible que si
Apache a �t� li� avec une biblioth�que LDAP supportant SSL.Il s'agit du nom/port du serveur ldap
(dont la valeur par d�faut est
localhost:389
pour ldap
, et
localhost:636
pour ldaps
). Pour
sp�cifier plusieurs serveurs LDAP redondants, indiquez
simplement leur liste en les s�parant par des espaces.
mod_authnz_ldap
tentera alors de se connecter
� chacun des serveurs jusqu'� ce qu'il parvienne � se
connecter avec succ�s.
lorsqu'une connection a �t� �tablie avec un serveur, elle
reste active pendant toute la dur�e de vie du processus
httpd
, ou jusqu'� ce que le serveur LDAP
cesse de fonctionner.
Si le serveur LDAP cesse de fonctionner, et ainsi
interrompt une
connexion existante, mod_authnz_ldap
tentera
de se reconnecter en commen�ant par le premier serveur de la
liste, et ainsi de suite avec les serveurs redondants
suivants. Notez que ce processus n'a rien � voir avec une
v�ritable recherche de type round-robin.
uid
. Il est judicieux de choisir un
attribut dont la valeur sera unique parmi toutes les entr�es de
la branche de l'annuaire que vous aurez d�finie.one
ou sub
. Notez que la
RFC 2255 supporte aussi une port�e de valeur base
,
mais cette derni�re n'est pas support�e par le module. Si la
port�e n'est pas d�finie, ou si elle est d�finie �
base
, c'est la valeur de port�e par d�faut
sub
qui sera utilis�e.(objectClass=*)
sera utilis�, ce qui corrspond �
une recherche de tous les types d'objets de l'arborescence. La
taille des filtres est limit�e � environ 8000 caract�res (valeur
de la macro MAX_STRING_LEN
dans le code source
d'Apache), ce qui s'av�re plus que suffisant pour la plupart des
applications.Pour une recherche, les attribut, filtre et nom d'utilisateur
fournis par le client HTTP sont combin�s pour cr�er un filtre de
recherche du style :
(&(filtre)(attribut
=nom-utilisateur))
.
Par exemple, consid�rons l'URL
ldap://ldap.airius.com/o=Airius?cn?sub?(posixid=*)
.
Lorsqu'un client tentera de se connecter en utilisant le nom
d'utilisateur Babs Jenson
, le filtre de recherche sera
: (&(posixid=*)(cn=Babs Jenson))
.
On peut encore ajouter un param�tre optionnel pour permettre � l'URL LDAP de surcharger le type de connexion. Ce param�tre peut prendre l'une des valeurs suivantes :
ldap://
sur le port
389.ldaps://
.Voir plus haut pour des exemples d'URLs d�finies par la directive
AuthLDAPURL
.
Lorsque la directive AuthLDAPURL
a �t� d�finie dans
un contexte particulier, et si un autre module a effectu�
l'authentification correspondant � la requ�te, le serveur essaiera
de faire correspondre le nom d'utilisateur � un DN au cours du
processus d'autorisation, que des pr�requis LDAP sp�cifiques soient
pr�sents ou non. Pour ignorer les �checs de mise en correspondance
d'un nom d'utilisateur avec un DN au cours du processus
d'autorisation, d�finissez
AuthzLDAPAuthoritative
� "off".
Description: | Emp�che tout autre module d'authentification d'authentifier l'utilisateur si le module courant �choue. |
---|---|
Syntaxe: | AuthzLDAPAuthoritative on|off |
D�faut: | AuthzLDAPAuthoritative on |
Contexte: | r�pertoire, .htaccess |
AllowOverride: | AuthConfig |
Statut: | Extension |
Module: | mod_authnz_ldap |
Cette directive doit �tre d�finie � off
si ce module
doit confier l'autorisation de l'utilisateur � d'autres modules
d'autorisation en cas d'�chec. Le contr�le n'est pass� � des modules
de plus bas niveau que s'il n'existe aucun DN ou r�gle qui
corresponde au nom d'utilisateur fourni (tel qu'il est transmis par
le client).
Lorsqu'aucune directive LDAP Require
sp�cifique n'est utilis�e,
l'autorisation peut �tre confi�e � d'autres modules, comme si
AuthzLDAPAuthoritative
�tait
d�finie � off
.