]> granicus.if.org Git - apache/blob - docs/manual/mod/mod_auth_form.html.fr
Rebuild.
[apache] / docs / manual / mod / mod_auth_form.html.fr
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
4 <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
5 <!--
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7               This file is generated from xml source: DO NOT EDIT
8         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
9       -->
10 <title>mod_auth_form - Serveur Apache HTTP Version 2.5</title>
11 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
14 <script src="../style/scripts/prettify.min.js" type="text/javascript">
15 </script>
16
17 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
18 <body>
19 <div id="page-header">
20 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
21 <p class="apache">Serveur Apache HTTP Version 2.5</p>
22 <img alt="" src="../images/feather.png" /></div>
23 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
24 <div id="path">
25 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">Modules</a></div>
26 <div id="page-content">
27 <div id="preamble"><h1>Module Apache mod_auth_form</h1>
28 <div class="toplang">
29 <p><span>Langues Disponibles: </span><a href="../en/mod/mod_auth_form.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
30 <a href="../fr/mod/mod_auth_form.html" title="Français">&nbsp;fr&nbsp;</a></p>
31 </div>
32 <div class="outofdate">Cette traduction peut être périmée. Vérifiez la version
33             anglaise pour les changements récents.</div>
34 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Authentification à l'aide d'un formulaire</td></tr>
35 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr>
36 <tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>auth_form_module</td></tr>
37 <tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_auth_form.c</td></tr>
38 <tr><th><a href="module-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible à partir d'Apache 2.3</td></tr></table>
39 <h3>Sommaire</h3>
40
41     <div class="warning"><h3>Avertissement</h3>
42       <p>L'authentification à base de formulaire dépend des modules
43       <code class="module"><a href="../mod/mod_session.html">mod_session</a></code> qui utilisent les cookies HTTP, et en
44       tant que tels s'exposent à des attaques de type Cross Site
45       Scripting, ou risquent de divulguer des informations à caractère
46       privé aux clients. Assurez-vous que ces risques ont bien été pris
47       en compte avant d'activer les sessions sur votre serveur.</p>
48     </div>
49
50     <p>Ce module permet de restreindre l'accès en recherchant les
51     utilisateurs dans les fournisseurs spécifiés à l'aide d'un
52     formulaire de connexion HTML. Les formulaires HTML requièrent
53     davantage de configuration que les méthodes d'authentification
54     alternatives, mais ils peuvent s'avérer beaucoup plus conviviaux
55     pour les utilisateurs.
56     </p>
57
58     <p>L'authentification HTTP de base est fournie par le module
59     <code class="module"><a href="../mod/mod_auth_basic.html">mod_auth_basic</a></code>, et l'authentification HTTP à base
60     de condensé par le module <code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code>. Le
61     module <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code> doit être utilisé avec au
62     moins un module d'authentification du style
63     <code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code> et un module d'autorisation comme
64     <code class="module"><a href="../mod/mod_authz_user.html">mod_authz_user</a></code>.</p>
65
66     <p>Lorsque l'utilisateur a été authentifié avec succès, ses
67     informations de connexion sont stockés dans une session fournie par
68     le module <code class="module"><a href="../mod/mod_session.html">mod_session</a></code>.
69     </p>
70
71 </div>
72 <div id="quickview"><h3>Sujets</h3>
73 <ul id="topics">
74 <li><img alt="" src="../images/down.gif" /> <a href="#basicconfig">Configuration de base</a></li>
75 <li><img alt="" src="../images/down.gif" /> <a href="#standalone">Page de connexion dédiée</a></li>
76 <li><img alt="" src="../images/down.gif" /> <a href="#inline">Connexion à la volée</a></li>
77 <li><img alt="" src="../images/down.gif" /> <a href="#inlinepreservebody">Connexion à la volée avec
78     conservation du contenu</a></li>
79 <li><img alt="" src="../images/down.gif" /> <a href="#loggingout">Déconnexion</a></li>
80 <li><img alt="" src="../images/down.gif" /> <a href="#urlencoding">Noms d'utilisateurs et mots de
81     passe</a></li>
82 </ul><h3 class="directives">Directives</h3>
83 <ul id="toc">
84 <li><img alt="" src="../images/down.gif" /> <a href="#authformauthoritative">AuthFormAuthoritative</a></li>
85 <li><img alt="" src="../images/down.gif" /> <a href="#authformbody">AuthFormBody</a></li>
86 <li><img alt="" src="../images/down.gif" /> <a href="#authformdisablenostore">AuthFormDisableNoStore</a></li>
87 <li><img alt="" src="../images/down.gif" /> <a href="#authformfakebasicauth">AuthFormFakeBasicAuth</a></li>
88 <li><img alt="" src="../images/down.gif" /> <a href="#authformlocation">AuthFormLocation</a></li>
89 <li><img alt="" src="../images/down.gif" /> <a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></li>
90 <li><img alt="" src="../images/down.gif" /> <a href="#authformloginsuccesslocation">AuthFormLoginSuccessLocation</a></li>
91 <li><img alt="" src="../images/down.gif" /> <a href="#authformlogoutlocation">AuthFormLogoutLocation</a></li>
92 <li><img alt="" src="../images/down.gif" /> <a href="#authformmethod">AuthFormMethod</a></li>
93 <li><img alt="" src="../images/down.gif" /> <a href="#authformmimetype">AuthFormMimetype</a></li>
94 <li><img alt="" src="../images/down.gif" /> <a href="#authformpassword">AuthFormPassword</a></li>
95 <li><img alt="" src="../images/down.gif" /> <a href="#authformprovider">AuthFormProvider</a></li>
96 <li><img alt="" src="../images/down.gif" /> <a href="#authformsitepassphrase">AuthFormSitePassphrase</a></li>
97 <li><img alt="" src="../images/down.gif" /> <a href="#authformsize">AuthFormSize</a></li>
98 <li><img alt="" src="../images/down.gif" /> <a href="#authformusername">AuthFormUsername</a></li>
99 </ul>
100 <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mod_auth_form">Problèmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mod_auth_form">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
101 <ul class="seealso">
102 <li><code class="module"><a href="../mod/mod_session.html">mod_session</a></code></li>
103 <li><code class="directive"><a href="../mod/mod_authn_core.html#authname">AuthName</a></code></li>
104 <li><code class="directive"><a href="../mod/mod_authn_core.html#authtype">AuthType</a></code></li>
105 <li><code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code></li>
106 <li><a href="../howto/auth.html">Mise en oeuvre de
107 l'authentification</a></li>
108 <li><a href="#comments_section">Commentaires</a></li></ul></div>
109 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
110 <div class="section">
111 <h2><a name="basicconfig" id="basicconfig">Configuration de base</a></h2>
112
113       <p>Pour protéger une URL particulière avec le module
114       <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>, vous devez déterminer l'endroit où
115       vous allez stocker votre <var>session</var>, ainsi que la méthode
116       d'authentification. Dans cet exemple simple, les informations de
117       connexion sont stockées dans une session à l'aide du module
118       <code class="module"><a href="../mod/mod_session_cookie.html">mod_session_cookie</a></code>, et l'authentification utilise
119       un fichier en s'appuyant sur le module
120       <code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code>. Si l'authentification échoue,
121       l'utilisateur dera redirigé vers la page du formulaire de
122       connexion.</p>
123
124       <div class="example"><h3>Exemple simple</h3><pre class="prettyprint lang-config">&lt;Location "/admin"&gt;
125     AuthFormProvider file
126     AuthUserFile "conf/passwd"
127     AuthType form
128     AuthName "/admin"
129     AuthFormLoginRequiredLocation "http://example.com/login.html"
130     Session On
131     SessionCookieName session path=/
132     SessionCryptoPassphrase secret
133
134     Require valid-user
135 &lt;/Location&gt;</pre>
136 </div>
137
138       <p>L'authentification <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code> est activée
139       en affectant la valeur <var>form</var> à la directive <code class="directive"><a href="../mod/mod_authn_core.html#authtype">AuthType</a></code>. Les directives
140       <code class="directive"><a href="#authformprovider">AuthFormProvider</a></code> et
141       <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>
142       spécifient que les noms d'utilisateurs et mots de passe seront
143       vérifiés en utilisant le fichier choisi.</p>
144
145       <p>Les directives <code class="directive"><a href="../mod/mod_session.html#session">Session</a></code>, <code class="directive"><a href="../mod/mod_session_cookie.html#sessioncookiename">SessionCookieName</a></code> et
146       <code class="directive"><a href="../mod/mod_session_crypto.html#sessioncryptopassphrase">SessionCryptoPassphrase</a></code>
147       créent une session chiffrée stockée dans un cookie HTTP au niveau
148       du navigateur. Pour plus d'informations à propos des différentes
149       options de configuration des sessions, reportez-vous à la
150       documentation du module <code class="module"><a href="../mod/mod_session.html">mod_session</a></code>.</p>
151
152       <p>Dans l'exemple simple ci-dessus, une URL a été protégée par
153       <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>, mais on doit maintenant fournir
154       à l'utilisateur un moyen d'entrer un nom et un mot de passe. À cet
155       effet, on peut soit écrire une page de connexion indépendante
156       dédiée, soit inclure le formulaire de connexion dans la page
157       courante.</p>
158     </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
159 <div class="section">
160 <h2><a name="standalone" id="standalone">Page de connexion dédiée</a></h2>
161
162       <p>Le formulaire de connexion peut être contenu dans une page
163       indépendante, ou être inclus dans la page courante. </p>
164
165       <p>Lorsque la connexion s'effectue à partir d'une page
166       indépendante et si la tentative d'authentification échoue,
167       l'utilisateur doit être redirigé vers un formulaire de connexion,
168       créé à cet effet sur le site web, en utilisant la directive
169       <code class="directive"><a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></code>.
170       En général, la page de connexion contiendra un formulaire HTML
171       demandant à l'utilisateur de fournir un nom et un mot de passe.</p>
172
173       <div class="example"><h3>Exemple de formulaire de connexion</h3><pre class="prettyprint lang-html">&lt;form method="POST" action="/dologin.html"&gt;
174   Username: &lt;input type="text" name="httpd_username" value="" /&gt;
175   Password: &lt;input type="password" name="httpd_password" value="" /&gt;
176   &lt;input type="submit" name="login" value="Login" /&gt;
177 &lt;/form&gt;</pre>
178 </div>
179
180       <p>La partie où s'effectue la connexion proprement dite est
181       traitée par le gestionnaire <var>form-login-handler</var>.
182       L'action de ce formulaire doit pointer vers ce gestionnaire, ce
183       que l'on configure dans Apache httpd comme suit :</p>
184
185       <div class="example"><h3>Exemple de configuration du gestionnaire de
186       formulaire de connexion</h3><pre class="prettyprint lang-config">&lt;Location "/dologin.html"&gt;
187     SetHandler form-login-handler
188     AuthFormLoginRequiredLocation "http://example.com/login.html"
189     AuthFormLoginSuccessLocation "http://example.com/success.html"
190     AuthFormProvider file
191     AuthUserFile "conf/passwd"
192     AuthType form
193     AuthName realm
194     Session On
195     SessionCookieName session path=/
196     SessionCryptoPassphrase secret
197 &lt;/Location&gt;</pre>
198 </div>
199
200       <p>L'URL spécifiée par la directive
201       <code class="directive"><a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></code>
202       référencera en général une page expliquant à l'utilisateur que sa
203       tentative de connexion a échoué, et qu'il doit la renouveler. La
204       directive <code class="directive"><a href="#authformloginsuccesslocation">AuthFormLoginSuccessLocation</a></code>
205       spécifie l'URL vers laquelle l'utilisateur doit être redirigé s'il
206       s'est authentifié avec succès.</p>
207
208       <p>Alternativement, l'URL vers laquelle doit être redirigé
209       l'utilisateur s'il s'est authentifié avec succès peut être
210       intégrée dans le formulaire de connexion, comme dans l'exemple
211       ci-dessous. Il en découle que le même gestionnaire
212       <var>form-login-handler</var> pourra être utilisé pour différentes
213       zones du site web.</p>
214
215       <div class="example"><h3>Exemple de formulaire d'authentification multizone</h3><pre class="prettyprint lang-html">&lt;form method="POST" action="/dologin.html"&gt;
216   Username: &lt;input type="text" name="httpd_username" value="" /&gt;
217   Password: &lt;input type="password" name="httpd_password" value="" /&gt;
218   &lt;input type="submit" name="login" value="Login" /&gt;
219   &lt;input type="hidden" name="httpd_location" value="http://example.com/success.html" /&gt;
220 &lt;/form&gt;</pre>
221 </div>
222
223     </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
224 <div class="section">
225 <h2><a name="inline" id="inline">Connexion à la volée</a></h2>
226
227       <div class="warning"><h3>Avertissement</h3>
228         <p>Il existe un risque, dans certaines circonstances, que le
229         formulaire de connexion configuré pour une connexion à la volée
230         soit soumis plusieurs fois, révélant de ce fait les paramètres
231         de connexion à l'application sous-jacente. L'administrateur doit
232         s'assurer que cette dernière est correctement sécurisée afin
233         d'éviter les éventuels abus. En cas de doute, utilisez une page
234         de connexion indépendante dédiée.</p>
235       </div>
236
237       <p>Comme alternative à la page de connexion dédiée pour un site
238       web, il est possible de configurer <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>
239       pour authentifier les utilisateurs à la volée, sans les rediriger
240       vers une autre page, ce qui permet de conserver l'état de la page
241       courante au cours de la tentative de connexion. Ceci peut s'avérer
242       utile dans le cas d'une session limitée dans le temps, si le délai
243       de la session a expiré pendant la requête de l'utilisateur. Ce
244       dernier peut alors se réauthentifier à la même place, et
245       poursuivre son activité à partir du point où il en était resté.</p>
246
247       <p>Si un utilisateur non authentifié tente d'accéder à une page
248       protégée par <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>, et si ce dernier
249       n'est pas configuré avec une directive <code class="directive"><a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></code>,
250       un code de statut <var>HTTP_UNAUTHORIZED</var> est renvoyé vers le
251       navigateur, indiquant à l'utilisateur qu'il n'est pas autorisé à
252       accéder à cette page.</p>
253
254       <p>Pour configurer l'authentification à la volée, l'administrateur
255       remplace le message d'erreur renvoyé par le code de statut
256       <var>HTTP_UNAUTHORIZED</var> par un message d'erreur personnalisé
257       contenant le formulaire de connexion comme suit :</p>
258
259       <div class="example"><h3>Exemple simple d'authentification à la volée</h3><pre class="prettyprint lang-config">AuthFormProvider file
260 ErrorDocument 401 "/login.shtml"
261 AuthUserFile "conf/passwd"
262 AuthType form
263 AuthName realm
264 AuthFormLoginRequiredLocation "http://example.com/login.html"
265 Session On
266 SessionCookieName session path=/
267 SessionCryptoPassphrase secret</pre>
268 </div>
269
270       <p>La page du message d'erreur doit contenir un formulaire de
271       connexion dont la propriété action est vide, comme dans l'exemple
272       ci-dessous. Ceci a pour effet de soumettre le formulaire à l'URL
273       protégée originale, cette dernière n'ayant pas besoin d'être
274       connue de la page en cours.</p>
275
276       <div class="example"><h3>Exemple de formulaire de connexion à la volée</h3><pre class="prettyprint lang-html">&lt;form method="POST" <strong>action=""</strong>&gt;
277   Username: &lt;input type="text" name="httpd_username" value="" /&gt;
278   Password: &lt;input type="password" name="httpd_password" value="" /&gt;
279   &lt;input type="submit" name="login" value="Login" /&gt;
280 &lt;/form&gt;</pre>
281 </div>
282
283       <p>Lorsque l'utilisateur final a entré ses informations de
284       connexion, le formulaire effectue une requête HTTP POST pour l'URL
285       originale protégée par mot de passe.
286       <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code> va alors intercepter cette requête
287       POST, et dans le cas où des champs HTML Utilisateur et Mot de
288       passe corrects sont présents, l'utilisateur sera connecté, et
289       l'URL originale protégée par mot de passe lui sera retournée en
290       tant que requête GET.</p>
291
292     </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
293 <div class="section">
294 <h2><a name="inlinepreservebody" id="inlinepreservebody">Connexion à la volée avec
295     conservation du contenu</a></h2>
296
297       <p>Il existe une limite à la technique de connexion à la volée
298       décrite ci-dessus ; si un formulaire HTML POST entraîne une
299       demande d'authentification ou de réauthentification, le contenu du
300       formulaire original envoyé par le navigateur sera perdu. Cela peut
301       s'avérer plus ou moins gênant pour l'utilisateur final selon la
302       fonction du site web.</p>
303
304       <p>Comme solution à ce problème, <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>
305       permet d'intégrer la méthode et le contenu de la requête originale
306       dans le formulaire de connexion. Si l'authentification réussit,
307       Apache httpd pourra refaire une tentative avec la méthode et le contenu
308       originaux, tout en conservant l'état de la requête originale.</p>
309
310       <p>Pour mettre en oeuvre la conservation du contenu, vous devez
311       ajouter trois champs supplémentaires au formulaire de connexion
312       comme dans l'exemple suivant :</p>
313
314       <div class="example"><h3>Exemple de formulaire avec conservation du
315       contenu</h3><pre class="prettyprint lang-html">&lt;form method="POST" action=""&gt;
316   Username: &lt;input type="text" name="httpd_username" value="" /&gt;
317   Password: &lt;input type="password" name="httpd_password" value="" /&gt;
318   &lt;input type="submit" name="login" value="Login" /&gt;
319   <br />  <strong>&lt;input type="hidden" name="httpd_method" value="POST" /&gt;
320   &lt;input type="hidden" name="httpd_mimetype" value="application/x-www-form-urlencoded" /&gt;
321   &lt;input type="hidden" name="httpd_body" value="name1=value1&amp;name2=value2" /&gt;</strong><br />
322 &lt;/form&gt;</pre>
323 </div>
324
325       <p>La manière dont la méthode, le type MIME et le contenu de la
326       requête originale seront intégrés dans le formulaire de connexion
327       vont dépendre de la plate-forme et de la technologie utilisées au
328       sein du site web.
329       </p>
330
331       <p>Une option consiste à utiliser le module
332       <code class="module"><a href="../mod/mod_include.html">mod_include</a></code> en association avec la directive
333       <code class="directive"><a href="../mod/mod_request.html#keptbodysize">KeptBodySize</a></code>, ainsi
334       qu'un script CGI adapté pour intégrer les variables dans le
335       formulaire.</p>
336
337       <p>Une autre option consiste à présenter le formulaire de
338       connexion en utilisant un script CGI ou une autre technologie
339       dynamique.</p>
340
341       <div class="example"><h3>Exemple avec script CGI</h3><pre class="prettyprint lang-config">        AuthFormProvider file
342         ErrorDocument 401 "/cgi-bin/login.cgi"
343         ...</pre>
344 </div>
345
346     </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
347 <div class="section">
348 <h2><a name="loggingout" id="loggingout">Déconnexion</a></h2>
349
350       <p>Pour permettre à un utilisateur de se déconnecter d'une session
351       particulière, vous devez configurer une page pour qu'elle soit
352       traitée par le gestionnaire <var>form-logout-handler</var>. Tout
353       accès à cette URL va entraîner la suppression de l'Utilisateur et
354       du Mot de passe de la session courante, ce qui aura pour effet de
355       déconnecter l'utilisateur.</p>
356
357       <p>Vous pouvez spécifier une URL vers laquelle le navigateur sera
358       redirigé en cas de déconnection réussie, en définissant la
359       directive <code class="directive"><a href="#authformlogoutlocation">AuthFormLogoutLocation</a></code>. Cette
360       URL devra expliquer à l'utilisateur qu'il a été déconnecté, et lui
361       donner la possibilité de se connecter à nouveau.</p>
362
363       <div class="example"><h3>Exemple simple de configuration de la
364       déconnexion</h3><pre class="prettyprint lang-config">SetHandler form-logout-handler
365 AuthName realm
366 AuthFormLogoutLocation "http://example.com/loggedout.html"
367 Session On
368 SessionCookieName session path=/
369 SessionCryptoPassphrase secret</pre>
370 </div>
371
372       <p>Notez que la déconnexion d'un utilisateur ne supprime pas la
373       session ; elle supprime seulement l'utilisateur et le mot de passe
374       de la session. Si la session qui en résulte est vide, elle sera
375       probablement supprimée, mais ce n'est pas garanti. Si vous voulez
376       être sûr que la session sera supprimée, affectez une valeur faible
377       à la directive <code class="directive"><a href="../mod/mod_session.html#sessionmaxage">SessionMaxAge</a></code>, par exemple 1
378       (affecter à cette directive la valeur zéro signifie une session
379       sans limite d'âge).
380       </p>
381
382       <div class="example"><h3>Exemple simple avec durée de validité de session
383       limitée</h3><pre class="prettyprint lang-config">SetHandler form-logout-handler
384 AuthFormLogoutLocation "http://example.com/loggedout.html"
385 Session On
386 SessionMaxAge 1
387 SessionCookieName session path=/
388 SessionCryptoPassphrase secret</pre>
389 </div>
390
391     </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
392 <div class="section">
393 <h2><a name="urlencoding" id="urlencoding">Noms d'utilisateurs et mots de
394     passe</a></h2>
395     <p>Notez que la soumission d'un formulaire implique l'encodage URL
396     (URLEncoding) des données du formulaire, ici le nom d'utilisateur et
397     le mot de passe. Vous devez donc choisir des noms d'utilisateurs et
398     mots de passe qui ne contiennent pas de caractères susceptibles
399     d'être encodés URL lors de la soumission du formulaire, sous peine
400     d'obtenir des résultats inattendus.</p>
401     </div>
402 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
403 <div class="directive-section"><h2><a name="authformauthoritative" id="authformauthoritative">Directive</a> <a name="AuthFormAuthoritative" id="AuthFormAuthoritative">AuthFormAuthoritative</a></h2>
404 <table class="directive">
405 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Détermine si l'autorisation et l'authentification sont confiés à
406 des modules de plus bas niveau</td></tr>
407 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormAuthoritative On|Off</code></td></tr>
408 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AuthFormAuthoritative On</code></td></tr>
409 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
410 <tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
411 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
412 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
413 </table>
414     <p>Normalement, chacun des modules d'autorisation spécifiés par la
415     directive <code class="directive"><a href="#authformprovider">AuthFormProvider</a></code> va tenter de
416     vérifier l'identité de l'utilisateur, et si ce dernier n'est trouvé
417     dans aucun fournisseur, l'accès sera refusé. En définissant
418     explicitement la directive
419     <code class="directive">AuthFormAuthoritative</code> à <code>Off</code> on
420     confie les processus d'authentification et d'autorisation à des
421     modules ne s'appuyant pas sur des fournisseurs, si <strong>aucun
422     identifiant utilisateur</strong> ou aucune <strong>règle</strong> ne
423     correspond à l'identifiant utilisateur fourni. Ceci ne peut s'avérer
424     nécessaire que si l'on combine <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code> avec
425     des modules tiers qui ne se configurent pas avec la directive
426     <code class="directive"><a href="#authformprovider">AuthFormProvider</a></code>.
427     Lorsqu'on utilise de tels modules, la chronologie du processus est
428     déterminée dans leur code source, et n'est pas configurable.</p>
429
430 </div>
431 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
432 <div class="directive-section"><h2><a name="authformbody" id="authformbody">Directive</a> <a name="AuthFormBody" id="AuthFormBody">AuthFormBody</a></h2>
433 <table class="directive">
434 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire contenant le corps de la
435 requête à effectuer en cas de connexion réussie</td></tr>
436 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormBody <var>nom du champ</var></code></td></tr>
437 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_body</code></td></tr>
438 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
439 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
440 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
441 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
442 </table>
443     <p>La directive <code class="directive"><a href="#authformbody">AuthFormBody</a></code>
444     spécifie le nom du champ HTML qui, s'il existe, contiendra le corps
445     de la requête à effectuer en cas de connexion réussie.</p>
446
447     <p>En ajoutant au formulaire les champs décrits dans <code class="directive"><a href="#authformmethod">AuthFormMethod</a></code>, <code class="directive"><a href="#authformmimetype">AuthFormMimetype</a></code> et <code class="directive"><a href="#authformbody">AuthFormBody</a></code>, un site web sera en
448     mesure de relancer une requête qui a été éventuellement interrompue
449     par l'écran de connexion, ou par l'expiration d'un délai de
450     session.</p>
451
452 </div>
453 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
454 <div class="directive-section"><h2><a name="authformdisablenostore" id="authformdisablenostore">Directive</a> <a name="AuthFormDisableNoStore" id="AuthFormDisableNoStore">AuthFormDisableNoStore</a></h2>
455 <table class="directive">
456 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Désactive l'en-tête CacheControl no-store sur la page de
457 connexion</td></tr>
458 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormDisableNoStore <var>On|Off</var></code></td></tr>
459 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AuthFormDisableNoStore Off</code></td></tr>
460 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
461 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
462 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
463 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
464 </table>
465     <p>Le drapeau <code class="directive"><a href="#authformdisablenostore">AuthFormDisableNoStore</a></code> supprime
466     l'envoi d'un en-tête <code>Cache-Control no-store</code> lorsqu'une
467     page avec code d'erreur 401 est renvoyée, si l'utilisateur n'est pas
468     encore connecté. Avec cette en-tête, il est plus difficile pour une
469     application <code>ecmascript</code> de resoumettre un formulaire de connexion, et
470     ainsi révéler le nom d'utilisateur et le mot de passe à
471     l'application sous-jacente. Vous devez être conscient des risques
472     encourus si vous le désactivez.</p>
473
474
475 </div>
476 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
477 <div class="directive-section"><h2><a name="authformfakebasicauth" id="authformfakebasicauth">Directive</a> <a name="AuthFormFakeBasicAuth" id="AuthFormFakeBasicAuth">AuthFormFakeBasicAuth</a></h2>
478 <table class="directive">
479 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Simule une en-tête d'authentification de base</td></tr>
480 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormFakeBasicAuth <var>On|Off</var></code></td></tr>
481 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AuthFormFakeBasicAuth Off</code></td></tr>
482 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
483 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
484 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
485 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
486 </table>
487     <p>Le drapeau <code class="directive"><a href="#authformfakebasicauth">AuthFormFakeBasicAuth</a></code>
488     détermine si une en-tête d'<code>Authentification de base</code>
489     sera ajoutée aux en-têtes de la requête. On peut utiliser cette
490     méthode pour présenter le nom d'utilisateur et le mot de passe à
491     l'application sous-jacente, sans que cette dernière ait besoin de
492     connaître la manière dont le processus de connexion a été mené à
493     bien.</p>
494
495
496 </div>
497 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
498 <div class="directive-section"><h2><a name="authformlocation" id="authformlocation">Directive</a> <a name="AuthFormLocation" id="AuthFormLocation">AuthFormLocation</a></h2>
499 <table class="directive">
500 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire qui contiendra l'URL vers
501 laquelle l'utilisateur sera redirigé en cas de connexion
502 réussie</td></tr>
503 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormLocation <var>nom du champ</var></code></td></tr>
504 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_location</code></td></tr>
505 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
506 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
507 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
508 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
509 </table>
510     <p>La directive <code class="directive"><a href="#authformlocation">AuthFormLocation</a></code>
511     spécifie le nom du champ HTML qui, s'il existe, contiendra l'URL
512     vers laquelle rediriger le navigateur en cas de connexion
513     réussie.</p>
514
515 </div>
516 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
517 <div class="directive-section"><h2><a name="authformloginrequiredlocation" id="authformloginrequiredlocation">Directive</a> <a name="AuthFormLoginRequiredLocation" id="AuthFormLoginRequiredLocation">AuthFormLoginRequiredLocation</a></h2>
518 <table class="directive">
519 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>L'URL de la page vers laquelle on doit être redirigé si une
520 authentification est requise</td></tr>
521 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormLoginRequiredLocation <var>url</var></code></td></tr>
522 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>none</code></td></tr>
523 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
524 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
525 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
526 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP
527 Apache. L'interprétation des expressions rationnelles est supportée
528 depuis la version 2.4.4.</td></tr>
529 </table>
530     <p>La directive <code class="directive"><a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></code>
531     spécifie l'URL vers laquelle l'utilisateur devra être
532     redirigé s'il n'est pas autorisé à accéder à une page. Sa valeur est
533     interprétée via l'interpréteur <a href="../expr.html">ap_expr</a>
534     avant d'être envoyée au client. Par défaut,
535     si un utilisateur n'est pas autorisé à accéder à une page, le code
536     de réponse HTTP <code>HTTP_UNAUTHORIZED</code> est renvoyé avec la
537     page spécifiée par la directive <code class="directive"><a href="../mod/core.html#errordocument">ErrorDocument</a></code>. La directive <code class="directive"><a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></code>
538     permet de remplacer cette valeur par défaut.</p>
539
540     <p>Vous pouvez utiliser cette directive si vous voulez présenter une
541     page de connexion personnalisée à vos utilisateurs.</p>
542
543
544 </div>
545 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
546 <div class="directive-section"><h2><a name="authformloginsuccesslocation" id="authformloginsuccesslocation">Directive</a> <a name="AuthFormLoginSuccessLocation" id="AuthFormLoginSuccessLocation">AuthFormLoginSuccessLocation</a></h2>
547 <table class="directive">
548 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>L'URL de la page vers laquelle on doit être redirigé en cas
549 de connexion réussie</td></tr>
550 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormLoginSuccessLocation <var>url</var></code></td></tr>
551 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>none</code></td></tr>
552 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
553 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
554 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
555 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP
556 Apache. L'interprétation des expressions rationnelles est supportée
557 depuis la version 2.4.4.</td></tr>
558 </table>
559     <p>La directive <code class="directive"><a href="#authformloginsuccesslocation">AuthFormLoginSuccessLocation</a></code>
560     spécifie l'URL vers laquelle l'utilisateur doit être
561     redirigé en cas de connexion réussie. Sa valeur est
562     interprétée via l'interpréteur <a href="../expr.html">ap_expr</a>
563     avant d'être envoyée au client. L'effet de cette directive
564     peut être annulé si l'on a défini un champ de formulaire contenant
565     une autre URL à l'aide de la directive <code class="directive"><a href="#authformlocation">AuthFormLocation</a></code>.</p>
566
567     <p>Vous pouvez utiliser cette directive si vous possédez une URL de
568     connexion personnalisée, et si vous n'avez pas intégré la page de
569     destination dans le formulaire de connexion.</p>
570
571
572 </div>
573 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
574 <div class="directive-section"><h2><a name="authformlogoutlocation" id="authformlogoutlocation">Directive</a> <a name="AuthFormLogoutLocation" id="AuthFormLogoutLocation">AuthFormLogoutLocation</a></h2>
575 <table class="directive">
576 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>L'URL vers laquelle un utilisateur devra être redirigé
577 après s'être déconnecté</td></tr>
578 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormLogoutLocation <var>uri</var></code></td></tr>
579 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>none</code></td></tr>
580 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
581 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
582 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
583 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP
584 Apache. L'interprétation des expressions rationnelles est supportée
585 depuis la version 2.4.4.</td></tr>
586 </table>
587     <p>La directive <code class="directive"><a href="#authformlogoutlocation">AuthFormLogoutLocation</a></code>
588     spécifie l'URL de la page du serveur vers laquelle l'utilisateur
589     devra être redirigé s'il se déconnecte. Sa valeur est
590     interprétée via l'interpréteur <a href="../expr.html">ap_expr</a>
591     avant d'être envoyée au client.</p>
592
593     <p>Lorsqu'un accès est tenté sur un URI traité par le gestionnaire
594     <code>form-logout-handler</code>, la page spécifiée par cette
595     directive sera présentée à l'utilisateur final. Par exemple :</p>
596
597     <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">&lt;Location "/logout"&gt;
598     SetHandler form-logout-handler
599     AuthFormLogoutLocation "http://example.com/loggedout.html"
600     Session on
601     #...
602 &lt;/Location&gt;</pre>
603 </div>
604
605     <p>Si un utilisateur tente d'accéder à l'URI <var>/logout/</var>, il
606     sera déconnecté, et la page <var>/loggedout.html</var> lui sera
607     présentée. Assurez-vous que la page <var>loggedout.html</var> n'est
608     pas protégée par mot de passe, car dans le cas contraire, elle ne
609     serait pas affichée.</p>
610
611
612 </div>
613 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
614 <div class="directive-section"><h2><a name="authformmethod" id="authformmethod">Directive</a> <a name="AuthFormMethod" id="AuthFormMethod">AuthFormMethod</a></h2>
615 <table class="directive">
616 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire contenant la méthode de la
617 requête à effectuer en cas de connexion réussie</td></tr>
618 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormMethod <var>nom du champ</var></code></td></tr>
619 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_method</code></td></tr>
620 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
621 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
622 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
623 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
624 </table>
625     <p>La directive <code class="directive"><a href="#authformmethod">AuthFormMethod</a></code>
626     spécifie le nom du champ HTML qui, s'il existe, contiendra le type
627     MIME de la requête à effectuer en cas de connexion réussie.</p>
628
629     <p>En ajoutant au formulaire les champs décrits dans <code class="directive"><a href="#authformmethod">AuthFormMethod</a></code>, <code class="directive"><a href="#authformmimetype">AuthFormMimetype</a></code> et <code class="directive"><a href="#authformbody">AuthFormBody</a></code>, un site web sera en
630     mesure de relancer une requête qui a été éventuellement interrompue
631     par l'écran de connexion, ou par l'expiration d'un délai de
632     session.</p>
633
634 </div>
635 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
636 <div class="directive-section"><h2><a name="authformmimetype" id="authformmimetype">Directive</a> <a name="AuthFormMimetype" id="AuthFormMimetype">AuthFormMimetype</a></h2>
637 <table class="directive">
638 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire contenant le type MIME du
639 corps de la requête à effectuer en cas de connexion
640 réussie</td></tr>
641 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormMimetype <var>nom du champ</var></code></td></tr>
642 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_mimetype</code></td></tr>
643 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
644 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
645 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
646 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
647 </table>
648     <p>La directive <code class="directive"><a href="#authformmimetype">AuthFormMimetype</a></code>
649     spécifie le nom du champ HTML qui, s'il existe, contiendra le type
650     MIME de la requête à effectuer en cas de connexion réussie.</p>
651
652     <p>En ajoutant au formulaire les champs décrits dans <code class="directive"><a href="#authformmethod">AuthFormMethod</a></code>, <code class="directive"><a href="#authformmimetype">AuthFormMimetype</a></code> et <code class="directive"><a href="#authformbody">AuthFormBody</a></code>, un site web sera en
653     mesure de relancer une requête qui a été éventuellement interrompue
654     par l'écran de connexion, ou par l'expiration d'un délai de
655     session.</p>
656
657 </div>
658 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
659 <div class="directive-section"><h2><a name="authformpassword" id="authformpassword">Directive</a> <a name="AuthFormPassword" id="AuthFormPassword">AuthFormPassword</a></h2>
660 <table class="directive">
661 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire qui contient le mot de passe
662 de connexion</td></tr>
663 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormPassword <var>nom du champ</var></code></td></tr>
664 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_password</code></td></tr>
665 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
666 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
667 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
668 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
669 </table>
670     <p>La directive <code class="directive"><a href="#authformpassword">AuthFormPassword</a></code> permet de
671     spécifier le nom du champ HTML qui, s'il existe, contiendra le mot
672     de passe qui sera utilisé pour la connexion.</p>
673
674 </div>
675 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
676 <div class="directive-section"><h2><a name="authformprovider" id="authformprovider">Directive</a> <a name="AuthFormProvider" id="AuthFormProvider">AuthFormProvider</a></h2>
677 <table class="directive">
678 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le(s) fournisseur(s) d'authentification pour la
679 zone concernée</td></tr>
680 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormProvider <var>nom fournisseur</var>
681 [<var>nom fournisseur</var>] ...</code></td></tr>
682 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AuthFormProvider file</code></td></tr>
683 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
684 <tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
685 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
686 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
687 </table>
688     <p>La directive <code class="directive">AuthFormProvider</code> permet de
689     définir quel fournisseur sera utilisé pour authentifier les
690     utilisateurs pour la zone concernée. Le fournisseur par défaut
691     <code>file</code> est implémenté par le module
692     <code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code>. Assurez-vous que le fournisseur
693     choisi soit bien présent dans le serveur.</p>
694
695     <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">&lt;Location "/secure"&gt;
696     AuthType form
697     AuthName "private area"
698     AuthFormProvider  dbm
699     AuthDBMType        SDBM
700     AuthDBMUserFile    "/www/etc/dbmpasswd"
701     Require            valid-user
702     #...
703 &lt;/Location&gt;</pre>
704 </div>
705
706     <p>Les différents fournisseurs sont implémentés par les modules
707     <code class="module"><a href="../mod/mod_authn_dbm.html">mod_authn_dbm</a></code>, <code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code>,
708     <code class="module"><a href="../mod/mod_authn_dbd.html">mod_authn_dbd</a></code> et
709     <code class="module"><a href="../mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code>.</p>
710
711 </div>
712 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
713 <div class="directive-section"><h2><a name="authformsitepassphrase" id="authformsitepassphrase">Directive</a> <a name="AuthFormSitePassphrase" id="AuthFormSitePassphrase">AuthFormSitePassphrase</a></h2>
714 <table class="directive">
715 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Court-circuite l'authentification pour les sites à fort
716 trafic</td></tr>
717 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormSitePassphrase <var>secret</var></code></td></tr>
718 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>none</code></td></tr>
719 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
720 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
721 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
722 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
723 </table>
724     <p>La directive <code class="directive"><a href="#authformsitepassphrase">AuthFormSitePassphrase</a></code>
725     spécifie un mot de passe qui, s'il est présent dans la session
726     utilisateur, indique à Apache httpd de court-circuiter l'authentification
727     pour l'URL considérée. On peut l'utiliser dans le cas de sites web à
728     fort trafic afin de réduire la charge induite sur l'infrastructure
729     d'authentification.</p>
730
731     <p>On peut insérer le mot de passe dans une session utilisateur en
732     ajoutant cette directive à la configuration concernant le
733     gestionnaire <var>form-login-handler</var>. Le gestionnaire
734     <var>form-login-handler</var>, quant à lui, effectuera toujours les
735     vérifications d'authentification, qu'un mot de passe soit spécifié
736     ou non.</p>
737
738     <div class="warning"><h3>Avertissement</h3>
739       <p>Si la session est présentée à l'utilisateur à l'aide du module
740       <code class="module"><a href="../mod/mod_session_cookie.html">mod_session_cookie</a></code>, et si la session n'est pas
741       protégée par le module <code class="module"><a href="../mod/mod_session_crypto.html">mod_session_crypto</a></code>, le mot
742       de passe peut faire l'objet d'une attaque de type dictionnaire.
743       Quelle que soit la configuration de la session, assurez-vous que
744       cette directive n'est pas utilisée dans un espace d'URLs contenant
745       des données privées, ou à partir desquelles des transactions
746       sensibles pourraient être menées. En tout état de cause, vous
747       devez être conscient des risques encourus avant de l'utiliser.</p>
748     </div>
749
750
751 </div>
752 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
753 <div class="directive-section"><h2><a name="authformsize" id="authformsize">Directive</a> <a name="AuthFormSize" id="AuthFormSize">AuthFormSize</a></h2>
754 <table class="directive">
755 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>La taille maximale en octets du formulaire dont seront
756 extraites les informations de connexion</td></tr>
757 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormSize <var>taille</var></code></td></tr>
758 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>8192</code></td></tr>
759 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
760 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
761 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
762 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP Apache</td></tr>
763 </table>
764     <p>La directive <code class="directive"><a href="#authformsize">AuthFormSize</a></code> spécifie
765     la taille maximale du corps de la requête qui sera utilisée pour
766     trouver le formulaire de connexion.</p>
767
768     <p>Si une requête de connexion entrante possède une taille
769     supérieure à cette valeur, elle sera rejetée avec le code de réponse
770     HTTP <code>HTTP_REQUEST_TOO_LARGE</code>.</p>
771
772     <p>Si vous avez ajouté au formulaire des champs décrits dans <code class="directive"><a href="#authformmethod">AuthFormMethod</a></code>, <code class="directive"><a href="#authformmimetype">AuthFormMimetype</a></code> et <code class="directive"><a href="#authformbody">AuthFormBody</a></code>, il est recommandé
773     de définir cette directive à une valeur similaire à celle de la
774     directive <code class="directive"><a href="../mod/mod_request.html#keptbodysize">KeptBodySize</a></code>.</p>
775
776
777 </div>
778 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
779 <div class="directive-section"><h2><a name="authformusername" id="authformusername">Directive</a> <a name="AuthFormUsername" id="AuthFormUsername">AuthFormUsername</a></h2>
780 <table class="directive">
781 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire qui contient le nom de
782 connexion</td></tr>
783 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormUsername <var>nom du champ</var></code></td></tr>
784 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_username</code></td></tr>
785 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
786 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
787 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
788 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.3 du serveur HTTP Apache</td></tr>
789 </table>
790     <p>La directive <code class="directive"><a href="#authformusername">AuthFormUsername</a></code> permet de
791     spécifier le nom du champ HTML qui, s'il existe, contiendra le nom
792     d'utilisateur qui sera utilisé pour la connexion.</p>
793
794 </div>
795 </div>
796 <div class="bottomlang">
797 <p><span>Langues Disponibles: </span><a href="../en/mod/mod_auth_form.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
798 <a href="../fr/mod/mod_auth_form.html" title="Français">&nbsp;fr&nbsp;</a></p>
799 </div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
800 <script type="text/javascript"><!--//--><![CDATA[//><!--
801 var comments_shortname = 'httpd';
802 var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_auth_form.html';
803 (function(w, d) {
804     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
805         d.write('<div id="comments_thread"><\/div>');
806         var s = d.createElement('script');
807         s.type = 'text/javascript';
808         s.async = true;
809         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
810         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
811     }
812     else {
813         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
814     }
815 })(window, document);
816 //--><!]]></script></div><div id="footer">
817 <p class="apache">Copyright 2017 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
818 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
819 if (typeof(prettyPrint) !== 'undefined') {
820     prettyPrint();
821 }
822 //--><!]]></script>
823 </body></html>