From 7b31d4f4901cdb89a79f2f7de4a6b8bb637b523b Mon Sep 17 00:00:00 2001
From: Daniel Baumann Traitement des bugs
Voir aussi
@@ -583,6 +583,16 @@ AuthLDAPMaxSubGroupDepth 1
ldap-filter
, en particulier dans le cas d'un annuaire
LDAP de grande taille.
Lorsqu'on utilise une expression dans un + filtre, il faut s'assurer que les filtres LDAP sont correctement échappés + afin de se prémunir contre toute injection LDAP. Pour ce faire, + il est possible d'utiliser la fonction ldap.
+ +<LocationMatch ^/dav/(?<SITENAME>[^/]+)/> + Require ldap-filter (memberOf=cn=%{ldap:%{unescape:%{env:MATCH_SITENAME}},ou=Websites,o=Example) +</LocationMatch>+ + @@ -717,12 +727,11 @@ Require valid-user 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_".
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
+ spécifiés par la directive AuthLDAPURL
sont enregistrés
dans des variables d'environnement préfixées par la chaîne
"AUTHORIZE_".
AuthLDAPGroupAttribute attribut
AuthLDAPGroupAttribute member uniquemember
AuthLDAPGroupAttribute member uniqueMember
mod_authnz_ldap
utilise les attributs
- member
et uniquemember
.
+ member
et uniqueMember
.
@@ -1285,15 +1294,15 @@ d'environnement REMOTE_USER
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.
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.
@@ -1362,7 +1371,7 @@ pour la recherche des autorisations
pour différencier les membres du groupe courant qui sont eux-mêmes des
groupes.
AuthLDAPSubGroupAttribute attribut
AuthLDAPSubgroupAttribute member uniquemember
AuthLDAPSubgroupAttribute member uniqueMember
Description: | L'URL permettant de spécifier les paramètres de la -recherche LDAP |
---|---|
Syntaxe: | AuthLDAPUrl url [NONE|SSL|TLS|STARTTLS] |
Description: | URL specifying the LDAP search parameters |
Syntaxe: | AuthLDAPURL url [NONE|SSL|TLS|STARTTLS] |
Contexte: | répertoire, .htaccess |
Surcharges autorisées: | 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 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. 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.
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.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. 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 :
- -ldap://
sur le port
- 389.ldaps://
.Voir plus haut pour des exemples d'URLs définies par la directive
- AuthLDAPUrl
.
La documentation de cette directive + n'a pas encore t traduite. Veuillez vous reporter la version + en langue anglaise.