<-
Apache > Serveur HTTP > Documentation > Version 2.4 > Modules

Module Apache mod_authnz_ldap

Langues Disponibles:  en  |  fr 

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

Sommaire

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.

Directives

Sujets

Voir aussi

top

Sommaire

top

Mode op�ratoire

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 (NdT : en anglais ou dans le code source : search/bind). 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 (compare).

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.

La phase d'authentification

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 :

  1. Confection d'un filtre de recherche en combinant les attribut et filtre d�finis par la directive AuthLDAPURL avec le nom d'utilisateur et le mot de passe fournis par le client HTTP.
  2. Recherche dans l'annuaire LDAP en utilisant le filtre confectionn� pr�c�demment. Si le r�sultat de la recherche est n�gatif ou comporte plusieurs entr�es, refus ou restriction de l'acc�s.
  3. Extraction du DN (distinguished name) de l'entr�e issue du r�sultat de la recherche, et tentative de connexion au serveur LDAP en utilisant ce DN et le mot de passe fournis par le client HTTP. Si la connexion �choue, refus ou restriction de l'acc�s.

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.

La phase d'autorisation

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 :

Sous r�serve du chargement de modules d'autorisation suppl�mentaires, d'autres valeurs de la directive Require peuvent �tre sp�cifi�es.

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.
AuthLDAPMaxSubGroupDepth D�termine la profondeur maximale de l'arborescence des sous-groupes qui seront �valu�s au cours des op�rations de comparaisons initi�es par la directive Require ldap-group.
AuthLDAPSubGroupAttribute D�termine l'attribut � utiliser lors de l'extraction de membres de sous-groupes du groupe courant au cours des op�rations de comparaison initi�es par la directive Require ldap-group.
AuthLDAPSubGroupClass Sp�cifie les valeurs de classe d'objet LDAP � utiliser pour d�terminer si les objets extraits de l'annuaire sont bien des objets de type groupe (et non des objets de type utilisateur), au cours du traitement des sous-groupes initi� par la directive Require ldap-group.
top

Les directives requises

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.

Depuis la version 2.4.8, les directives require LDAP supportent les expressions.

Require ldap-user

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=Example?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

Require ldap-group

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=Example
objectClass: groupOfUniqueNames
uniqueMember: cn=Barbara Jenson, o=Example
uniqueMember: cn=Fred User, o=Example

La directive suivante autoriserait alors l'acc�s � Fred et Barbara :

Require ldap-group cn=Administrators, o=Example

Les membres peuvent aussi se trouver dans les sous-groupes du groupe LDAP sp�cifi� si la directive AuthLDAPMaxSubGroupDepth a �t� d�finie � une valeur sup�rieure � 0. Par exemple, supposons que les entr�es suivantes existent dans l'annuaire LDAP :

dn: cn=Employees, o=Example
objectClass: groupOfUniqueNames
uniqueMember: cn=Managers, o=Example
uniqueMember: cn=Administrators, o=Example
uniqueMember: cn=Users, o=Example

dn: cn=Managers, o=Example
objectClass: groupOfUniqueNames
uniqueMember: cn=Bob Ellis, o=Example
uniqueMember: cn=Tom Jackson, o=Example

dn: cn=Administrators, o=Example
objectClass: groupOfUniqueNames
uniqueMember: cn=Barbara Jenson, o=Example
uniqueMember: cn=Fred User, o=Example

dn: cn=Users, o=Example
objectClass: groupOfUniqueNames
uniqueMember: cn=Allan Jefferson, o=Example
uniqueMember: cn=Paul Tilley, o=Example
uniqueMember: cn=Temporary Employees, o=Example

dn: cn=Temporary Employees, o=Example
objectClass: groupOfUniqueNames
uniqueMember: cn=Jim Swenson, o=Example
uniqueMember: cn=Elliot Rhodes, o=Example

Les directives suivantes autoriseraient alors l'acc�s � Bob Ellis, Tom Jackson, Barbara Jensen, Fred User, Allan Jefferson, et Paul Tilley, mais l'interdiraient � Jim Swenson, ou Elliot Rhodes (car ils sont situ�s dans un sous-groupe de niveau de profondeur 2) :

Require ldap-group cn=Employees, o-Example
AuthLDAPMaxSubGroupDepth 1

Le comportement de cette directive est modifi� par les directives AuthLDAPGroupAttribute, AuthLDAPGroupAttributeIsDN, AuthLDAPMaxSubGroupDepth, AuthLDAPSubGroupAttribute, et AuthLDAPSubGroupClass.

Require ldap-dn

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=Example

Le comportement ce cette directive est modifi� par la directive AuthLDAPCompareDNOnServer.

Require ldap-attribute

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=active

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=active

Require ldap-filter

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.

top

Exemples

top

Utilisation de TLS

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.

top

Utilisation de SSL

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.

top

Mise � disposition des informations de connexion

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_".

Au cours du processus d'autorisation, 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 "AUTHORIZE_".

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.

top

Utilisation d'Active Directory

Active Directory peut supporter plusieurs domaines � la fois. Pour faire la distinction entre les utilisateurs de plusieurs domaines, on peut ajouter � l'entr�e de l'utilisateur dans l'annuaire un identifiant appel� Nom Principal d'Utilisateur (User Principle Name ou UPN). Cet UPN se compose en g�n�ral du nom de compte de l'utilisateur, suivi du nom du domaine consid�r�, par exemple [email protected].

Vous voudrez probablement configurer le module mod_authnz_ldap afin de pouvoir authentifier les utilisateurs de n'importe quel domaine de la for�t Active Directory. Ainsi, [email protected] et [email protected] pourront �tre authentifi�s en une seule fois par la m�me requ�te.

Pour y parvenir, on utilise le concept de Catalogue Global d'Active Directory. Ce Catalogue Global est une copie en lecture seule des attributs s�lectionn�s de tous les serveurs de la for�t Active Directory. Une requ�te vers le Catalogue Global permet donc d'atteindre tous les domaines en une seule fois, sans avoir � se connecter aux diff�rents serveurs, via des liaisons dont certaines peuvent �tre lentes.

Lorsqu'il est activ�, la Catalogue Global est un serveur d'annuaire ind�pendant accessible sur le port 3268 (3269 pour SSL). Pour rechercher un utilisateur, effectuez une recherche sur l'attribut userPrincipalName, avec une base de recherche vide, comme suit :

AuthLDAPBindDN [email protected]
AuthLDAPBindPassword password
AuthLDAPURL ldap://10.0.0.1:3268/?userPrincipalName?sub

Les utilisateurs devront s'authentifier en entrant leur UPN, de la forme[email protected].

top

Utilisation de Microsoft FrontPage avec mod_authnz_ldap

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       "the url"
AuthGroupFile     mygroupfile
Require group     mygroupfile

Comment �a marche

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.

Avertissements

top

AuthLDAPAuthorizePrefix Directive

Description:Sp�cifie le pr�fixe ajout� aux variables d'environnement durant la phase d'autorisation
Syntaxe:AuthLDAPAuthorizePrefix pr�fixe
D�faut:AuthLDAPAuthorizePrefix AUTHORIZE_
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authnz_ldap
Compatibilit�:Disponible depuis la version 2.3.6

Cette directive permet de sp�cifier le pr�fixe ajout� aux variables d'environnement durant la phase d'autorisation. Si la valeur sp�cifi�e est AUTHENTICATE_, les utilisateurs de ces variables d'environnement verront les m�mes informations, que le serveur effectue une authentification, une autorisation, ou les deux.

Note

Aucune variable d'autorisation n'est d�finie lorsqu'un utilisateur s'est vu autoriser l'acc�s via la directive Require valid-user.
top

AuthLDAPBindAuthoritative Directive

Description:D�termine si l'on doit utiliser d'autres fournisseurs d'authentification lorsque le serveur ne peut pas valider les donn�es d'authentification de l'utilisateur, alors que ce dernier poss�de un DN.
Syntaxe:AuthLDAPBindAuthoritativeoff|on
D�faut:AuthLDAPBindAuthoritative on
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authnz_ldap

Par d�faut, des fournisseurs d'authentification sont appel�s si un utilisateur ne poss�de pas de DN, mais ne le sont pas si l'utilisateur poss�de un DN et si son mot de passe ne peut pas �tre v�rifi� lors d'une connexion au serveur LDAP. Si la directive AuthLDAPBindAuthoritative est d�finie � off, d'autres modules d'authentification configur�s auront une chance de valider le mot de passe de l'utilisateur si la tentative de connexion au serveur LDAP �choue pour une raison quelconque (avec les donn�es d'authentification fournies).

Ceci permet aux utilisateurs pr�sent � la fois dans l'annuaire LDAP et dans un fichier AuthUserFile de s'authentifier lorsque le serveur LDAP est disponible, alors que le compte de l'utilisateur est verrouill� ou que son mot de passe est inutilisable pour une raison quelconque.

Voir aussi

top

AuthLDAPBindDN Directive

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.

top

AuthLDAPBindPassword Directive

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.4.5 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 valeur sp�cifi�e d�bute par "exec:", la commande qui suit sera ex�cut�e, et la premi�re ligne renvoy�e par la commande sur la sortie standard 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/otherProgram avec un argument pour obtenir le mot de passe
AuthLDAPBindPassword "exec:/path/to/otherProgram argument1"
top

AuthLDAPCharsetConfig Directive

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.

top

AuthLDAPCompareAsUser Directive

Description:Utilisation des donn�es d'authentification de l'utilisateur pour effectuer les comparaisons pour l'attribution des autorisations
Syntaxe:AuthLDAPCompareAsUser on|off
D�faut:AuthLDAPCompareAsUser off
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authnz_ldap
Compatibilit�:Disponible depuis la version version 2.3.6

Lorsque cette directive est d�finie, et si mod_authnz_ldap a authentifi� l'utilisateur, les recherches LDAP pour les autorisations utilisent le nom distinctif trouv� (DN) et le mot de passe d'authentification basique HTTP de l'utilisateur authentifi� au lieu des donn�es d'authentification configur�es au niveau du serveur.

Les v�rifications d'autorisation ldap-attribute, ldap-user, et ldap-group (niveau simple seulement) utilisent des comparaisons.

Cette directive n'a d'effet sur les comparaisons effectu�es au cours des traitements de groupe imbriqu�s, et lorsque la directive AuthLDAPSearchAsUser est aussi activ�e.

Cette directive ne doit �tre utilis�e que si votre serveur LDAP n'autorise pas les recherches anonymes, ou si vous ne pouvez pas utiliser de nom d'utilisateur d�di� via la directive AuthLDAPBindDN.

Voir aussi

top

AuthLDAPCompareDNOnServer Directive

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 des 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.

top

AuthLDAPDereferenceAliases Directive

Description:� 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.

top

AuthLDAPGroupAttribute Directive

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.

top

AuthLDAPGroupAttributeIsDN Directive

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=Example. Si la directive est � on, mod_authnz_ldap va v�rifier si cn=Babs Jenson, o=Example est un membre du groupe. Dans le cas contraire, mod_authnz_ldap v�rifiera si bjenson est un membre du groupe.

top

AuthLDAPInitialBindAsUser Directive

Description:D�termine si le serveur effectue la recherche initiale du DN en utilisant le nom propre de l'utilisateur pour l'authentification de base et non de mani�re anonyme, ou en utilisant des donn�es d'authentification cod�es en dur pour le serveur
Syntaxe:AuthLDAPInitialBindAsUser off|on
D�faut:AuthLDAPInitialBindAsUser off
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authnz_ldap
Compatibilit�:Disponible depuis la version 2.3.6

Par d�faut, le serveur convertit le nom d'utilisateur pour l'authentification de base en nom distinctif LDAP (DN) soit de mani�re anonyme, soit avec un couple nom/mot de passe d�di�. Cette directive permet de forcer le serveur � utiliser les v�ritables nom d'utilisateur et mot de passe fournis par l'utilisateur pour effectuer la recherche initiale du DN.

Si le nom d'utilisateur ne peut pas s'authentifier directement et n�cessite de l�g�res modifications, voir la directive AuthLDAPInitialBindPattern.

Cette directive ne doit �tre utilis�e que si votre serveur LDAP n'autorise pas les recherches anonymes, ou si vous ne pouvez pas utiliser de nom d'utilisateur d�di� via la directive AuthLDAPBindDN.

Non disponible dans la cas d'une autorisation seule

On ne peut utiliser cette directive que si ce module effectue une authentification, et n'a aucun effet si ce module n'est utilis� que pour les processus d'autorisation.

Voir aussi

top

AuthLDAPInitialBindPattern Directive

Description:Sp�cifie la modification a apporter au nom d'utilisateur pour l'authentification de base lors de l'authentification aupr�s du serveur LDAP pour effectuer une recherche de DN
Syntaxe:AuthLDAPInitialBindPatternregex substitution
D�faut:AuthLDAPInitialBindPattern (.*) $1 (nom de l'utilisateur distant utilis� tel quel)
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authnz_ldap
Compatibilit�:Disponible depuis la version 2.3.6

Si la directive AuthLDAPInitialBindAsUser est d�finie � ON, le nom utilisateur pour l'authentification de base sera transform� selon l'expression rationnelle regex et l'argument substitution sp�cifi�s.

L'expression rationnelle est compar�e au nom d'utilisateur pour l'authentification de base courant. L'argument substitution peut contenir des r�f�rences arri�res, mais n'effectue aucune autre interpolation de variable.

Cette directive ne doit �tre utilis�e que si votre serveur LDAP n'autorise pas les recherches anonymes, ou si vous ne pouvez pas utiliser de nom d'utilisateur d�di� via la directive AuthLDAPBindDN.

AuthLDAPInitialBindPattern (.+) [email protected]
AuthLDAPInitialBindPattern (.+) cn=$1,dc=example,dc=com

Non disponible dans la cas d'une autorisation seule

On ne peut utiliser cette directive que si ce module effectue une authentification, et n'a aucun effet si ce module n'est utilis� que pour les processus d'autorisation.

D�bogage

Le DN de substitution est enregistr� dans la variable d'environnement LDAP_BINDASUSER. Si l'expression rationnelle ne convient pas, le nom d'utilisateur est utilis� tel quel.

Voir aussi

top

AuthLDAPMaxSubGroupDepth Directive

Description:Sp�cifie la profondeur d'imbrication des sous-groupes maximale prise en compte avant l'abandon de la recherche de l'utilisateur.
Syntaxe:AuthLDAPMaxSubGroupDepth Nombre
D�faut:AuthLDAPMaxSubGroupDepth 10
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authnz_ldap
Compatibilit�:Disponible � partir de la version 2.3.0 du serveur HTTP Apache

Lorsque cette directive est d�finie � une valeur X non nulle, en combinaison avec l'utilisation de la directive Require ldap-group DN-groupe, les donn�es de connexion fournies seront utilis�es pour v�rifier l'appartenance de l'utilisateur � l'objet de l'annuaire DN-groupe ou � tout sous-groupe du groupe courant en tenant compte de la profondeur d'imbrication maximale X sp�cifi�e par la directive.

Se r�f�rer � la section Require ldap-group pour un exemple plus d�taill�.

Performances dans le cas des groupes imbriqu�s

Lorsque les directives AuthLDAPSubGroupAttribute et AuthLDAPGroupAttribute se recouvrent (comme c'est le cas par d�faut et requis par les sch�mas LDAP courants), la recherche de sous-groupes au sein de grands groupes peut �tre tr�s longue. Si vos groupes sont tr�s grands et non imbriqu�s, d�finissez la directive AuthLDAPMaxSubGroupDepth � 0.

top

AuthLDAPRemoteUserAttribute Directive

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.

top

AuthLDAPRemoteUserIsDN Directive

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.

top

AuthLDAPSearchAsUser Directive

Description:Utilise les donn�es d'authentification de l'utilisateur pour la recherche des autorisations
Syntaxe:AuthLDAPSearchAsUser on|off
D�faut:AuthLDAPSearchAsUser off
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authnz_ldap
Compatibilit�:Disponible depuis la version 2.3.6

Lorsque cette directive est d�finie, et si mod_authnz_ldap a authentifi� l'utilisateur, les recherches LDAP pour d�finir les autorisations utilisent le nom distinctif (DN) trouv� et le mot de passe pour l'authentification de base HTTP de l'utilisateur authentifi�, au lieu des donn�es d'authentification configur�es au niveau du serveur.

Les v�rifications d'autorisation ldap-filter et ldap-dn utilisent des recherches.

Cette directive n'a d'effet sur les comparaisons effectu�es au cours des traitements de groupe imbriqu�s, et lorsque la directive AuthLDAPCompareAsUser est aussi activ�e.

Cette directive ne doit �tre utilis�e que si votre serveur LDAP n'autorise pas les recherches anonymes, ou si vous ne pouvez pas utiliser de nom d'utilisateur d�di� via la directive AuthLDAPBindDN.

Voir aussi

top

AuthLDAPSubGroupAttribute Directive

Description:Sp�cifie les noms d'attribut, un par directive, utilis�s pour diff�rencier les membres du groupe courant qui sont eux-m�mes des groupes.
Syntaxe:AuthLDAPSubGroupAttribute attribut
D�faut:AuthLDAPSubgroupAttribute member uniquemember
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authnz_ldap
Compatibilit�:Disponible � partir de la version 2.3.0 du serveur HTTP Apache

Un objet groupe LDAP peut contenir des membres qui sont des utilisateurs et des membres qui sont eux-m�mes des groupes (appel�s sous-groupes ou groupes imbriqu�s). La directive AuthLDAPSubGroupAttribute sp�cifie l'attribut utilis� pour identifier les groupes, alors que la directive AuthLDAPGroupAttribute sp�cifie l'attribut utilis� pour identifier les utilisateurs. On peut sp�cifier plusieurs attributs en r�p�tant la directive plusieurs fois. Si elle n'est pas d�finie, mod_authnz_ldap utilise les attributs member et uniqueMember.

top

AuthLDAPSubGroupClass Directive

Description:Sp�cifie quelles valeurs d'objectClass LDAP identifient les objets de l'annuaire qui sont des groupes au cours du traitement des sous-groupes.
Syntaxe:AuthLDAPSubGroupClass ObjectClass-LDAP
D�faut:AuthLDAPSubGroupClass groupOfNames groupOfUniqueNames
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_authnz_ldap
Compatibilit�:Disponible � partir de la version 2.3.0 du serveur HTTP Apache

Un objet groupe LDAP peut contenir des membres qui sont des utilisateurs et des membres qui sont eux-m�mes des groupes (appel�s sous-groupes ou groupes imbriqu�s). La directive AuthLDAPSubGroupAttribute permet d'identifier les membres qui sont des sous-groupes du groupe courant (� l'oppos� des membres utilisateurs). La directive AuthLDAPSubGroupClass permet de sp�cifier les valeurs d'objectClass LDAP utilis�es pour v�rifier que certains membres sont en fait des objets groupe. Les sous-groupes ainsi identifi�s peuvent alors faire l'objet d'une recherche d'autres membres utilisateurs ou sous-groupes. On peut sp�cifier plusieurs attributs en r�p�tant cette directive plusieurs fois. Si cette directive n'est pas d�finie, mod_authnz_ldap utilise les attributs groupOfNames et groupOfUniqueNames.

top

AuthLDAPUrl Directive

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=..."

Mise en garde : Si vous sp�cifiez plusieurs serveurs, vous devez en entourer la liste avec des guillemets ; dans le cas contraire, vous g�n�rerez une erreur : "AuthLDAPURL takes one argument, URL to define LDAP connection..". Vous pouvez bien entendu ajouter des param�tres de recherche � chacun des serveurs sp�cifi�s.

ldap
Pour ldap non s�curis�, utilisez la cha�ne 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.
h�te:port

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. Notez qu'en cas de multiples serveurs LDAP, l'ensemble de l'URL LDAP doit �tre entour�e de guillemets.

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.

DN-de-base
Le DN de la branche de l'annuaire � partir de laquelle toutes les recherches seront lanc�es. Il doit au moins correspondre � la racine de votre annuaire, mais vous pouvez aussi indiquer une branche plus sp�cifique.
attribut
Il s'agit de l'attribut � utiliser pour la recherche. Bien que la RFC 2255 autorise une liste d'attributs s�par�s par des virgules, seul le premier sera retenu, sans tenir compte des autres attributs fournis. Si aucun attribut n'est fourni, l'attribut par d�faut est 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. Tous les attributs sp�cifi�s seront enregistr�s dans des variables d'environnement avec le pr�fixe AUTHENTICATE_, afin de pouvoir �tre utilis�s par d'autres modules.
port�e
Il s'agit de la port�e de la recherche. Elle peut prendre les valeurs 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.
filtre
Il s'agit d'un filtre de recherche LDAP valide. Si aucun filtre n'est sp�cifi�, le filtre par d�faut (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. Depuis la version 2.4.10, il est possible d'utiliser le param�tre "none" pour sp�cifier qu'aucun filtre n'est activ� ; ce param�tre est obligatoire avec certains serveurs LDAP primitifs.

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.example.com/o=Example?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 :

NONE
�tablit une connexion non s�curis�e sur le port LDAP par d�faut, ce qui est �quivalent � ldap:// sur le port 389.
SSL
�tablit une connexion s�curis�e sur le port LDAP s�curis� par d�faut, ce qui est �quivalent � ldaps://.
TLS | STARTTLS
�tablit une connexion s�curis�e par �l�vation de niveau sur le port LDAP par d�faut. Cette connexion sera initialis�e sur le port 389 par d�faut, puis �lev�e � un niveau de connexion s�curis�e sur le m�me port.

Voir plus haut pour des exemples d'URLs d�finies par la directive AuthLDAPURL.

Langues Disponibles:  en  |  fr 

top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.