2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
4 <!-- English Revision : 1607960 -->
5 <!-- French translation : Lucien GENTIS -->
6 <!-- Reviewed by : Vincent Deffontaines -->
10 Licensed to the Apache Software Foundation (ASF) under one or more
11 contributor license agreements. See the NOTICE file distributed with
12 this work for additional information regarding copyright ownership.
13 The ASF licenses this file to You under the Apache License, Version 2.0
14 (the "License"); you may not use this file except in compliance with
15 the License. You may obtain a copy of the License at
17 http://www.apache.org/licenses/LICENSE-2.0
19 Unless required by applicable law or agreed to in writing, software
20 distributed under the License is distributed on an "AS IS" BASIS,
21 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 See the License for the specific language governing permissions and
23 limitations under the License.
26 <modulesynopsis metafile="mod_ldap.xml.meta">
29 <description>Conservation des connexions LDAP et services de mise en
30 cache du résultat à destination des autres modules LDAP</description>
31 <status>Extension</status>
32 <sourcefile>util_ldap.c</sourcefile>
33 <identifier>ldap_module</identifier>
36 <p>Ce module a été conçu dans le but d'améliorer les performances
37 des sites web s'appuyant sur des connexions en arrière-plan vers des
38 serveurs LDAP. Il ajoute aux fonctions fournies par les
39 bibliothèques standards LDAP la conservation des connexions LDAP
40 ainsi qu'un cache LDAP partagé en mémoire.</p>
42 <p>Pour activer ce module, le support LDAP doit être compilé dans
43 apr-util. Pour ce faire, on ajoute l'option <code>--with-ldap</code>
44 au script <program>configure</program> lorsqu'on construit
47 <p>Le support SSL/TLS est conditionné par le kit de développement
48 LDAP qui a été lié à <glossary>APR</glossary>. Au moment où ces
49 lignes sont écrites, APR-util supporte <a
50 href="http://www.openldap.org/">OpenLDAP SDK</a> (version 2.x ou
51 supérieure), <a
52 href="http://developer.novell.com/ndk/cldap.htm">Novell LDAP
53 SDK</a>, <a href="https://wiki.mozilla.org/LDAP_C_SDK">
54 Mozilla LDAP SDK</a>, le SDK LDAP Solaris natif (basé sur Mozilla)
55 ou le SDK LDAP Microsoft natif. Voir le site web <a
56 href="http://apr.apache.org">APR</a> pour plus de détails.</p>
60 <section id="exampleconfig"><title>Exemple de configuration</title>
61 <p>Ce qui suit est un exemple de configuration qui utilise
62 <module>mod_ldap</module> pour améliorer les performances de
63 l'authentification HTTP de base fournie par
64 <module>mod_authnz_ldap</module>.</p>
66 <highlight language="config">
67 # Active la conservation des connexions LDAP et le cache partagé en
68 # mémoire. Active le gestionnaire de statut du cache LDAP.
69 # Nécessite le chargement de mod_ldap et de mod_authnz_ldap.
70 # Remplacez "votre-domaine.example.com" par le nom de votre
73 LDAPSharedCacheSize 500000
76 LDAPOpCacheEntries 1024
79 <Location /ldap-status>
80 SetHandler ldap-status
82 Require host yourdomain.example.com
86 AuthName "LDAP Protected"
87 AuthBasicProvider ldap
88 AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one
94 <section id="pool"><title>Conservation des connexions LDAP</title>
96 <p>Les connexions LDAP sont conservées de requête en requête. Ceci
97 permet de rester connecté et identifié au serveur LDAP, ce dernier
98 étant ainsi prêt pour la prochaine requête, sans avoir à se
99 déconnecter, reconnecter et réidentifier. Le gain en performances
100 est similaire à celui des connexions persistantes (keepalives)
103 <p>Sur un serveur très sollicité, il est possible que de nombreuses
104 requêtes tentent d'accéder simultanément à la même connexion au
105 serveur LDAP. Lorsqu'une connexion LDAP est utilisée, Apache en crée
106 une deuxième en parallèle à la première, ce qui permet d'éviter que
107 le système de conservation des connexions ne devienne un goulot
108 d'étranglement.</p>
110 <p>Il n'est pas nécessaire d'activer explicitement la conservation
111 des connexions dans la configuration d'Apache. Tout module utilisant
112 le module ldap pour accéder aux services LDAP partagera le jeu de
115 <p>Les connexions LDAP peuvent garder la trace des données
116 d'identification du client ldap utilisées pour l'identification
117 auprès du serveur LDAP. Ces données peuvent être fournies aux
118 serveurs LDAP qui ne permettent pas les connexions anonymes au cours
119 lors des tentatives de sauts vers des serveurs alternatifs. Pour
120 contrôler cette fonctionnalité, voir les directives <directive
121 module="mod_ldap">LDAPReferrals</directive> et <directive
122 module="mod_ldap">LDAPReferralHopLimit</directive>. Cette
123 fonctionnalité est activée par défaut.</p>
126 <section id="cache"><title>Cache LDAP</title>
128 <p>Pour améliorer les performances, <module>mod_ldap</module> met en
129 oeuvre une stratégie de mise en cache agressive visant à minimiser
130 le nombre de fois que le serveur LDAP doit être contacté. La mise en
131 cache peut facilement doubler et même tripler le débit d'Apache
132 lorsqu'il sert des pages protégées par mod_authnz_ldap. De plus, le
133 serveur LDAP verra lui-même sa charge sensiblement diminuée.</p>
135 <p><module>mod_ldap</module> supporte deux types de mise en cache
136 LDAP : un <em>cache recherche/identification</em> durant la phase
137 de recherche/identification et deux <em>caches d'opérations</em>
138 durant la phase de comparaison. Chaque URL LDAP utilisée par le
139 serveur a son propre jeu d'instances dans ces trois caches.</p>
141 <section id="search-bind"><title>Le cache
142 recherche/identification</title>
143 <p>Les processus de recherche et d'identification sont les
144 opérations LDAP les plus consommatrices en temps, en particulier
145 si l'annuaire est de grande taille. Le cache de
146 recherche/identification met en cache toutes les recherches qui
147 ont abouti à une identification positive. Les résultats négatifs
148 (c'est à dire les recherches sans succès, ou les recherches qui
149 n'ont pas abouti à une identification positive) ne sont pas mis en
150 cache. La raison de cette décision réside dans le fait que les
151 connexions avec des données d'identification invalides ne
152 représentent qu'un faible pourcentage du nombre total de
153 connexions, et ainsi, le fait de ne pas mettre en cache les
154 données d'identification invalides réduira d'autant la taille du
157 <p><module>mod_ldap</module> met en cache le nom d'utilisateur, le
158 DN extrait, le mot de passe utilisé pour l'identification, ainsi
159 que l'heure de l'identification. Chaque fois qu'une nouvelle
160 connexion est initialisée avec le même nom d'utilisateur,
161 <module>mod_ldap</module> compare le mot de passe de la nouvelle
162 connexion avec le mot de passe enregistré dans le cache. Si les
163 mots de passe correspondent, et si l'entrée du cache n'est pas
164 trop ancienne, <module>mod_ldap</module> court-circuite la phase
165 de recherche/identification.</p>
167 <p>Le cache de recherche/identification est contrôlé par les
168 directives <directive
169 module="mod_ldap">LDAPCacheEntries</directive> et <directive
170 module="mod_ldap">LDAPCacheTTL</directive>.</p>
173 <section id="opcaches"><title>Les caches d'opérations</title>
174 <p>Au cours des opérations de comparaison d'attributs et de noms
175 distinctifs (DN), <module>mod_ldap</module> utilise deux caches
176 d'opérations pour mettre en cache les opérations de comparaison.
177 Le premier cache de comparaison sert à mettre en cache les
178 résultats de comparaisons effectuées pour vérifier l'appartenance
179 à un groupe LDAP. Le second cache de comparaison sert à mettre en
180 cache les résultats de comparaisons entre DNs.</p>
182 <p>Notez que, lorsque l'appartenance à un groupe est vérifiée,
183 toute comparaison de sous-groupes est mise en cache afin
184 d'accélérer les comparaisons de sous-groupes ultérieures.</p>
186 <p>Le comportement de ces deux caches est contrôlé par les
187 directives <directive
188 module="mod_ldap">LDAPOpCacheEntries</directive> et <directive
189 module="mod_ldap">LDAPOpCacheTTL</directive>.</p>
192 <section id="monitoring"><title>Superviser le cache</title>
193 <p><module>mod_ldap</module> possède un gestionnaire de contenu
194 qui permet aux administrateurs de superviser les performances du
195 cache. Le nom du gestionnaire de contenu est
196 <code>ldap-status</code>, et on peut utiliser les directives
197 suivantes pour accéder aux informations du cache de
198 <module>mod_ldap</module> :</p>
200 <highlight language="config">
201 <Location /server/cache-info>
202 SetHandler ldap-status
206 <p>En se connectant à l'URL
207 <code>http://nom-serveur/infos-cache</code>, l'administrateur peut
208 obtenir un rapport sur le statut de chaque cache qu'utilise
209 <module>mod_ldap</module>. Notez que si Apache ne supporte pas la
210 mémoire partagée, chaque instance de <program>httpd</program>
211 possèdera son propre cache, et chaque fois que l'URL sera
212 rechargée, un résultat différent pourra être affiché, en fonction
213 de l'instance de <program>httpd</program> qui traitera la
218 <section id="usingssltls"><title>Utiliser SSL/TLS</title>
220 <p>La possibilité de créer des connexions SSL et TLS avec un serveur
221 LDAP est définie par les directives <directive module="mod_ldap">
222 LDAPTrustedGlobalCert</directive>, <directive module="mod_ldap">
223 LDAPTrustedClientCert</directive> et <directive module="mod_ldap">
224 LDAPTrustedMode</directive>. Ces directives permettent de spécifier
225 l'autorité de certification (CA), les certificats clients éventuels,
226 ainsi que le type de chiffrement à utiliser pour la connexion (none,
227 SSL ou TLS/STARTTLS).</p>
229 <highlight language="config">
230 # Etablissement d'une connexion SSL LDAP sur le port 636.
231 # Nécessite le chargement de mod_ldap et mod_authnz_ldap.
232 # Remplacez "votre-domaine.example.com" par le nom de votre
235 LDAPTrustedGlobalCert CA_DER /certs/certfile.der
237 <Location /ldap-status>
238 SetHandler ldap-status
240 Require host yourdomain.example.com
244 AuthName "LDAP Protected"
245 AuthBasicProvider ldap
246 AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
251 <highlight language="config">
252 # Etablissement d'une connexion TLS LDAP sur le port 389.
253 # Nécessite le chargement de mod_ldap et mod_authnz_ldap.
254 # Remplacez "votre-domaine.example.com" par le nom de votre
257 LDAPTrustedGlobalCert CA_DER /certs/certfile.der
259 <Location /ldap-status>
260 SetHandler ldap-status
262 Require host yourdomain.example.com
266 AuthName "LDAP Protected"
267 AuthBasicProvider ldap
268 AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one TLS
275 <section id="settingcerts"><title>Certificats SSL/TLS</title>
277 <p>Les différents SDKs LDAP disposent de nombreuses méthodes pour
278 définir et gérer les certificats des clients et des autorités de
279 certification (CA).</p>
281 <p>Si vous avez l'intention d'utiliser SSL ou TLS, lisez cette
282 section ATTENTIVEMENT de façon à bien comprendre les différences de
283 configurations entre les différents SDKs LDAP supportés.</p>
285 <section id="settingcerts-netscape"><title>SDK Netscape/Mozilla/iPlanet</title>
286 <p>Les certificat de CA sont enregistrés dans un fichier nommé
287 cert7.db. Le SDK ne dialoguera avec aucun serveur LDAP dont le
288 certificat n'a pas été signé par une CA spécifiée dans ce
289 fichier. Si des certificats clients sont requis, un fichier
290 key3.db ainsi qu'un mot de passe optionnels peuvent être
291 spécifiés. On peut aussi spécifier le fichier secmod si
292 nécessaire. Ces fichiers sont du même format que celui utilisé
293 par les navigateurs web Netscape Communicator ou Mozilla. Le
294 moyen le plus simple pour obtenir ces fichiers consiste à les
295 extraire de l'installation de votre navigateur.</p>
297 <p>Les certificats clients sont spécifiés pour chaque connexion
298 en utilisant la directive LDAPTrustedClientCert et en se
299 référant au certificat "nickname". On peut éventuellement
300 spécifier un mot de passe pour déverrouiller la clé privée du
303 <p>Le SDK supporte seulement SSL. Toute tentative d'utilisation
304 de STARTTLS engendrera une erreur lors des tentatives de
305 contacter le serveur LDAP pendant l'exécution.</p>
307 <highlight language="config">
308 # Spécifie un fichier de certificats de CA Netscape
309 LDAPTrustedGlobalCert CA_CERT7_DB /certs/cert7.db
310 # Spécifie un fichier key3db optionnel pour le support des
311 # certificats clients
312 LDAPTrustedGlobalCert CERT_KEY3_DB /certs/key3.db
313 # Spécifie le fichier secmod si nécessaire
314 LDAPTrustedGlobalCert CA_SECMOD /certs/secmod
315 <Location /ldap-status>
316 SetHandler ldap-status
318 Require host yourdomain.example.com
322 AuthName "LDAP Protected"
323 AuthBasicProvider ldap
324 LDAPTrustedClientCert CERT_NICKNAME <nickname> [password]
325 AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
332 <section id="settingcerts-novell"><title>SDK Novell</title>
334 <p>Un ou plusieurs certificats de CA doivent être spécifiés pour
335 que le SDK Novell fonctionne correctement. Ces certificats
336 peuvent être spécifiés sous forme de fichiers au format binaire
337 DER ou codés en Base64 (PEM).</p>
339 <p>Note: Les certificats clients sont spécifiés globalement
340 plutôt qu'à chaque connexion, et doivent être spécifiés à l'aide
341 de la directive LDAPTrustedGlobalCert comme ci-dessous. Définir
342 des certificats clients via la directive LDAPTrustedClientCert
343 engendrera une erreur qui sera journalisée, au moment de la
344 tentative de connexion avec le serveur LDAP.</p>
346 <p>Le SDK supporte SSL et STARTTLS, le choix étant défini par le
347 paramètre de la directive LDAPTrustedMode. Si une URL de type
348 ldaps:// est spécifiée, le mode SSL est forcé, et l'emporte sur
351 <highlight language="config">
352 # Spécifie deux fichiers contenant des certificats de CA
353 LDAPTrustedGlobalCert CA_DER /certs/cacert1.der
354 LDAPTrustedGlobalCert CA_BASE64 /certs/cacert2.pem
355 # Spécifie un fichier contenant des certificats clients
356 # ainsi qu'une clé
357 LDAPTrustedGlobalCert CERT_BASE64 /certs/cert1.pem
358 LDAPTrustedGlobalCert KEY_BASE64 /certs/key1.pem [password]
359 # N'utilisez pas cette directive, sous peine de provoquer
361 #LDAPTrustedClientCert CERT_BASE64 /certs/cert1.pem
366 <section id="settingcerts-openldap"><title>SDK OpenLDAP</title>
368 <p>Un ou plusieurs certificats de CA doivent être spécifiés pour
369 que le SDK OpenLDAP fonctionne correctement. Ces certificats
370 peuvent être spécifiés sous forme de fichiers au format binaire
371 DER ou codés en Base64 (PEM).</p>
373 <p>Les certificats clients sont spécifiés pour chaque connexion
374 à l'aide de la directive LDAPTrustedClientCert.</p>
376 <p>La documentation du SDK prétend que SSL et STARTTLS sont
377 supportés ; cependant, STARTTLS semble ne pas fonctionner avec
378 toutes les versions du SDK. Le mode SSL/TLS peut être défini en
379 utilisant le paramètre de la directive LDAPTrustedMode. Si une
381 ldaps:// est spécifiée, le mode SSL est forcé. La documentation
382 OpenLDAP indique que le support SSL (ldaps://) tend à être
383 remplacé par TLS, bien que le mode SSL fonctionne toujours.</p>
385 <highlight language="config">
386 # Spécifie deux fichiers contenant des certificats de CA
387 LDAPTrustedGlobalCert CA_DER /certs/cacert1.der
388 LDAPTrustedGlobalCert CA_BASE64 /certs/cacert2.pem
389 <Location /ldap-status>
390 SetHandler ldap-status
392 Require host yourdomain.example.com
394 LDAPTrustedClientCert CERT_BASE64 /certs/cert1.pem
395 LDAPTrustedClientCert KEY_BASE64 /certs/key1.pem
396 # CA certs respecified due to per-directory client certs
397 LDAPTrustedClientCert CA_DER /certs/cacert1.der
398 LDAPTrustedClientCert CA_BASE64 /certs/cacert2.pem
401 AuthName "LDAP Protected"
402 AuthBasicProvider ldap
403 AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
410 <section id="settingcerts-solaris"><title>SDK Solaris</title>
412 <p>SSL/TLS pour les bibliothèques LDAP propres à Solaris n'est
413 pas encore supporté. Si nécessaire, installez et utilisez plutôt
414 les bibliothèques OpenLDAP.</p>
418 <section id="settingcerts-microsoft"><title>SDK Microsoft</title>
420 <p>La configuration des certificats SSL/TLS pour les
421 bibliothèques LDAP propres à Microsoft s'effectue à l'intérieur
422 du registre système, et aucune directive de configuration n'est
425 <p>SSL et TLS sont tous deux supportés en utilisant des URLs de
426 type ldaps://, ou en définissant la directive LDAPTrustedMode à
429 <p>Note: L'état du support des certificats clients n'est pas
430 encore connu pour ce SDK.</p>
437 <name>LDAPSharedCacheSize</name>
438 <description>Taille en octets du cache en mémoire partagée</description>
439 <syntax>LDAPSharedCacheSize <var>octets</var></syntax>
440 <default>LDAPSharedCacheSize 500000</default>
441 <contextlist><context>server config</context></contextlist>
444 <p>Cette directive permet de spécifier le nombre d'octets à allouer
445 pour le cache en mémoire partagée. La valeur par
446 défaut est 500kb.
447 Si elle est définie à 0, le cache en mémoire partagée ne sera pas
448 utilisé et chaque processus HTTPD va créer son propre cache.</p>
453 <name>LDAPSharedCacheFile</name>
454 <description>Définit le fichier du cache en mémoire
455 partagée</description>
456 <syntax>LDAPSharedCacheFile <var>chemin-fichier</var></syntax>
457 <contextlist><context>server config</context></contextlist>
460 <p>Cette directive permet de spécifier le chemin du
461 fichier du cache en mémoire partagée. Si elle n'est pas définie, la
462 mémoire partagée anonyme sera utilisée si la plate-forme la
465 <p>Si <var>chemin-fichier</var> n'est pas un chemin absolu, il sera
466 relatif au répertoire défini via la directive <directive
467 module="core">DefaultRuntimeDir</directive>.</p>
472 <name>LDAPCacheEntries</name>
473 <description>Nombre maximum d'entrées dans le cache LDAP
474 primaire</description>
475 <syntax>LDAPCacheEntries <var>nombre</var></syntax>
476 <default>LDAPCacheEntries 1024</default>
477 <contextlist><context>server config</context></contextlist>
480 <p>Cette directive permet de spécifier la taille maximale du cache
481 LDAP primaire. Ce cache contient les résultats de
482 recherche/identification positifs. Définissez-la à 0 pour désactiver
483 la mise en cache des résultats de recherche/identification positifs.
484 La taille par défaut est de 1024 recherches en cache.</p>
489 <name>LDAPCacheTTL</name>
490 <description>Durée pendant laquelle les entrées du cache restent
491 valides.</description>
492 <syntax>LDAPCacheTTL <var>secondes</var></syntax>
493 <default>LDAPCacheTTL 600</default>
494 <contextlist><context>server config</context></contextlist>
497 <p>Cette directive permet de spécifier la durée (en secondes)
498 pendant laquelle une entrée du cache de recherche/identification
499 reste valide. La valeur par défaut est de 600 secondes (10
505 <name>LDAPOpCacheEntries</name>
506 <description>Nombre d'entrées utilisées pour mettre en cache les
507 opérations de comparaison LDAP</description>
508 <syntax>LDAPOpCacheEntries <var>nombre</var></syntax>
509 <default>LDAPOpCacheEntries 1024</default>
510 <contextlist><context>server config</context></contextlist>
513 <p>Cette directive permet de spécifier le nombre d'entrées que
514 <module>mod_ldap</module> va utiliser pour mettre en cache les
515 opérations de comparaison LDAP. La valeur par défaut est de 1024
516 entrées. Si elle est définie à 0, la mise en cache des opérations de
517 comparaison LDAP est désactivée.</p>
522 <name>LDAPOpCacheTTL</name>
523 <description>Durée pendant laquelle les entrées du cache d'opérations
524 restent valides</description>
525 <syntax>LDAPOpCacheTTL <var>secondes</var></syntax>
526 <default>LDAPOpCacheTTL 600</default>
527 <contextlist><context>server config</context></contextlist>
530 <p>Cette directive permet de spécifier la durée (en secondes)
531 pendant laquelle les entrées du cache d'opérations restent valides.
532 La valeur par défaut est de 600 secondes.</p>
537 <name>LDAPReferralHopLimit</name>
538 <description>Le nombre maximum de redirections vers des serveurs
539 alternatifs (referrals) avant l'abandon de la requête
541 <syntax>LDAPReferralHopLimit <var>nombre</var></syntax>
542 <default>Dépend du SDK, en général entre 5 et 10</default>
543 <contextlist><context>directory</context><context>.htaccess</context></contextlist>
544 <override>AuthConfig</override>
547 <p>Si elle est activée par la directive <directive>LDAPReferrals</directive>,
548 cette directive permet de définir le nombre maximum de sauts vers
549 des serveurs alternatifs (referrals) avant l'abandon de la requête
552 <note type="warning">
553 <p>L'ajustement de ce paramètre n'est pas commun à tous les SDKs LDAP.</p>
559 <name>LDAPReferrals</name>
560 <description>Active la redirection vers des serveurs alternatifs au
561 cours des requêtes vers le serveur LDAP.</description>
562 <syntax>LDAPReferrals <var>On|Off|default</var></syntax>
563 <default>LDAPReferrals On</default>
564 <contextlist><context>directory</context><context>.htaccess</context></contextlist>
565 <override>AuthConfig</override>
566 <compatibility>Le paramètre <var>default</var> est disponible depuis la
567 version 2.4.7 du serveur HTTP Apache.</compatibility>
570 <p>Certains serveurs LDAP partagent leur annuaire en plusieurs
571 domaines et utilisent le système des redirections (referrals) pour
572 aiguiller un client lorsque les limites d'un domaine doivent être
573 franchies. Ce processus est similaire à une redirection HTTP. Les
574 bibliothèques client LDAP ne respectent pas forcément ces
575 redirections par défaut. Cette directive permet de configurer
576 explicitement les redirections LDAP dans le SDK sous-jacent.</p>
578 <p>La directive <directive>LDAPReferrals</directive> accepte les
579 valeurs suivantes :</p>
583 <dd> <p>Avec la valeur "on", la prise en compte des redirections
584 LDAP par le SDK sous-jacent est activée, la directive
585 <directive>LDAPReferralHopLimit</directive> permet de surcharger la
586 "hop limit" du SDK, et un "LDAP rebind callback" est enregistré.</p></dd>
588 <dd> <p>Avec la valeur "off", la prise en compte des redirections
589 LDAP par le SDK sous-jacent est complètement désactivée.</p></dd>
591 <dd> <p>Avec la valeur "default", la prise en compte des redirections
592 LDAP par le SDK sous-jacent n'est pas modifiée, la directive
593 <directive>LDAPReferralHopLimit</directive> ne permet pas de surcharger la
594 "hop limit" du SDK, et aucun "LDAP rebind callback" n'est enregistré.</p></dd>
597 <p>La directive <directive>LDAPReferralHopLimit</directive> travaille en
598 conjonction avec cette directive pour limiter le nombre de
599 redirections à suivre pour achever le traitement de la requête LDAP.
600 Lorsque le processus de redirection est activé par la valeur "On",
601 les données d'authentification du client sont transmises via un
602 "rebind callback" à tout serveur LDAP qui en fait la demande.</p>
607 <name>LDAPRetryDelay</name>
608 <description>Définit le temps d'attente avant un autre essai de connexion au
609 serveur LDAP.</description>
610 <syntax>LDAPRetryDelay <var>secondes</var></syntax>
611 <default>LDAPRetryDelay 0</default>
612 <contextlist><context>server config</context></contextlist>
615 <p>Si la directive <directive>LDAPRetryDelay</directive> est définie
616 à une valeur différente de 0, le serveur attendra pendant la durée
617 spécifiée pour envoyer à nouveau sa requête LDAP. Une valeur de 0
618 implique une absence de délai pour les essais successifs.</p>
620 <p>Il est possible d'effectuer une autre tentative de connexion en
621 cas d'erreurs LDAP du type délai dépassé ou connexion refusée. </p>
626 <name>LDAPRetries</name>
627 <description>Définit le nombre maximum de tentatives de connexions au
628 serveur LDAP.</description>
629 <syntax>LDAPRetries <var>nombre d'essais</var></syntax>
630 <default>LDAPRetries 3</default>
631 <contextlist><context>server config</context></contextlist>
633 <p>Suite à des échecs de connexion au serveur LDAP, le serveur
634 tentera de se connecter autant de fois qu'indiqué par la directive
635 <directive>LDAPRetries</directive>. Si cette directive est définie à
636 0, le serveur ne tentera pas d'autre connexion après un échec.</p>
637 <p>Il est possible d'effectuer une autre tentative de connexion en
638 cas d'erreurs LDAP du type délai dépassé ou connexion refusée. </p>
643 <name>LDAPTrustedGlobalCert</name>
644 <description>Définit le nom de fichier ou la base de données contenant
645 les Autorités de Certification de confiance globales ou les certificats
646 clients globaux</description>
647 <syntax>LDAPTrustedGlobalCert <var>type</var>
648 <var>chemin/nom-fichier</var> <var>[mot de passe]</var></syntax>
649 <contextlist><context>server config</context></contextlist>
652 <p>Cette directive permet de spécifier le chemin et le nom du
653 fichier contenant les certificats des CA de confiance et/ou les
654 certificats clients du système global que <module>mod_ldap</module>
655 utilisera pour établir une connexion SSL ou TLS avec un serveur
656 LDAP. Notez que toute information relative aux certificats spécifiée
657 en utilisant cette directive s'applique globalement à l'ensemble de
658 l'installation du serveur. Certains SDK LDAP (en particulier Novell)
659 nécessitent la définition globale de tous les certificats clients en
660 utilisant cette directive. La plupart des autres SDK nécessitent la
661 définition des certificats clients dans une section Directory ou
662 Location en utilisant la directive LDAPTrustedClientCert. Si vous ne
663 définissez pas ces directives correctement, une erreur sera générée
664 lors des tentatives de contact avec un serveur LDAP, ou la connexion
665 échouera silencieusement (Voir plus haut le guide des certificats
666 SSL/TLS pour plus de détails). Le paramètre type spécifie le type de
667 certificat en cours de définition, en fonction du SDK LDAP utilisé.
668 Les types supportés sont :</p>
670 <li>CA_DER - certificat de CA codé en binaire DER</li>
671 <li>CA_BASE64 - certificat de CA codé en PEM</li>
672 <li>CA_CERT7_DB - fichier de base de données des certificats de CA
673 de Netscape cert7.db</li>
674 <li>CA_SECMOD - fichier de base de données secmod de Netscape</li>
675 <li>CERT_DER - certificat client codé en binaire DER</li>
676 <li>CERT_BASE64 - certificat client codé en PEM</li>
677 <li>CERT_KEY3_DB - fichier de base de données des certificats
678 clients de Netscape key3.db</li>
679 <li>CERT_NICKNAME - certificat client "nickname" (SDK Netscape)</li>
680 <li>CERT_PFX - certificat client codé en PKCS#12 (SDK Novell)</li>
681 <li>KEY_DER - clé privée codée en binaire DER</li>
682 <li>KEY_BASE64 - clé privée codée en PEM</li>
683 <li>KEY_PFX - clé privée codée en PKCS#12 (SDK Novell)</li>
689 <name>LDAPTrustedClientCert</name>
690 <description>Définit le nom de fichier contenant un certificat client ou
691 un alias renvoyant vers un certificat client spécifique à une connexion.
692 Tous les SDK LDAP ne supportent pas les certificats clients par
693 connexion.</description>
694 <syntax>LDAPTrustedClientCert <var>type</var>
695 <var>chemin/nom-fichier/alias</var> <var>[mot de passe]</var></syntax>
696 <contextlist><context>server config</context><context>virtual
697 host</context><context>directory</context><context>.htaccess</context></contextlist>
700 <p>Cette directive permet de spécifier le chemin et le nom de
701 fichier ou l'alias d'un certificat client par connexion utilisé lors
702 de l'établissement d'une connexion SSL ou TLS avec un serveur LDAP.
703 Les sections directory ou location peuvent posséder leurs propres
704 configurations de certificats clients. Certains SDK LDAP (en
705 particulier Novell) ne supportent pas les certificats clients par
706 connexion, et renvoient une erreur lors de la connexion au serveur
707 LDAP si vous tenter d'utiliser cette directive (Utilisez à la place
708 la directive LDAPTrustedGlobalCert pour les certificats clients sous
709 Novell - Voir plus haut le guide des certificats SSL/TLS pour plus
710 de détails). Le paramètre type spécifie le type du certificat en
711 cours de définition, en fonction du SDK LDAP utilisé. Les types
712 supportés sont :</p>
714 <li>CA_DER - certificat de CA codé en binaire DER</li>
715 <li>CA_BASE64 - certificat de CA codé en PEM</li>
716 <li>CERT_DER - certificat client codé en binaire DER</li>
717 <li>CERT_BASE64 - certificat client codé en PEM</li>
718 <li>CERT_NICKNAME - certificat client "nickname" (SDK Netscape)</li>
719 <li>KEY_DER - clé privée codée en binaire DER</li>
720 <li>KEY_BASE64 - clé privée codée en PEM</li>
726 <name>LDAPTrustedMode</name>
727 <description>Spécifie le mode (SSL ou TLS) à utiliser lors de la
728 connexion à un serveur LDAP.</description>
729 <syntax>LDAPTrustedMode <var>type</var></syntax>
730 <contextlist><context>server config</context><context>virtual
731 host</context></contextlist>
734 <p>Les modes suivants sont supportés :</p>
736 <li>NONE - aucun chiffrement</li>
737 <li>SSL - chiffrement ldaps:// sur le port par défaut 636</li>
738 <li>TLS - chiffrement STARTTLS sur le port par défaut 389</li>
741 <p>Les modes ci-dessus ne sont pas supportés par tous les SDK LDAP.
742 Un message d'erreur sera généré à l'exécution si un mode n'est pas
743 supporté, et la connexion au serveur LDAP échouera.
746 <p>Si une URL de type ldaps:// est spécifiée, le mode est forcé à
747 SSL et la définition de LDAPTrustedMode est ignorée.</p>
752 <name>LDAPConnectionTimeout</name>
753 <description>Spécifie le délai d'attente en secondes de la socket de
754 connexion</description>
755 <syntax>LDAPConnectionTimeout <var>secondes</var></syntax>
756 <contextlist><context>server config</context></contextlist>
759 <p>Cette directive configure l'option LDAP_OPT_NETWORK_TIMEOUT (ou
760 LDAP_OPT_CONNECT_TIMEOUT) dans la bibliothèque client LDAP
761 sous-jacente, si elle est disponible. Cette valeur représente la
762 durée pendant laquelle la bibliothèque client LDAP va attendre que
763 le processus de connexion TCP au serveur LDAP soit achevé.</p>
765 <p>Si la connexion n'a pas réussi avant ce délai, une erreur sera
766 renvoyée, ou la bibliothèque client LDAP tentera de se connecter à
767 un second serveur LDAP, s'il en a été défini un (via une liste de
768 noms d'hôtes séparés par des espaces dans la directive <directive
769 module="mod_authnz_ldap">AuthLDAPURL</directive>).</p>
771 <p>La valeur par défaut est 10 secondes, si la bibliothèque client
772 LDAP liée avec le serveur supporte l'option
773 LDAP_OPT_NETWORK_TIMEOUT.</p>
775 <note>LDAPConnectionTimeout n'est disponible que si la bibliothèque client
776 LDAP liée avec le serveur supporte l'option
777 LDAP_OPT_NETWORK_TIMEOUT (ou LDAP_OPT_CONNECT_TIMEOUT), et le
778 comportement final est entièrement dicté par la bibliothèque client
785 <name>LDAPTimeout</name>
786 <description>Spécifie le délai d'attente pour les opérations de
787 recherche et d'identification LDAP en secondes</description>
788 <syntax>LDAPTimeout <var>secondes</var></syntax>
789 <default>LDAPTimeout 60</default>
790 <contextlist><context>server config</context></contextlist>
791 <compatibility>Disponible à partir de la version 2.3.5 du serveur HTTP
792 Apache</compatibility>
795 <p>Cette directive permet de spécifier le délai d'attente pour les
796 opérations de recherche et d'identification, ainsi que l'option
797 LDAP_OPT_TIMEOUT dans la bibliothèque LDAP client sous-jacente,
798 lorsqu'elle est disponible.</p>
800 <p>Lorsque le délai est atteint, httpd va refaire un essai dans le
801 cas où une connexion existante a été silencieusement fermée par un
802 pare-feu. Les performances seront cependant bien meilleures si le
803 pare-feu est configuré pour envoyer des paquets TCP RST au lieu de
804 rejeter silencieusement les paquets.</p>
807 <p>Les délais pour les opérations de comparaison LDAP nécessitent un
808 SDK avec LDAP_OPT_TIMEOUT, comme OpenLDAP >= 2.4.4.</p>
815 <name>LDAPVerifyServerCert</name>
816 <description>Force la vérification du certificat du
817 serveur</description>
818 <syntax>LDAPVerifyServerCert <var>On|Off</var></syntax>
819 <default>LDAPVerifyServerCert On</default>
820 <contextlist><context>server config</context></contextlist>
823 <p>Cette directive permet de spécifier s'il faut forcer la
824 vérification d'un certificat de serveur lors de l'établissement
825 d'une connexion SSL avec un serveur LDAP.</p>
830 <name>LDAPConnectionPoolTTL</name>
831 <description>Désactive les connexions d'arrière-plan qui sont restées
832 inactives trop longtemps au sein du jeu de connexions.</description>
833 <syntax>LDAPConnectionPoolTTL <var>n</var></syntax>
834 <default>LDAPConnectionPoolTTL -1</default>
835 <contextlist><context>server config</context><context>virtual host</context></contextlist>
836 <compatibility>Disponible à partir de la version 2.3.12 du serveur HTTP
837 Apache</compatibility>
840 <p>Cette directive permet de spécifier la durée maximale, en
841 secondes, pendant laquelle une connexion LDAP du jeu de connexions
842 peut demeurer inactive, mais rester quand-même disponible pour une
843 utilisation éventuelle. Le jeu de connexions est nettoyé au fur et à
844 mesure des besoins, de manière non asynchrone.</p>
846 <p>Si cette directive est définie à 0, les connexions ne sont jamais
847 sauvegardées dans le jeu de connexions d'arrière-plan. Avec la
848 valeur par défaut -1, ou toute autre valeur négative, les connexions
849 peuvent être réutilisées sans limite de durée.</p>
851 <p>Dans le but d'améliorer les performances, le temps de référence
852 qu'utilise cette directive correspond au moment où la connexion LDAP
853 est enregistrée ou remise dans le jeu de connexions, et non au
854 moment du dernier échange réussi avec le serveur LDAP.</p>
856 <p>La version 2.4.10 a introduit de nouvelles mesures permettant
857 d'éviter une augmentation excessive du temps de référence due à des
858 correspondances positives dans le cache ou des requêtes lentes. A
859 cet effet, le temps de référence n'est pas réactualisé si aucune
860 connexion LDAP d'arrière-plan n'est requise ; d'autre part, le temps
861 de référence se base sur le moment où la requête HTTP est reçue, et
862 non sur le moment où la requête a été traitée.</p>
864 <note><p>Cette durée de vie s'exprime par défaut en secondes, mais
865 il est possible d'utiliser d'autres unités en ajoutant un suffixe :
866 millisecondes (ms), minutes (min), ou heures (h).
872 <name>LDAPLibraryDebug</name>
873 <description>Active le débogage dans le SDK LDAP</description>
874 <syntax>LDAPLibraryDebug <var>7</var></syntax>
875 <default>disabled</default>
876 <contextlist><context>server config</context></contextlist>
879 <p>Active les options de débogage LDAP spécifiques au SDK, qui
880 entraînent en général une journalisation d'informations verbeuses du
881 SDK LDAP dans le journal principal des erreurs d'Apache. Les
882 messages de traces en provenance du SDK LDAP fournissent des
883 informations très détaillées qui peuvent s'avérer utiles lors du
884 débogage des problèmes de connexion avec des serveurs LDAP
885 d'arrière-plan.</p>
887 <p>Cette option n'est configurable que lorsque le serveur HTTP
888 Apache est lié avec un SDK LDAP qui implémente
889 <code>LDAP_OPT_DEBUG</code> ou <code>LDAP_OPT_DEBUG_LEVEL</code>,
890 comme OpenLDAP (une valeur de 7 est verbeuse) ou Tivoli Directory
891 Server (une valeur de 65535 est verbeuse).</p>
893 <note type="warning">
894 <p>Les informations journalisées peuvent contenir des données
895 d'authentification en clair utilisées ou validées lors de
896 l'authentification LDAP ; vous devez donc prendre soin de protéger
897 et de purger le journal des erreurs lorsque cette directive est