You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by co...@apache.org on 2015/04/15 19:46:57 UTC
svn commit: r1673892 [23/36] - in /httpd/httpd/trunk/docs/manual: ./
developer/ howto/ misc/ mod/ platform/ rewrite/ vhosts/
Modified: httpd/httpd/trunk/docs/manual/mod/mod_ldap.html.fr
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/docs/manual/mod/mod_ldap.html.fr?rev=1673892&r1=1673891&r2=1673892&view=diff
==============================================================================
--- httpd/httpd/trunk/docs/manual/mod/mod_ldap.html.fr (original)
+++ httpd/httpd/trunk/docs/manual/mod/mod_ldap.html.fr Wed Apr 15 17:46:53 2015
@@ -54,7 +54,14 @@ cache du résultat à destination des au
ou le SDK LDAP Microsoft natif. Voir le site web <a href="http://apr.apache.org">APR</a> pour plus de détails.</p>
</div>
-<div id="quickview"><h3 class="directives">Directives</h3>
+<div id="quickview"><h3>Sujets</h3>
+<ul id="topics">
+<li><img alt="" src="../images/down.gif" /> <a href="#exampleconfig">Exemple de configuration</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#pool">Conservation des connexions LDAP</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#cache">Cache LDAP</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#usingssltls">Utiliser SSL/TLS</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#settingcerts">Certificats SSL/TLS</a></li>
+</ul><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#ldapcacheentries">LDAPCacheEntries</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#ldapcachettl">LDAPCacheTTL</a></li>
@@ -75,859 +82,852 @@ cache du résultat à destination des au
<li><img alt="" src="../images/down.gif" /> <a href="#ldaptrustedmode">LDAPTrustedMode</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#ldapverifyservercert">LDAPVerifyServerCert</a></li>
</ul>
-<h3>Sujets</h3>
-<ul id="topics">
-<li><img alt="" src="../images/down.gif" /> <a href="#exampleconfig">Exemple de configuration</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#pool">Conservation des connexions LDAP</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#cache">Cache LDAP</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#usingssltls">Utiliser SSL/TLS</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#settingcerts">Certificats SSL/TLS</a></li>
-</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
+<ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapcacheentries" id="ldapcacheentries">Directive</a> <a name="LDAPCacheEntries" id="LDAPCacheEntries">LDAPCacheEntries</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre maximum d'entrées dans le cache LDAP
-primaire</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPCacheEntries <var>nombre</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPCacheEntries 1024</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>
+<div class="section">
+<h2><a name="exampleconfig" id="exampleconfig">Exemple de configuration</a></h2>
+ <p>Ce qui suit est un exemple de configuration qui utilise
+ <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> pour améliorer les performances de
+ l'authentification HTTP de base fournie par
+ <code class="module"><a href="../mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code>.</p>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapcachettl" id="ldapcachettl">Directive</a> <a name="LDAPCacheTTL" id="LDAPCacheTTL">LDAPCacheTTL</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Durée pendant laquelle les entrées du cache restent
-valides.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPCacheTTL <var>secondes</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPCacheTTL 600</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>
+ <pre class="prettyprint lang-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.
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapconnectionpoolttl" id="ldapconnectionpoolttl">Directive</a> <a name="LDAPConnectionPoolTTL" id="LDAPConnectionPoolTTL">LDAPConnectionPoolTTL</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Désactive les connexions d'arrière-plan qui sont restées
-inactives trop longtemps au sein du jeu de connexions.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPConnectionPoolTTL <var>n</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPConnectionPoolTTL -1</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible à partir de la version 2.3.12 du serveur HTTP
-Apache</td></tr>
-</table>
- <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>
+LDAPSharedCacheSize 500000
+LDAPCacheEntries 1024
+LDAPCacheTTL 600
+LDAPOpCacheEntries 1024
+LDAPOpCacheTTL 600
- <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>
+<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></pre>
- <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>
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="pool" id="pool">Conservation des connexions LDAP</a></h2>
- <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>
+ <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>
- <div class="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></div>
+ <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>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapconnectiontimeout" id="ldapconnectiontimeout">Directive</a> <a name="LDAPConnectionTimeout" id="LDAPConnectionTimeout">LDAPConnectionTimeout</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Spécifie le délai d'attente en secondes de la socket de
-connexion</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPConnectionTimeout <var>secondes</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>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>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 <code class="directive"><a href="../mod/mod_authnz_ldap.html#authldapurl">AuthLDAPURL</a></code>).</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 <code class="directive"><a href="#ldapreferrals">LDAPReferrals</a></code> et <code class="directive"><a href="#ldapreferralhoplimit">LDAPReferralHopLimit</a></code>. Cette
+ fonctionnalité est activée par défaut.</p>
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="cache" id="cache">Cache LDAP</a></h2>
- <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>
+ <p>Pour améliorer les performances, <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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>
- <div class="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.
- </div>
+ <p><code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldaplibrarydebug" id="ldaplibrarydebug">Directive</a> <a name="LDAPLibraryDebug" id="LDAPLibraryDebug">LDAPLibraryDebug</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active le débogage dans le SDK LDAP</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPLibraryDebug <var>7</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>disabled</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>
+ <h3><a name="search-bind" id="search-bind">Le cache
+ recherche/identification</a></h3>
+ <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>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>
+ <p><code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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,
+ <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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, <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> court-circuite la phase
+ de recherche/identification.</p>
- <div class="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>
- </div>
+ <p>Le cache de recherche/identification est contrôlé par les
+ directives <code class="directive"><a href="#ldapcacheentries">LDAPCacheEntries</a></code> et <code class="directive"><a href="#ldapcachettl">LDAPCacheTTL</a></code>.</p>
+
+ <h3><a name="opcaches" id="opcaches">Les caches d'opérations</a></h3>
+ <p>Au cours des opérations de comparaison d'attributs et de noms
+ distinctifs (DN), <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapopcacheentries" id="ldapopcacheentries">Directive</a> <a name="LDAPOpCacheEntries" id="LDAPOpCacheEntries">LDAPOpCacheEntries</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre d'entrées utilisées pour mettre en cache les
-opérations de comparaison LDAP</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPOpCacheEntries <var>nombre</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPOpCacheEntries 1024</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <p>Cette directive permet de spécifier le nombre d'entrées que
- <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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>
-
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapopcachettl" id="ldapopcachettl">Directive</a> <a name="LDAPOpCacheTTL" id="LDAPOpCacheTTL">LDAPOpCacheTTL</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Durée pendant laquelle les entrées du cache d'opérations
-restent valides</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPOpCacheTTL <var>secondes</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPOpCacheTTL 600</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>
+ <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>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapreferralhoplimit" id="ldapreferralhoplimit">Directive</a> <a name="LDAPReferralHopLimit" id="LDAPReferralHopLimit">LDAPReferralHopLimit</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nombre maximum de redirections vers des serveurs
-alternatifs (referrals) avant l'abandon de la requête
-LDAP.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPReferralHopLimit <var>nombre</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Dépend du SDK, en général entre 5 et 10</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
-<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <p>Si elle est activée par la directive <code class="directive">LDAPReferrals</code>,
- 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>
+ <p>Le comportement de ces deux caches est contrôlé par les
+ directives <code class="directive"><a href="#ldapopcacheentries">LDAPOpCacheEntries</a></code> et <code class="directive"><a href="#ldapopcachettl">LDAPOpCacheTTL</a></code>.</p>
+
-<div class="warning">
-<p>L'ajustement de ce paramètre n'est pas commun à tous les SDKs LDAP.</p>
-</div>
+ <h3><a name="monitoring" id="monitoring">Superviser le cache</a></h3>
+ <p><code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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
+ <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> :</p>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapreferrals" id="ldapreferrals">Directive</a> <a name="LDAPReferrals" id="LDAPReferrals">LDAPReferrals</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active la redirection vers des serveurs alternatifs au
-cours des requêtes vers le serveur LDAP.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPReferrals <var>On|Off|default</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPReferrals On</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
-<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Le paramètre <var>default</var> est disponible depuis la
-version 2.4.7 du serveur HTTP Apache.</td></tr>
-</table>
- <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>
+ <pre class="prettyprint lang-config"><Location /server/cache-info>
+ SetHandler ldap-status
+</Location></pre>
- <p>La directive <code class="directive">LDAPReferrals</code> 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
- <code class="directive">LDAPReferralHopLimit</code> 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
- <code class="directive">LDAPReferralHopLimit</code> ne permet pas de surcharger la
- "hop limit" du SDK, et aucun "LDAP rebind callback" n'est enregistré.</p></dd>
- </dl>
+ <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
+ <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code>. Notez que si Apache ne supporte pas la
+ mémoire partagée, chaque instance de <code class="program"><a href="../programs/httpd.html">httpd</a></code>
+ 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 <code class="program"><a href="../programs/httpd.html">httpd</a></code> qui traitera la
+ requête.</p>
- <p>La directive <code class="directive">LDAPReferralHopLimit</code> 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>
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="usingssltls" id="usingssltls">Utiliser SSL/TLS</a></h2>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapretries" id="ldapretries">Directive</a> <a name="LDAPRetries" id="LDAPRetries">LDAPRetries</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le nombre maximum de tentatives de connexions au
-serveur LDAP.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPRetries <var>nombre d'essais</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPRetries 3</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <p>Suite à des échecs de connexion au serveur LDAP, le serveur
- tentera de se connecter autant de fois qu'indiqué par la directive
- <code class="directive">LDAPRetries</code>. 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>
+ <p>La possibilité de créer des connexions SSL et TLS avec un serveur
+ LDAP est définie par les directives <code class="directive"><a href="#ldaptrustedglobalcert">
+ LDAPTrustedGlobalCert</a></code>, <code class="directive"><a href="#ldaptrustedclientcert">
+ LDAPTrustedClientCert</a></code> et <code class="directive"><a href="#ldaptrustedmode">
+ LDAPTrustedMode</a></code>. 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>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapretrydelay" id="ldapretrydelay">Directive</a> <a name="LDAPRetryDelay" id="LDAPRetryDelay">LDAPRetryDelay</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le temps d'attente avant un autre essai de connexion au
-serveur LDAP.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPRetryDelay <var>secondes</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPRetryDelay 0</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <p>Si la directive <code class="directive">LDAPRetryDelay</code> 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>
+ <pre class="prettyprint lang-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.
- <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>
+LDAPTrustedGlobalCert CA_DER /certs/certfile.der
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapsharedcachefile" id="ldapsharedcachefile">Directive</a> <a name="LDAPSharedCacheFile" id="LDAPSharedCacheFile">LDAPSharedCacheFile</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le fichier du cache en mémoire
-partagée</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPSharedCacheFile <var>chemin-fichier</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>
+<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></pre>
- <p>Si <var>chemin-fichier</var> n'est pas un chemin absolu, il sera
- relatif au répertoire défini via la directive <code class="directive"><a href="../mod/core.html#defaultruntimedir">DefaultRuntimeDir</a></code>.</p>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapsharedcachesize" id="ldapsharedcachesize">Directive</a> <a name="LDAPSharedCacheSize" id="LDAPSharedCacheSize">LDAPSharedCacheSize</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Taille en octets du cache en mémoire partagée</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPSharedCacheSize <var>octets</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPSharedCacheSize 500000</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>
+ <pre class="prettyprint lang-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.
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldaptimeout" id="ldaptimeout">Directive</a> <a name="LDAPTimeout" id="LDAPTimeout">LDAPTimeout</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Spécifie le délai d'attente pour les opérations de
-recherche et d'identification LDAP en secondes</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPTimeout <var>secondes</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPTimeout 60</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible à partir de la version 2.3.5 du serveur HTTP
-Apache</td></tr>
-</table>
- <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>
+LDAPTrustedGlobalCert CA_DER /certs/certfile.der
- <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>
+<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></pre>
- <div class="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>
- </div>
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="settingcerts" id="settingcerts">Certificats SSL/TLS</a></h2>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldaptrustedclientcert" id="ldaptrustedclientcert">Directive</a> <a name="LDAPTrustedClientCert" id="LDAPTrustedClientCert">LDAPTrustedClientCert</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>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.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPTrustedClientCert <var>type</var>
-<var>chemin/nom-fichier/alias</var> <var>[mot de passe]</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>
+ <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>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldaptrustedglobalcert" id="ldaptrustedglobalcert">Directive</a> <a name="LDAPTrustedGlobalCert" id="LDAPTrustedGlobalCert">LDAPTrustedGlobalCert</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>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</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPTrustedGlobalCert <var>type</var>
-<var>chemin/nom-fichier</var> <var>[mot de passe]</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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 <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code>
- 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>
+ <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>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldaptrustedmode" id="ldaptrustedmode">Directive</a> <a name="LDAPTrustedMode" id="LDAPTrustedMode">LDAPTrustedMode</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Spécifie le mode (SSL ou TLS) à utiliser lors de la
-connexion à un serveur LDAP.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPTrustedMode <var>type</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>
+ <h3><a name="settingcerts-netscape" id="settingcerts-netscape">SDK Netscape/Mozilla/iPlanet</a></h3>
+ <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 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>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>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>
+ <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>
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="directive-section"><h2><a name="ldapverifyservercert" id="ldapverifyservercert">Directive</a> <a name="LDAPVerifyServerCert" id="LDAPVerifyServerCert">LDAPVerifyServerCert</a></h2>
-<table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Force la vérification du certificat du
-serveur</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPVerifyServerCert <var>On|Off</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPVerifyServerCert On</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
-<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
-<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
-</table>
- <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>
+ <pre class="prettyprint lang-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
-</div>
-<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="section">
-<h2><a name="exampleconfig" id="exampleconfig">Exemple de configuration</a></h2>
- <p>Ce qui suit est un exemple de configuration qui utilise
- <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> pour améliorer les performances de
- l'authentification HTTP de base fournie par
- <code class="module"><a href="../mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code>.</p>
+ Require host yourdomain.example.com
- <pre class="prettyprint lang-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.
+ 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></pre>
-LDAPSharedCacheSize 500000
-LDAPCacheEntries 1024
-LDAPCacheTTL 600
-LDAPOpCacheEntries 1024
-LDAPOpCacheTTL 600
+
+
+ <h3><a name="settingcerts-novell" id="settingcerts-novell">SDK Novell</a></h3>
+
+ <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>
+
+ <pre class="prettyprint lang-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</pre>
+
+
+
+
+ <h3><a name="settingcerts-openldap" id="settingcerts-openldap">SDK OpenLDAP</a></h3>
+
+ <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>
+
+ <pre class="prettyprint lang-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 ldap://127.0.0.1/dc=example,dc=com?uid?one
+ AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
Require valid-user
</Location></pre>
-</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="section">
-<h2><a name="pool" id="pool">Conservation des connexions LDAP</a></h2>
- <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>
+ <h3><a name="settingcerts-solaris" id="settingcerts-solaris">SDK Solaris</a></h3>
- <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>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>
- <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 <code class="directive"><a href="#ldapreferrals">LDAPReferrals</a></code> et <code class="directive"><a href="#ldapreferralhoplimit">LDAPReferralHopLimit</a></code>. Cette
- fonctionnalité est activée par défaut.</p>
-</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="section">
-<h2><a name="cache" id="cache">Cache LDAP</a></h2>
+
- <p>Pour améliorer les performances, <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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>
+ <h3><a name="settingcerts-microsoft" id="settingcerts-microsoft">SDK Microsoft</a></h3>
- <p><code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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>
+ <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>
- <h3><a name="search-bind" id="search-bind">Le cache
- recherche/identification</a></h3>
- <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>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><code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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,
- <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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, <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> court-circuite la phase
- de recherche/identification.</p>
+ <p>Note: L'état du support des certificats clients n'est pas
+ encore connu pour ce SDK.</p>
- <p>Le cache de recherche/identification est contrôlé par les
- directives <code class="directive"><a href="#ldapcacheentries">LDAPCacheEntries</a></code> et <code class="directive"><a href="#ldapcachettl">LDAPCacheTTL</a></code>.</p>
- <h3><a name="opcaches" id="opcaches">Les caches d'opérations</a></h3>
- <p>Au cours des opérations de comparaison d'attributs et de noms
- distinctifs (DN), <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapcacheentries" id="ldapcacheentries">Directive</a> <a name="LDAPCacheEntries" id="LDAPCacheEntries">LDAPCacheEntries</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre maximum d'entrées dans le cache LDAP
+primaire</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPCacheEntries <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPCacheEntries 1024</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <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>
- <p>Le comportement de ces deux caches est contrôlé par les
- directives <code class="directive"><a href="#ldapopcacheentries">LDAPOpCacheEntries</a></code> et <code class="directive"><a href="#ldapopcachettl">LDAPOpCacheTTL</a></code>.</p>
-
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapcachettl" id="ldapcachettl">Directive</a> <a name="LDAPCacheTTL" id="LDAPCacheTTL">LDAPCacheTTL</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Durée pendant laquelle les entrées du cache restent
+valides.</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPCacheTTL <var>secondes</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPCacheTTL 600</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <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>
- <h3><a name="monitoring" id="monitoring">Superviser le cache</a></h3>
- <p><code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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
- <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> :</p>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapconnectionpoolttl" id="ldapconnectionpoolttl">Directive</a> <a name="LDAPConnectionPoolTTL" id="LDAPConnectionPoolTTL">LDAPConnectionPoolTTL</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Désactive les connexions d'arrière-plan qui sont restées
+inactives trop longtemps au sein du jeu de connexions.</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPConnectionPoolTTL <var>n</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPConnectionPoolTTL -1</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible à partir de la version 2.3.12 du serveur HTTP
+Apache</td></tr>
+</table>
+ <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>
- <pre class="prettyprint lang-config"><Location /server/cache-info>
- SetHandler ldap-status
-</Location></pre>
+ <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>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
- <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code>. Notez que si Apache ne supporte pas la
- mémoire partagée, chaque instance de <code class="program"><a href="../programs/httpd.html">httpd</a></code>
- 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 <code class="program"><a href="../programs/httpd.html">httpd</a></code> qui traitera la
- requête.</p>
-
-</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="section">
-<h2><a name="usingssltls" id="usingssltls">Utiliser SSL/TLS</a></h2>
+ <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>
- <p>La possibilité de créer des connexions SSL et TLS avec un serveur
- LDAP est définie par les directives <code class="directive"><a href="#ldaptrustedglobalcert">
- LDAPTrustedGlobalCert</a></code>, <code class="directive"><a href="#ldaptrustedclientcert">
- LDAPTrustedClientCert</a></code> et <code class="directive"><a href="#ldaptrustedmode">
- LDAPTrustedMode</a></code>. 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>
+ <div class="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></div>
- <pre class="prettyprint lang-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.
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapconnectiontimeout" id="ldapconnectiontimeout">Directive</a> <a name="LDAPConnectionTimeout" id="LDAPConnectionTimeout">LDAPConnectionTimeout</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Spécifie le délai d'attente en secondes de la socket de
+connexion</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPConnectionTimeout <var>secondes</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <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>
-LDAPTrustedGlobalCert CA_DER /certs/certfile.der
+ <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 <code class="directive"><a href="../mod/mod_authnz_ldap.html#authldapurl">AuthLDAPURL</a></code>).</p>
-<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></pre>
+ <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>
+ <div class="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.
+ </div>
- <pre class="prettyprint lang-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.
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldaplibrarydebug" id="ldaplibrarydebug">Directive</a> <a name="LDAPLibraryDebug" id="LDAPLibraryDebug">LDAPLibraryDebug</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active le débogage dans le SDK LDAP</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPLibraryDebug <var>7</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>disabled</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <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>
-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></pre>
-
-
-</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
-<div class="section">
-<h2><a name="settingcerts" id="settingcerts">Certificats SSL/TLS</a></h2>
-
- <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>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>
- <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>
+ <div class="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>
+ </div>
- <h3><a name="settingcerts-netscape" id="settingcerts-netscape">SDK Netscape/Mozilla/iPlanet</a></h3>
- <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>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapopcacheentries" id="ldapopcacheentries">Directive</a> <a name="LDAPOpCacheEntries" id="LDAPOpCacheEntries">LDAPOpCacheEntries</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre d'entrées utilisées pour mettre en cache les
+opérations de comparaison LDAP</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPOpCacheEntries <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPOpCacheEntries 1024</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <p>Cette directive permet de spécifier le nombre d'entrées que
+ <code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> 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>
- <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>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapopcachettl" id="ldapopcachettl">Directive</a> <a name="LDAPOpCacheTTL" id="LDAPOpCacheTTL">LDAPOpCacheTTL</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Durée pendant laquelle les entrées du cache d'opérations
+restent valides</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPOpCacheTTL <var>secondes</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPOpCacheTTL 600</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <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>
- <pre class="prettyprint lang-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
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapreferralhoplimit" id="ldapreferralhoplimit">Directive</a> <a name="LDAPReferralHopLimit" id="LDAPReferralHopLimit">LDAPReferralHopLimit</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nombre maximum de redirections vers des serveurs
+alternatifs (referrals) avant l'abandon de la requête
+LDAP.</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPReferralHopLimit <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Dépend du SDK, en général entre 5 et 10</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
+<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <p>Si elle est activée par la directive <code class="directive">LDAPReferrals</code>,
+ 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>
- Require host yourdomain.example.com
+<div class="warning">
+<p>L'ajustement de ce paramètre n'est pas commun à tous les SDKs LDAP.</p>
+</div>
- 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></pre>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapreferrals" id="ldapreferrals">Directive</a> <a name="LDAPReferrals" id="LDAPReferrals">LDAPReferrals</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active la redirection vers des serveurs alternatifs au
+cours des requêtes vers le serveur LDAP.</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPReferrals <var>On|Off|default</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPReferrals On</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
+<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Le paramètre <var>default</var> est disponible depuis la
+version 2.4.7 du serveur HTTP Apache.</td></tr>
+</table>
+ <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 <code class="directive">LDAPReferrals</code> 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
+ <code class="directive">LDAPReferralHopLimit</code> 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
+ <code class="directive">LDAPReferralHopLimit</code> ne permet pas de surcharger la
+ "hop limit" du SDK, et aucun "LDAP rebind callback" n'est enregistré.</p></dd>
+ </dl>
+ <p>La directive <code class="directive">LDAPReferralHopLimit</code> 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>
- <h3><a name="settingcerts-novell" id="settingcerts-novell">SDK Novell</a></h3>
-
- <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>
-
- <pre class="prettyprint lang-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</pre>
-
-
-
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapretries" id="ldapretries">Directive</a> <a name="LDAPRetries" id="LDAPRetries">LDAPRetries</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le nombre maximum de tentatives de connexions au
+serveur LDAP.</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPRetries <var>nombre d'essais</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPRetries 3</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <p>Suite à des échecs de connexion au serveur LDAP, le serveur
+ tentera de se connecter autant de fois qu'indiqué par la directive
+ <code class="directive">LDAPRetries</code>. 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>
- <h3><a name="settingcerts-openldap" id="settingcerts-openldap">SDK OpenLDAP</a></h3>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapretrydelay" id="ldapretrydelay">Directive</a> <a name="LDAPRetryDelay" id="LDAPRetryDelay">LDAPRetryDelay</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le temps d'attente avant un autre essai de connexion au
+serveur LDAP.</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPRetryDelay <var>secondes</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPRetryDelay 0</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <p>Si la directive <code class="directive">LDAPRetryDelay</code> 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>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>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>
- <p>Les certificats clients sont spécifiés pour chaque connexion
- à l'aide de la directive LDAPTrustedClientCert.</p>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapsharedcachefile" id="ldapsharedcachefile">Directive</a> <a name="LDAPSharedCacheFile" id="LDAPSharedCacheFile">LDAPSharedCacheFile</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le fichier du cache en mémoire
+partagée</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPSharedCacheFile <var>chemin-fichier</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ldap</td></tr>
+</table>
+ <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>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>
+ <p>Si <var>chemin-fichier</var> n'est pas un chemin absolu, il sera
+ relatif au répertoire défini via la directive <code class="directive"><a href="../mod/core.html#defaultruntimedir">DefaultRuntimeDir</a></code>.</p>
- <pre class="prettyprint lang-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></pre>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ldapsharedcachesize" id="ldapsharedcachesize">Directive</a> <a name="LDAPSharedCacheSize" id="LDAPSharedCacheSize">LDAPSharedCacheSize</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Taille en octets du cache en mémoire partagée</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LDAPSharedCacheSize <var>octets</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LDAPSharedCacheSize 500000</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
[... 186 lines stripped ...]