mirror of
https://github.com/apache/httpd.git
synced 2025-07-05 16:21:14 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1794159 13f79535-47bb-0310-9956-ffa450edef68
906 lines
38 KiB
Plaintext
906 lines
38 KiB
Plaintext
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
|
|
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
|
|
<!-- English Revision: 1793934 -->
|
|
<!-- French translation : Lucien GENTIS -->
|
|
<!-- Reviewed by : Vincent Deffontaines -->
|
|
|
|
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<modulesynopsis metafile="mod_ldap.xml.meta">
|
|
|
|
<name>mod_ldap</name>
|
|
<description>Conservation des connexions LDAP et services de mise en
|
|
cache du résultat à destination des autres modules LDAP</description>
|
|
<status>Extension</status>
|
|
<sourcefile>util_ldap.c</sourcefile>
|
|
<identifier>ldap_module</identifier>
|
|
|
|
<summary>
|
|
<p>Ce module a été conçu dans le but d'améliorer les performances
|
|
des sites web s'appuyant sur des connexions en arrière-plan vers des
|
|
serveurs LDAP. Il ajoute aux fonctions fournies par les
|
|
bibliothèques standards LDAP la conservation des connexions LDAP
|
|
ainsi qu'un cache LDAP partagé en mémoire.</p>
|
|
|
|
<p>Pour activer ce module, le support LDAP doit être compilé dans
|
|
apr-util. Pour ce faire, on ajoute l'option <code>--with-ldap</code>
|
|
au script <program>configure</program> lorsqu'on construit
|
|
Apache.</p>
|
|
|
|
<p>Le support SSL/TLS est conditionné par le kit de développement
|
|
LDAP qui a été lié à <glossary>APR</glossary>. Au moment où ces
|
|
lignes sont écrites, APR-util supporte <a
|
|
href="http://www.openldap.org/">OpenLDAP SDK</a> (version 2.x ou
|
|
supérieure), <a
|
|
href="http://developer.novell.com/ndk/cldap.htm">Novell LDAP
|
|
SDK</a>, <a href="https://wiki.mozilla.org/LDAP_C_SDK">
|
|
Mozilla LDAP SDK</a>, le SDK LDAP Solaris natif (basé sur Mozilla)
|
|
ou le SDK LDAP Microsoft natif. Voir le site web <a
|
|
href="http://apr.apache.org">APR</a> pour plus de détails.</p>
|
|
|
|
</summary>
|
|
|
|
<section id="exampleconfig"><title>Exemple de configuration</title>
|
|
<p>Ce qui suit est un exemple de configuration qui utilise
|
|
<module>mod_ldap</module> pour améliorer les performances de
|
|
l'authentification HTTP de base fournie par
|
|
<module>mod_authnz_ldap</module>.</p>
|
|
|
|
<highlight language="config">
|
|
# Active la conservation des connexions LDAP et le cache partagé en
|
|
# mémoire. Active le gestionnaire de statut du cache LDAP.
|
|
# Nécessite le chargement de mod_ldap et de mod_authnz_ldap.
|
|
# Remplacez "votre-domaine.example.com" par le nom de votre
|
|
# domaine.
|
|
|
|
LDAPSharedCacheSize 500000
|
|
LDAPCacheEntries 1024
|
|
LDAPCacheTTL 600
|
|
LDAPOpCacheEntries 1024
|
|
LDAPOpCacheTTL 600
|
|
|
|
<Location "/ldap-status">
|
|
SetHandler ldap-status
|
|
|
|
Require host yourdomain.example.com
|
|
|
|
Satisfy any
|
|
AuthType Basic
|
|
AuthName "LDAP Protected"
|
|
AuthBasicProvider ldap
|
|
AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one
|
|
Require valid-user
|
|
</Location>
|
|
</highlight>
|
|
</section>
|
|
|
|
<section id="pool"><title>Conservation des connexions LDAP</title>
|
|
|
|
<p>Les connexions LDAP sont conservées de requête en requête. Ceci
|
|
permet de rester connecté et identifié au serveur LDAP, ce dernier
|
|
étant ainsi prêt pour la prochaine requête, sans avoir à se
|
|
déconnecter, reconnecter et réidentifier. Le gain en performances
|
|
est similaire à celui des connexions persistantes (keepalives)
|
|
HTTP.</p>
|
|
|
|
<p>Sur un serveur très sollicité, il est possible que de nombreuses
|
|
requêtes tentent d'accéder simultanément à la même connexion au
|
|
serveur LDAP. Lorsqu'une connexion LDAP est utilisée, Apache en crée
|
|
une deuxième en parallèle à la première, ce qui permet d'éviter que
|
|
le système de conservation des connexions ne devienne un goulot
|
|
d'étranglement.</p>
|
|
|
|
<p>Il n'est pas nécessaire d'activer explicitement la conservation
|
|
des connexions dans la configuration d'Apache. Tout module utilisant
|
|
le module ldap pour accéder aux services LDAP partagera le jeu de
|
|
connexions.</p>
|
|
|
|
<p>Les connexions LDAP peuvent garder la trace des données
|
|
d'identification du client ldap utilisées pour l'identification
|
|
auprès du serveur LDAP. Ces données peuvent être fournies aux
|
|
serveurs LDAP qui ne permettent pas les connexions anonymes au cours
|
|
lors des tentatives de sauts vers des serveurs alternatifs. Pour
|
|
contrôler cette fonctionnalité, voir les directives <directive
|
|
module="mod_ldap">LDAPReferrals</directive> et <directive
|
|
module="mod_ldap">LDAPReferralHopLimit</directive>. Cette
|
|
fonctionnalité est activée par défaut.</p>
|
|
</section>
|
|
|
|
<section id="cache"><title>Cache LDAP</title>
|
|
|
|
<p>Pour améliorer les performances, <module>mod_ldap</module> met en
|
|
oeuvre une stratégie de mise en cache agressive visant à minimiser
|
|
le nombre de fois que le serveur LDAP doit être contacté. La mise en
|
|
cache peut facilement doubler et même tripler le débit d'Apache
|
|
lorsqu'il sert des pages protégées par mod_authnz_ldap. De plus, le
|
|
serveur LDAP verra lui-même sa charge sensiblement diminuée.</p>
|
|
|
|
<p><module>mod_ldap</module> supporte deux types de mise en cache
|
|
LDAP : un <em>cache recherche/identification</em> durant la phase
|
|
de recherche/identification et deux <em>caches d'opérations</em>
|
|
durant la phase de comparaison. Chaque URL LDAP utilisée par le
|
|
serveur a son propre jeu d'instances dans ces trois caches.</p>
|
|
|
|
<section id="search-bind"><title>Le cache
|
|
recherche/identification</title>
|
|
<p>Les processus de recherche et d'identification sont les
|
|
opérations LDAP les plus consommatrices en temps, en particulier
|
|
si l'annuaire est de grande taille. Le cache de
|
|
recherche/identification met en cache toutes les recherches qui
|
|
ont abouti à une identification positive. Les résultats négatifs
|
|
(c'est à dire les recherches sans succès, ou les recherches qui
|
|
n'ont pas abouti à une identification positive) ne sont pas mis en
|
|
cache. La raison de cette décision réside dans le fait que les
|
|
connexions avec des données d'identification invalides ne
|
|
représentent qu'un faible pourcentage du nombre total de
|
|
connexions, et ainsi, le fait de ne pas mettre en cache les
|
|
données d'identification invalides réduira d'autant la taille du
|
|
cache.</p>
|
|
|
|
<p><module>mod_ldap</module> met en cache le nom d'utilisateur, le
|
|
DN extrait, le mot de passe utilisé pour l'identification, ainsi
|
|
que l'heure de l'identification. Chaque fois qu'une nouvelle
|
|
connexion est initialisée avec le même nom d'utilisateur,
|
|
<module>mod_ldap</module> compare le mot de passe de la nouvelle
|
|
connexion avec le mot de passe enregistré dans le cache. Si les
|
|
mots de passe correspondent, et si l'entrée du cache n'est pas
|
|
trop ancienne, <module>mod_ldap</module> court-circuite la phase
|
|
de recherche/identification.</p>
|
|
|
|
<p>Le cache de recherche/identification est contrôlé par les
|
|
directives <directive
|
|
module="mod_ldap">LDAPCacheEntries</directive> et <directive
|
|
module="mod_ldap">LDAPCacheTTL</directive>.</p>
|
|
</section>
|
|
|
|
<section id="opcaches"><title>Les caches d'opérations</title>
|
|
<p>Au cours des opérations de comparaison d'attributs et de noms
|
|
distinctifs (DN), <module>mod_ldap</module> utilise deux caches
|
|
d'opérations pour mettre en cache les opérations de comparaison.
|
|
Le premier cache de comparaison sert à mettre en cache les
|
|
résultats de comparaisons effectuées pour vérifier l'appartenance
|
|
à un groupe LDAP. Le second cache de comparaison sert à mettre en
|
|
cache les résultats de comparaisons entre DNs.</p>
|
|
|
|
<p>Notez que, lorsque l'appartenance à un groupe est vérifiée,
|
|
toute comparaison de sous-groupes est mise en cache afin
|
|
d'accélérer les comparaisons de sous-groupes ultérieures.</p>
|
|
|
|
<p>Le comportement de ces deux caches est contrôlé par les
|
|
directives <directive
|
|
module="mod_ldap">LDAPOpCacheEntries</directive> et <directive
|
|
module="mod_ldap">LDAPOpCacheTTL</directive>.</p>
|
|
</section>
|
|
|
|
<section id="monitoring"><title>Superviser le cache</title>
|
|
<p><module>mod_ldap</module> possède un gestionnaire de contenu
|
|
qui permet aux administrateurs de superviser les performances du
|
|
cache. Le nom du gestionnaire de contenu est
|
|
<code>ldap-status</code>, et on peut utiliser les directives
|
|
suivantes pour accéder aux informations du cache de
|
|
<module>mod_ldap</module> :</p>
|
|
|
|
<highlight language="config">
|
|
<Location "/server/cache-info">
|
|
SetHandler ldap-status
|
|
</Location>
|
|
</highlight>
|
|
|
|
<p>En se connectant à l'URL
|
|
<code>http://nom-serveur/infos-cache</code>, l'administrateur peut
|
|
obtenir un rapport sur le statut de chaque cache qu'utilise
|
|
<module>mod_ldap</module>. Notez que si Apache ne supporte pas la
|
|
mémoire partagée, chaque instance de <program>httpd</program>
|
|
possèdera son propre cache, et chaque fois que l'URL sera
|
|
rechargée, un résultat différent pourra être affiché, en fonction
|
|
de l'instance de <program>httpd</program> qui traitera la
|
|
requête.</p>
|
|
</section>
|
|
</section>
|
|
|
|
<section id="usingssltls"><title>Utiliser SSL/TLS</title>
|
|
|
|
<p>La possibilité de créer des connexions SSL et TLS avec un serveur
|
|
LDAP est définie par les directives <directive module="mod_ldap">
|
|
LDAPTrustedGlobalCert</directive>, <directive module="mod_ldap">
|
|
LDAPTrustedClientCert</directive> et <directive module="mod_ldap">
|
|
LDAPTrustedMode</directive>. Ces directives permettent de spécifier
|
|
l'autorité de certification (CA), les certificats clients éventuels,
|
|
ainsi que le type de chiffrement à utiliser pour la connexion (none,
|
|
SSL ou TLS/STARTTLS).</p>
|
|
|
|
<highlight language="config">
|
|
# Etablissement d'une connexion SSL LDAP sur le port 636.
|
|
# Nécessite le chargement de mod_ldap et mod_authnz_ldap.
|
|
# Remplacez "votre-domaine.example.com" par le nom de votre
|
|
# domaine.
|
|
|
|
LDAPTrustedGlobalCert CA_DER /certs/certfile.der
|
|
|
|
<Location "/ldap-status">
|
|
SetHandler ldap-status
|
|
|
|
Require host yourdomain.example.com
|
|
|
|
Satisfy any
|
|
AuthType Basic
|
|
AuthName "LDAP Protected"
|
|
AuthBasicProvider ldap
|
|
AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
|
|
Require valid-user
|
|
</Location>
|
|
</highlight>
|
|
|
|
<highlight language="config">
|
|
# Etablissement d'une connexion TLS LDAP sur le port 389.
|
|
# Nécessite le chargement de mod_ldap et mod_authnz_ldap.
|
|
# Remplacez "votre-domaine.example.com" par le nom de votre
|
|
# domaine.
|
|
|
|
LDAPTrustedGlobalCert CA_DER /certs/certfile.der
|
|
|
|
<Location "/ldap-status">
|
|
SetHandler ldap-status
|
|
|
|
Require host yourdomain.example.com
|
|
|
|
Satisfy any
|
|
AuthType Basic
|
|
AuthName "LDAP Protected"
|
|
AuthBasicProvider ldap
|
|
AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one TLS
|
|
Require valid-user
|
|
</Location>
|
|
</highlight>
|
|
|
|
</section>
|
|
|
|
<section id="settingcerts"><title>Certificats SSL/TLS</title>
|
|
|
|
<p>Les différents SDKs LDAP disposent de nombreuses méthodes pour
|
|
définir et gérer les certificats des clients et des autorités de
|
|
certification (CA).</p>
|
|
|
|
<p>Si vous avez l'intention d'utiliser SSL ou TLS, lisez cette
|
|
section ATTENTIVEMENT de façon à bien comprendre les différences de
|
|
configurations entre les différents SDKs LDAP supportés.</p>
|
|
|
|
<section id="settingcerts-netscape"><title>SDK Netscape/Mozilla/iPlanet</title>
|
|
<p>Les certificat de CA sont enregistrés dans un fichier nommé
|
|
cert7.db. Le SDK ne dialoguera avec aucun serveur LDAP dont le
|
|
certificat n'a pas été signé par une CA spécifiée dans ce
|
|
fichier. Si des certificats clients sont requis, un fichier
|
|
key3.db ainsi qu'un mot de passe optionnels peuvent être
|
|
spécifiés. On peut aussi spécifier le fichier secmod si
|
|
nécessaire. Ces fichiers sont du même format que celui utilisé
|
|
par les navigateurs web Netscape Communicator ou Mozilla. Le
|
|
moyen le plus simple pour obtenir ces fichiers consiste à les
|
|
extraire de l'installation de votre navigateur.</p>
|
|
|
|
<p>Les certificats clients sont spécifiés pour chaque connexion
|
|
en utilisant la directive LDAPTrustedClientCert et en se
|
|
référant au certificat "nickname". On peut éventuellement
|
|
spécifier un mot de passe pour déverrouiller la clé privée du
|
|
certificat.</p>
|
|
|
|
<p>Le SDK supporte seulement SSL. Toute tentative d'utilisation
|
|
de STARTTLS engendrera une erreur lors des tentatives de
|
|
contacter le serveur LDAP pendant l'exécution.</p>
|
|
|
|
<highlight language="config">
|
|
# Spécifie un fichier de certificats de CA Netscape
|
|
LDAPTrustedGlobalCert CA_CERT7_DB /certs/cert7.db
|
|
# Spécifie un fichier key3db optionnel pour le support des
|
|
# certificats clients
|
|
LDAPTrustedGlobalCert CERT_KEY3_DB /certs/key3.db
|
|
# Spécifie le fichier secmod si nécessaire
|
|
LDAPTrustedGlobalCert CA_SECMOD /certs/secmod
|
|
<Location "/ldap-status">
|
|
SetHandler ldap-status
|
|
|
|
Require host yourdomain.example.com
|
|
|
|
Satisfy any
|
|
AuthType Basic
|
|
AuthName "LDAP Protected"
|
|
AuthBasicProvider ldap
|
|
LDAPTrustedClientCert CERT_NICKNAME <nickname> [password]
|
|
AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
|
|
Require valid-user
|
|
</Location>
|
|
</highlight>
|
|
|
|
</section>
|
|
|
|
<section id="settingcerts-novell"><title>SDK Novell</title>
|
|
|
|
<p>Un ou plusieurs certificats de CA doivent être spécifiés pour
|
|
que le SDK Novell fonctionne correctement. Ces certificats
|
|
peuvent être spécifiés sous forme de fichiers au format binaire
|
|
DER ou codés en Base64 (PEM).</p>
|
|
|
|
<p>Note: Les certificats clients sont spécifiés globalement
|
|
plutôt qu'à chaque connexion, et doivent être spécifiés à l'aide
|
|
de la directive LDAPTrustedGlobalCert comme ci-dessous. Définir
|
|
des certificats clients via la directive LDAPTrustedClientCert
|
|
engendrera une erreur qui sera journalisée, au moment de la
|
|
tentative de connexion avec le serveur LDAP.</p>
|
|
|
|
<p>Le SDK supporte SSL et STARTTLS, le choix étant défini par le
|
|
paramètre de la directive LDAPTrustedMode. Si une URL de type
|
|
ldaps:// est spécifiée, le mode SSL est forcé, et l'emporte sur
|
|
cette directive.</p>
|
|
|
|
<highlight language="config">
|
|
# Spécifie deux fichiers contenant des certificats de CA
|
|
LDAPTrustedGlobalCert CA_DER /certs/cacert1.der
|
|
LDAPTrustedGlobalCert CA_BASE64 /certs/cacert2.pem
|
|
# Spécifie un fichier contenant des certificats clients
|
|
# ainsi qu'une clé
|
|
LDAPTrustedGlobalCert CERT_BASE64 /certs/cert1.pem
|
|
LDAPTrustedGlobalCert KEY_BASE64 /certs/key1.pem [password]
|
|
# N'utilisez pas cette directive, sous peine de provoquer
|
|
# une erreur
|
|
#LDAPTrustedClientCert CERT_BASE64 /certs/cert1.pem
|
|
</highlight>
|
|
|
|
</section>
|
|
|
|
<section id="settingcerts-openldap"><title>SDK OpenLDAP</title>
|
|
|
|
<p>Un ou plusieurs certificats de CA doivent être spécifiés pour
|
|
que le SDK OpenLDAP fonctionne correctement. Ces certificats
|
|
peuvent être spécifiés sous forme de fichiers au format binaire
|
|
DER ou codés en Base64 (PEM).</p>
|
|
|
|
<p>Les certificats clients sont spécifiés pour chaque connexion
|
|
à l'aide de la directive LDAPTrustedClientCert.</p>
|
|
|
|
<p>La documentation du SDK prétend que SSL et STARTTLS sont
|
|
supportés ; cependant, STARTTLS semble ne pas fonctionner avec
|
|
toutes les versions du SDK. Le mode SSL/TLS peut être défini en
|
|
utilisant le paramètre de la directive LDAPTrustedMode. Si une
|
|
URL de type
|
|
ldaps:// est spécifiée, le mode SSL est forcé. La documentation
|
|
OpenLDAP indique que le support SSL (ldaps://) tend à être
|
|
remplacé par TLS, bien que le mode SSL fonctionne toujours.</p>
|
|
|
|
<highlight language="config">
|
|
# Spécifie deux fichiers contenant des certificats de CA
|
|
LDAPTrustedGlobalCert CA_DER /certs/cacert1.der
|
|
LDAPTrustedGlobalCert CA_BASE64 /certs/cacert2.pem
|
|
<Location "/ldap-status">
|
|
SetHandler ldap-status
|
|
|
|
Require host yourdomain.example.com
|
|
|
|
LDAPTrustedClientCert CERT_BASE64 /certs/cert1.pem
|
|
LDAPTrustedClientCert KEY_BASE64 /certs/key1.pem
|
|
# CA certs respecified due to per-directory client certs
|
|
LDAPTrustedClientCert CA_DER /certs/cacert1.der
|
|
LDAPTrustedClientCert CA_BASE64 /certs/cacert2.pem
|
|
Satisfy any
|
|
AuthType Basic
|
|
AuthName "LDAP Protected"
|
|
AuthBasicProvider ldap
|
|
AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
|
|
Require valid-user
|
|
</Location>
|
|
</highlight>
|
|
|
|
</section>
|
|
|
|
<section id="settingcerts-solaris"><title>SDK Solaris</title>
|
|
|
|
<p>SSL/TLS pour les bibliothèques LDAP propres à Solaris n'est
|
|
pas encore supporté. Si nécessaire, installez et utilisez plutôt
|
|
les bibliothèques OpenLDAP.</p>
|
|
|
|
</section>
|
|
|
|
<section id="settingcerts-microsoft"><title>SDK Microsoft</title>
|
|
|
|
<p>La configuration des certificats SSL/TLS pour les
|
|
bibliothèques LDAP propres à Microsoft s'effectue à l'intérieur
|
|
du registre système, et aucune directive de configuration n'est
|
|
requise.</p>
|
|
|
|
<p>SSL et TLS sont tous deux supportés en utilisant des URLs de
|
|
type ldaps://, ou en définissant la directive LDAPTrustedMode à
|
|
cet effet.</p>
|
|
|
|
<p>Note: L'état du support des certificats clients n'est pas
|
|
encore connu pour ce SDK.</p>
|
|
|
|
</section>
|
|
|
|
</section>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPSharedCacheSize</name>
|
|
<description>Taille en octets du cache en mémoire partagée</description>
|
|
<syntax>LDAPSharedCacheSize <var>octets</var></syntax>
|
|
<default>LDAPSharedCacheSize 500000</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier le nombre d'octets à allouer
|
|
pour le cache en mémoire partagée. La valeur par
|
|
défaut est 500kb.
|
|
Si elle est définie à 0, le cache en mémoire partagée ne sera pas
|
|
utilisé et chaque processus HTTPD va créer son propre cache.</p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPSharedCacheFile</name>
|
|
<description>Définit le fichier du cache en mémoire
|
|
partagée</description>
|
|
<syntax>LDAPSharedCacheFile <var>chemin-fichier</var></syntax>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier le chemin du
|
|
fichier du cache en mémoire partagée. Si elle n'est pas définie, la
|
|
mémoire partagée anonyme sera utilisée si la plate-forme la
|
|
supporte.</p>
|
|
|
|
<p>Si <var>chemin-fichier</var> n'est pas un chemin absolu, il sera
|
|
relatif au répertoire défini via la directive <directive
|
|
module="core">DefaultRuntimeDir</directive>.</p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPCacheEntries</name>
|
|
<description>Nombre maximum d'entrées dans le cache LDAP
|
|
primaire</description>
|
|
<syntax>LDAPCacheEntries <var>nombre</var></syntax>
|
|
<default>LDAPCacheEntries 1024</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier la taille maximale du cache
|
|
LDAP primaire. Ce cache contient les résultats de
|
|
recherche/identification positifs. Définissez-la à 0 pour désactiver
|
|
la mise en cache des résultats de recherche/identification positifs.
|
|
La taille par défaut est de 1024 recherches en cache.</p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPCacheTTL</name>
|
|
<description>Durée pendant laquelle les entrées du cache restent
|
|
valides.</description>
|
|
<syntax>LDAPCacheTTL <var>secondes</var></syntax>
|
|
<default>LDAPCacheTTL 600</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier la durée (en secondes)
|
|
pendant laquelle une entrée du cache de recherche/identification
|
|
reste valide. La valeur par défaut est de 600 secondes (10
|
|
minutes).</p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPOpCacheEntries</name>
|
|
<description>Nombre d'entrées utilisées pour mettre en cache les
|
|
opérations de comparaison LDAP</description>
|
|
<syntax>LDAPOpCacheEntries <var>nombre</var></syntax>
|
|
<default>LDAPOpCacheEntries 1024</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier le nombre d'entrées que
|
|
<module>mod_ldap</module> va utiliser pour mettre en cache les
|
|
opérations de comparaison LDAP. La valeur par défaut est de 1024
|
|
entrées. Si elle est définie à 0, la mise en cache des opérations de
|
|
comparaison LDAP est désactivée.</p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPOpCacheTTL</name>
|
|
<description>Durée pendant laquelle les entrées du cache d'opérations
|
|
restent valides</description>
|
|
<syntax>LDAPOpCacheTTL <var>secondes</var></syntax>
|
|
<default>LDAPOpCacheTTL 600</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier la durée (en secondes)
|
|
pendant laquelle les entrées du cache d'opérations restent valides.
|
|
La valeur par défaut est de 600 secondes.</p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPReferralHopLimit</name>
|
|
<description>Le nombre maximum de redirections vers des serveurs
|
|
alternatifs (referrals) avant l'abandon de la requête
|
|
LDAP.</description>
|
|
<syntax>LDAPReferralHopLimit <var>nombre</var></syntax>
|
|
<default>Dépend du SDK, en général entre 5 et 10</default>
|
|
<contextlist><context>directory</context><context>.htaccess</context></contextlist>
|
|
<override>AuthConfig</override>
|
|
|
|
<usage>
|
|
<p>Si elle est activée par la directive <directive>LDAPReferrals</directive>,
|
|
cette directive permet de définir le nombre maximum de sauts vers
|
|
des serveurs alternatifs (referrals) avant l'abandon de la requête
|
|
LDAP.</p>
|
|
|
|
<note type="warning">
|
|
<p>L'ajustement de ce paramètre n'est pas commun à tous les SDKs LDAP.</p>
|
|
</note>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPReferrals</name>
|
|
<description>Active la redirection vers des serveurs alternatifs au
|
|
cours des requêtes vers le serveur LDAP.</description>
|
|
<syntax>LDAPReferrals <var>On|Off|default</var></syntax>
|
|
<default>LDAPReferrals On</default>
|
|
<contextlist><context>directory</context><context>.htaccess</context></contextlist>
|
|
<override>AuthConfig</override>
|
|
<compatibility>Le paramètre <var>default</var> est disponible depuis la
|
|
version 2.4.7 du serveur HTTP Apache.</compatibility>
|
|
|
|
<usage>
|
|
<p>Certains serveurs LDAP partagent leur annuaire en plusieurs
|
|
domaines et utilisent le système des redirections (referrals) pour
|
|
aiguiller un client lorsque les limites d'un domaine doivent être
|
|
franchies. Ce processus est similaire à une redirection HTTP. Les
|
|
bibliothèques client LDAP ne respectent pas forcément ces
|
|
redirections par défaut. Cette directive permet de configurer
|
|
explicitement les redirections LDAP dans le SDK sous-jacent.</p>
|
|
|
|
<p>La directive <directive>LDAPReferrals</directive> accepte les
|
|
valeurs suivantes :</p>
|
|
|
|
<dl>
|
|
<dt>"on"</dt>
|
|
<dd> <p>Avec la valeur "on", la prise en compte des redirections
|
|
LDAP par le SDK sous-jacent est activée, la directive
|
|
<directive>LDAPReferralHopLimit</directive> permet de surcharger la
|
|
"hop limit" du SDK, et un "LDAP rebind callback" est enregistré.</p></dd>
|
|
<dt>"off"</dt>
|
|
<dd> <p>Avec la valeur "off", la prise en compte des redirections
|
|
LDAP par le SDK sous-jacent est complètement désactivée.</p></dd>
|
|
<dt>"default"</dt>
|
|
<dd> <p>Avec la valeur "default", la prise en compte des redirections
|
|
LDAP par le SDK sous-jacent n'est pas modifiée, la directive
|
|
<directive>LDAPReferralHopLimit</directive> ne permet pas de surcharger la
|
|
"hop limit" du SDK, et aucun "LDAP rebind callback" n'est enregistré.</p></dd>
|
|
</dl>
|
|
|
|
<p>La directive <directive>LDAPReferralHopLimit</directive> travaille en
|
|
conjonction avec cette directive pour limiter le nombre de
|
|
redirections à suivre pour achever le traitement de la requête LDAP.
|
|
Lorsque le processus de redirection est activé par la valeur "On",
|
|
les données d'authentification du client sont transmises via un
|
|
"rebind callback" à tout serveur LDAP qui en fait la demande.</p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPRetryDelay</name>
|
|
<description>Définit le temps d'attente avant un autre essai de connexion au
|
|
serveur LDAP.</description>
|
|
<syntax>LDAPRetryDelay <var>secondes</var></syntax>
|
|
<default>LDAPRetryDelay 0</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Si la directive <directive>LDAPRetryDelay</directive> est définie
|
|
à une valeur différente de 0, le serveur attendra pendant la durée
|
|
spécifiée pour envoyer à nouveau sa requête LDAP. Une valeur de 0
|
|
implique une absence de délai pour les essais successifs.</p>
|
|
|
|
<p>Il est possible d'effectuer une autre tentative de connexion en
|
|
cas d'erreurs LDAP du type délai dépassé ou connexion refusée. </p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPRetries</name>
|
|
<description>Définit le nombre maximum de tentatives de connexions au
|
|
serveur LDAP.</description>
|
|
<syntax>LDAPRetries <var>nombre d'essais</var></syntax>
|
|
<default>LDAPRetries 3</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
<usage>
|
|
<p>Suite à des échecs de connexion au serveur LDAP, le serveur
|
|
tentera de se connecter autant de fois qu'indiqué par la directive
|
|
<directive>LDAPRetries</directive>. Si cette directive est définie à
|
|
0, le serveur ne tentera pas d'autre connexion après un échec.</p>
|
|
<p>Il est possible d'effectuer une autre tentative de connexion en
|
|
cas d'erreurs LDAP du type délai dépassé ou connexion refusée. </p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPTrustedGlobalCert</name>
|
|
<description>Définit le nom de fichier ou la base de données contenant
|
|
les Autorités de Certification de confiance globales ou les certificats
|
|
clients globaux</description>
|
|
<syntax>LDAPTrustedGlobalCert <var>type</var>
|
|
<var>chemin/nom-fichier</var> <var>[mot de passe]</var></syntax>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier le chemin et le nom du
|
|
fichier contenant les certificats des CA de confiance et/ou les
|
|
certificats clients du système global que <module>mod_ldap</module>
|
|
utilisera pour établir une connexion SSL ou TLS avec un serveur
|
|
LDAP. Notez que toute information relative aux certificats spécifiée
|
|
en utilisant cette directive s'applique globalement à l'ensemble de
|
|
l'installation du serveur. Certains SDK LDAP (en particulier Novell)
|
|
nécessitent la définition globale de tous les certificats clients en
|
|
utilisant cette directive. La plupart des autres SDK nécessitent la
|
|
définition des certificats clients dans une section Directory ou
|
|
Location en utilisant la directive LDAPTrustedClientCert. Si vous ne
|
|
définissez pas ces directives correctement, une erreur sera générée
|
|
lors des tentatives de contact avec un serveur LDAP, ou la connexion
|
|
échouera silencieusement (Voir plus haut le guide des certificats
|
|
SSL/TLS pour plus de détails). Le paramètre type spécifie le type de
|
|
certificat en cours de définition, en fonction du SDK LDAP utilisé.
|
|
Les types supportés sont :</p>
|
|
<ul>
|
|
<li>CA_DER - certificat de CA codé en binaire DER</li>
|
|
<li>CA_BASE64 - certificat de CA codé en PEM</li>
|
|
<li>CA_CERT7_DB - fichier de base de données des certificats de CA
|
|
de Netscape cert7.db</li>
|
|
<li>CA_SECMOD - fichier de base de données secmod de Netscape</li>
|
|
<li>CERT_DER - certificat client codé en binaire DER</li>
|
|
<li>CERT_BASE64 - certificat client codé en PEM</li>
|
|
<li>CERT_KEY3_DB - fichier de base de données des certificats
|
|
clients de Netscape key3.db</li>
|
|
<li>CERT_NICKNAME - certificat client "nickname" (SDK Netscape)</li>
|
|
<li>CERT_PFX - certificat client codé en PKCS#12 (SDK Novell)</li>
|
|
<li>KEY_DER - clé privée codée en binaire DER</li>
|
|
<li>KEY_BASE64 - clé privée codée en PEM</li>
|
|
<li>KEY_PFX - clé privée codée en PKCS#12 (SDK Novell)</li>
|
|
</ul>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPTrustedClientCert</name>
|
|
<description>Définit le nom de fichier contenant un certificat client ou
|
|
un alias renvoyant vers un certificat client spécifique à une connexion.
|
|
Tous les SDK LDAP ne supportent pas les certificats clients par
|
|
connexion.</description>
|
|
<syntax>LDAPTrustedClientCert <var>type</var>
|
|
<var>chemin/nom-fichier/alias</var> <var>[mot de passe]</var></syntax>
|
|
<contextlist><context>server config</context><context>virtual
|
|
host</context><context>directory</context><context>.htaccess</context></contextlist>
|
|
<override>AuthConfig</override>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier le chemin et le nom de
|
|
fichier ou l'alias d'un certificat client par connexion utilisé lors
|
|
de l'établissement d'une connexion SSL ou TLS avec un serveur LDAP.
|
|
Les sections directory ou location peuvent posséder leurs propres
|
|
configurations de certificats clients. Certains SDK LDAP (en
|
|
particulier Novell) ne supportent pas les certificats clients par
|
|
connexion, et renvoient une erreur lors de la connexion au serveur
|
|
LDAP si vous tenter d'utiliser cette directive (Utilisez à la place
|
|
la directive LDAPTrustedGlobalCert pour les certificats clients sous
|
|
Novell - Voir plus haut le guide des certificats SSL/TLS pour plus
|
|
de détails). Le paramètre type spécifie le type du certificat en
|
|
cours de définition, en fonction du SDK LDAP utilisé. Les types
|
|
supportés sont :</p>
|
|
<ul>
|
|
<li>CA_DER - certificat de CA codé en binaire DER</li>
|
|
<li>CA_BASE64 - certificat de CA codé en PEM</li>
|
|
<li>CERT_DER - certificat client codé en binaire DER</li>
|
|
<li>CERT_BASE64 - certificat client codé en PEM</li>
|
|
<li>CERT_NICKNAME - certificat client "nickname" (SDK Netscape)</li>
|
|
<li>KEY_DER - clé privée codée en binaire DER</li>
|
|
<li>KEY_BASE64 - clé privée codée en PEM</li>
|
|
</ul>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPTrustedMode</name>
|
|
<description>Spécifie le mode (SSL ou TLS) à utiliser lors de la
|
|
connexion à un serveur LDAP.</description>
|
|
<syntax>LDAPTrustedMode <var>type</var></syntax>
|
|
<contextlist><context>server config</context><context>virtual
|
|
host</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Les modes suivants sont supportés :</p>
|
|
<ul>
|
|
<li>NONE - aucun chiffrement</li>
|
|
<li>SSL - chiffrement ldaps:// sur le port par défaut 636</li>
|
|
<li>TLS - chiffrement STARTTLS sur le port par défaut 389</li>
|
|
</ul>
|
|
|
|
<p>Les modes ci-dessus ne sont pas supportés par tous les SDK LDAP.
|
|
Un message d'erreur sera généré à l'exécution si un mode n'est pas
|
|
supporté, et la connexion au serveur LDAP échouera.
|
|
</p>
|
|
|
|
<p>Si une URL de type ldaps:// est spécifiée, le mode est forcé à
|
|
SSL et la définition de LDAPTrustedMode est ignorée.</p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPConnectionTimeout</name>
|
|
<description>Spécifie le délai d'attente en secondes de la socket de
|
|
connexion</description>
|
|
<syntax>LDAPConnectionTimeout <var>secondes</var></syntax>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Cette directive configure l'option LDAP_OPT_NETWORK_TIMEOUT (ou
|
|
LDAP_OPT_CONNECT_TIMEOUT) dans la bibliothèque client LDAP
|
|
sous-jacente, si elle est disponible. Cette valeur représente la
|
|
durée pendant laquelle la bibliothèque client LDAP va attendre que
|
|
le processus de connexion TCP au serveur LDAP soit achevé.</p>
|
|
|
|
<p>Si la connexion n'a pas réussi avant ce délai, une erreur sera
|
|
renvoyée, ou la bibliothèque client LDAP tentera de se connecter à
|
|
un second serveur LDAP, s'il en a été défini un (via une liste de
|
|
noms d'hôtes séparés par des espaces dans la directive <directive
|
|
module="mod_authnz_ldap">AuthLDAPURL</directive>).</p>
|
|
|
|
<p>La valeur par défaut est 10 secondes, si la bibliothèque client
|
|
LDAP liée avec le serveur supporte l'option
|
|
LDAP_OPT_NETWORK_TIMEOUT.</p>
|
|
|
|
<note>LDAPConnectionTimeout n'est disponible que si la bibliothèque client
|
|
LDAP liée avec le serveur supporte l'option
|
|
LDAP_OPT_NETWORK_TIMEOUT (ou LDAP_OPT_CONNECT_TIMEOUT), et le
|
|
comportement final est entièrement dicté par la bibliothèque client
|
|
LDAP.
|
|
</note>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPTimeout</name>
|
|
<description>Spécifie le délai d'attente pour les opérations de
|
|
recherche et d'identification LDAP en secondes</description>
|
|
<syntax>LDAPTimeout <var>secondes</var></syntax>
|
|
<default>LDAPTimeout 60</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
<compatibility>Disponible à partir de la version 2.3.5 du serveur HTTP
|
|
Apache</compatibility>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier le délai d'attente pour les
|
|
opérations de recherche et d'identification, ainsi que l'option
|
|
LDAP_OPT_TIMEOUT dans la bibliothèque LDAP client sous-jacente,
|
|
lorsqu'elle est disponible.</p>
|
|
|
|
<p>Lorsque le délai est atteint, httpd va refaire un essai dans le
|
|
cas où une connexion existante a été silencieusement fermée par un
|
|
pare-feu. Les performances seront cependant bien meilleures si le
|
|
pare-feu est configuré pour envoyer des paquets TCP RST au lieu de
|
|
rejeter silencieusement les paquets.</p>
|
|
|
|
<note>
|
|
<p>Les délais pour les opérations de comparaison LDAP nécessitent un
|
|
SDK avec LDAP_OPT_TIMEOUT, comme OpenLDAP >= 2.4.4.</p>
|
|
</note>
|
|
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPVerifyServerCert</name>
|
|
<description>Force la vérification du certificat du
|
|
serveur</description>
|
|
<syntax>LDAPVerifyServerCert <var>On|Off</var></syntax>
|
|
<default>LDAPVerifyServerCert On</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier s'il faut forcer la
|
|
vérification d'un certificat de serveur lors de l'établissement
|
|
d'une connexion SSL avec un serveur LDAP.</p>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPConnectionPoolTTL</name>
|
|
<description>Désactive les connexions d'arrière-plan qui sont restées
|
|
inactives trop longtemps au sein du jeu de connexions.</description>
|
|
<syntax>LDAPConnectionPoolTTL <var>n</var></syntax>
|
|
<default>LDAPConnectionPoolTTL -1</default>
|
|
<contextlist><context>server config</context><context>virtual host</context></contextlist>
|
|
<compatibility>Disponible à partir de la version 2.3.12 du serveur HTTP
|
|
Apache</compatibility>
|
|
|
|
<usage>
|
|
<p>Cette directive permet de spécifier la durée maximale, en
|
|
secondes, pendant laquelle une connexion LDAP du jeu de connexions
|
|
peut demeurer inactive, mais rester quand-même disponible pour une
|
|
utilisation éventuelle. Le jeu de connexions est nettoyé au fur et à
|
|
mesure des besoins, de manière non asynchrone.</p>
|
|
|
|
<p>Si cette directive est définie à 0, les connexions ne sont jamais
|
|
sauvegardées dans le jeu de connexions d'arrière-plan. Avec la
|
|
valeur par défaut -1, ou toute autre valeur négative, les connexions
|
|
peuvent être réutilisées sans limite de durée.</p>
|
|
|
|
<p>Dans le but d'améliorer les performances, le temps de référence
|
|
qu'utilise cette directive correspond au moment où la connexion LDAP
|
|
est enregistrée ou remise dans le jeu de connexions, et non au
|
|
moment du dernier échange réussi avec le serveur LDAP.</p>
|
|
|
|
<p>La version 2.4.10 a introduit de nouvelles mesures permettant
|
|
d'éviter une augmentation excessive du temps de référence due à des
|
|
correspondances positives dans le cache ou des requêtes lentes. A
|
|
cet effet, le temps de référence n'est pas réactualisé si aucune
|
|
connexion LDAP d'arrière-plan n'est requise ; d'autre part, le temps
|
|
de référence se base sur le moment où la requête HTTP est reçue, et
|
|
non sur le moment où la requête a été traitée.</p>
|
|
|
|
<note><p>Cette durée de vie s'exprime par défaut en secondes, mais
|
|
il est possible d'utiliser d'autres unités en ajoutant un suffixe :
|
|
millisecondes (ms), minutes (min), ou heures (h).
|
|
</p></note>
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
<directivesynopsis>
|
|
<name>LDAPLibraryDebug</name>
|
|
<description>Active le débogage dans le SDK LDAP</description>
|
|
<syntax>LDAPLibraryDebug <var>7</var></syntax>
|
|
<default>disabled</default>
|
|
<contextlist><context>server config</context></contextlist>
|
|
|
|
<usage>
|
|
<p>Active les options de débogage LDAP spécifiques au SDK, qui
|
|
entraînent en général une journalisation d'informations verbeuses du
|
|
SDK LDAP dans le journal principal des erreurs d'Apache. Les
|
|
messages de traces en provenance du SDK LDAP fournissent des
|
|
informations très détaillées qui peuvent s'avérer utiles lors du
|
|
débogage des problèmes de connexion avec des serveurs LDAP
|
|
d'arrière-plan.</p>
|
|
|
|
<p>Cette option n'est configurable que lorsque le serveur HTTP
|
|
Apache est lié avec un SDK LDAP qui implémente
|
|
<code>LDAP_OPT_DEBUG</code> ou <code>LDAP_OPT_DEBUG_LEVEL</code>,
|
|
comme OpenLDAP (une valeur de 7 est verbeuse) ou Tivoli Directory
|
|
Server (une valeur de 65535 est verbeuse).</p>
|
|
|
|
<note type="warning">
|
|
<p>Les informations journalisées peuvent contenir des données
|
|
d'authentification en clair utilisées ou validées lors de
|
|
l'authentification LDAP ; vous devez donc prendre soin de protéger
|
|
et de purger le journal des erreurs lorsque cette directive est
|
|
utilisée.</p>
|
|
</note>
|
|
|
|
</usage>
|
|
</directivesynopsis>
|
|
|
|
</modulesynopsis>
|