]> granicus.if.org Git - apache/blob - docs/manual/mod/mod_auth_form.html.fr.utf8
fr doc rebuild.
[apache] / docs / manual / mod / mod_auth_form.html.fr.utf8
1 <?xml version="1.0" encoding="UTF-8"?>
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=UTF-8" 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 HTTP Apache 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 HTTP Apache 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 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Authentification à l'aide d'un formulaire</td></tr>
33 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr>
34 <tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>auth_form_module</td></tr>
35 <tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_auth_form.c</td></tr>
36 <tr><th><a href="module-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible à partir d'Apache 2.3</td></tr></table>
37 <h3>Sommaire</h3>
38
39     <div class="warning"><h3>Avertissement</h3>
40       <p>L'authentification à base de formulaire dépend des modules
41       <code class="module"><a href="../mod/mod_session.html">mod_session</a></code> qui utilisent les cookies HTTP, et en
42       tant que tels s'exposent à des attaques de type Cross Site
43       Scripting, ou risquent de divulguer des informations à caractère
44       privé aux clients. Assurez-vous que ces risques ont bien été pris
45       en compte avant d'activer les sessions sur votre serveur.</p>
46     </div>
47
48     <p>Ce module permet de restreindre l'accès en recherchant les
49     utilisateurs dans les fournisseurs spécifiés à l'aide d'un
50     formulaire de connexion HTML. Les formulaires HTML requièrent
51     davantage de configuration que les méthodes d'authentification
52     alternatives, mais ils peuvent s'avérer beaucoup plus conviviaux
53     pour les utilisateurs.
54     </p>
55
56     <p>L'authentification HTTP de base est fournie par le module
57     <code class="module"><a href="../mod/mod_auth_basic.html">mod_auth_basic</a></code>, et l'authentification HTTP à base
58     de condensé par le module <code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code>. Le
59     module <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code> doit être utilisé avec au
60     moins un module d'authentification du style
61     <code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code> et un module d'autorisation comme
62     <code class="module"><a href="../mod/mod_authz_user.html">mod_authz_user</a></code>.</p>
63
64     <p>Lorsque l'utilisateur a été authentifié avec succès, ses
65     informations de connexion sont stockés dans une session fournie par
66     le module <code class="module"><a href="../mod/mod_session.html">mod_session</a></code>.
67     </p>
68
69 </div>
70 <div id="quickview"><h3>Sujets</h3>
71 <ul id="topics">
72 <li><img alt="" src="../images/down.gif" /> <a href="#basicconfig">Configuration de base</a></li>
73 <li><img alt="" src="../images/down.gif" /> <a href="#standalone">Page de connexion dédiée</a></li>
74 <li><img alt="" src="../images/down.gif" /> <a href="#inline">Connexion à la volée</a></li>
75 <li><img alt="" src="../images/down.gif" /> <a href="#inlinepreservebody">Connexion à la volée avec
76     conservation du contenu</a></li>
77 <li><img alt="" src="../images/down.gif" /> <a href="#loggingout">Déconnexion</a></li>
78 <li><img alt="" src="../images/down.gif" /> <a href="#urlencoding">Noms d'utilisateurs et mots de
79     passe</a></li>
80 </ul><h3 class="directives">Directives</h3>
81 <ul id="toc">
82 <li><img alt="" src="../images/down.gif" /> <a href="#authformauthoritative">AuthFormAuthoritative</a></li>
83 <li><img alt="" src="../images/down.gif" /> <a href="#authformbody">AuthFormBody</a></li>
84 <li><img alt="" src="../images/down.gif" /> <a href="#authformdisablenostore">AuthFormDisableNoStore</a></li>
85 <li><img alt="" src="../images/down.gif" /> <a href="#authformfakebasicauth">AuthFormFakeBasicAuth</a></li>
86 <li><img alt="" src="../images/down.gif" /> <a href="#authformlocation">AuthFormLocation</a></li>
87 <li><img alt="" src="../images/down.gif" /> <a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></li>
88 <li><img alt="" src="../images/down.gif" /> <a href="#authformloginsuccesslocation">AuthFormLoginSuccessLocation</a></li>
89 <li><img alt="" src="../images/down.gif" /> <a href="#authformlogoutlocation">AuthFormLogoutLocation</a></li>
90 <li><img alt="" src="../images/down.gif" /> <a href="#authformmethod">AuthFormMethod</a></li>
91 <li><img alt="" src="../images/down.gif" /> <a href="#authformmimetype">AuthFormMimetype</a></li>
92 <li><img alt="" src="../images/down.gif" /> <a href="#authformpassword">AuthFormPassword</a></li>
93 <li><img alt="" src="../images/down.gif" /> <a href="#authformprovider">AuthFormProvider</a></li>
94 <li><img alt="" src="../images/down.gif" /> <a href="#authformsitepassphrase">AuthFormSitePassphrase</a></li>
95 <li><img alt="" src="../images/down.gif" /> <a href="#authformsize">AuthFormSize</a></li>
96 <li><img alt="" src="../images/down.gif" /> <a href="#authformusername">AuthFormUsername</a></li>
97 </ul>
98 <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>
99 <ul class="seealso">
100 <li><code class="module"><a href="../mod/mod_session.html">mod_session</a></code></li>
101 <li><code class="directive"><a href="../mod/mod_authn_core.html#authname">AuthName</a></code></li>
102 <li><code class="directive"><a href="../mod/mod_authn_core.html#authtype">AuthType</a></code></li>
103 <li><code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code></li>
104 <li><a href="../howto/auth.html">Mise en oeuvre de
105 l'authentification</a></li>
106 <li><a href="#comments_section">Commentaires</a></li></ul></div>
107 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
108 <div class="section">
109 <h2><a name="basicconfig" id="basicconfig">Configuration de base</a> <a title="Lien permanent" href="#basicconfig" class="permalink">&para;</a></h2>
110
111       <p>Pour protéger une URL particulière avec le module
112       <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>, vous devez déterminer l'endroit où
113       vous allez stocker votre <var>session</var>, ainsi que la méthode
114       d'authentification. Dans cet exemple simple, les informations de
115       connexion sont stockées dans une session à l'aide du module
116       <code class="module"><a href="../mod/mod_session_cookie.html">mod_session_cookie</a></code>, et l'authentification utilise
117       un fichier en s'appuyant sur le module
118       <code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code>. Si l'authentification échoue,
119       l'utilisateur dera redirigé vers la page du formulaire de
120       connexion.</p>
121
122       <div class="example"><h3>Exemple simple</h3><pre class="prettyprint lang-config">&lt;Location "/admin"&gt;
123     AuthFormProvider file
124     AuthUserFile "conf/passwd"
125     AuthType form
126     AuthName "/admin"
127     AuthFormLoginRequiredLocation "http://example.com/login.html"
128
129     Session On
130     SessionCookieName session path=/
131     
132     Require valid-user
133 &lt;/Location&gt;</pre>
134 </div>
135
136       <p>L'authentification <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code> est activée
137       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
138       <code class="directive"><a href="#authformprovider">AuthFormProvider</a></code> et
139       <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>
140       spécifient que les noms d'utilisateurs et mots de passe seront
141       vérifiés en utilisant le fichier choisi.</p>
142
143       <p>Les directives <code class="directive"><a href="../mod/mod_session.html#session">Session</a></code> et <code class="directive"><a href="../mod/mod_session_cookie.html#sessioncookiename">SessionCookieName</a></code>
144       créent une session stockée dans un cookie HTTP au niveau
145       du navigateur. Pour plus d'informations à propos des différentes
146       options de configuration des sessions, reportez-vous à la
147       documentation du module <code class="module"><a href="../mod/mod_session.html">mod_session</a></code>.</p>
148
149       <p>Si vous le souhaitez, vous pouvez ajoutez une directive <code class="directive"><a href="../mod/mod_session_crypto.html#sessioncryptopassphrase">SessionCryptoPassphrase</a></code> pour créer
150       un cookie de session chiffré. Le module
151       <code class="module"><a href="../mod/mod_session_crypto.html">mod_session_crypto</a></code> doit alors avoir été préalablement
152       chargé.</p>
153
154       <p>Dans l'exemple simple ci-dessus, une URL a été protégée par
155       <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>, mais on doit maintenant fournir
156       à l'utilisateur un moyen d'entrer un nom et un mot de passe. À cet
157       effet, on peut soit écrire une page de connexion indépendante
158       dédiée, soit inclure le formulaire de connexion dans la page
159       courante.</p>
160     </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
161 <div class="section">
162 <h2><a name="standalone" id="standalone">Page de connexion dédiée</a> <a title="Lien permanent" href="#standalone" class="permalink">&para;</a></h2>
163
164       <p>Le formulaire de connexion peut être contenu dans une page
165       indépendante, ou être inclus dans la page courante. </p>
166
167       <p>Lorsque la connexion s'effectue à partir d'une page
168       indépendante et si la tentative d'authentification échoue,
169       l'utilisateur doit être redirigé vers un formulaire de connexion,
170       créé à cet effet sur le site web, en utilisant la directive
171       <code class="directive"><a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></code>.
172       En général, la page de connexion contiendra un formulaire HTML
173       demandant à l'utilisateur de fournir un nom et un mot de passe.</p>
174
175       <div class="example"><h3>Exemple de formulaire de connexion</h3><pre class="prettyprint lang-html">&lt;form method="POST" action="/dologin.html"&gt;
176   Username: &lt;input type="text" name="httpd_username" value="" /&gt;
177   Password: &lt;input type="password" name="httpd_password" value="" /&gt;
178   &lt;input type="submit" name="login" value="Login" /&gt;
179 &lt;/form&gt;</pre>
180 </div>
181
182       <p>La partie où s'effectue la connexion proprement dite est
183       traitée par le gestionnaire <var>form-login-handler</var>.
184       L'action de ce formulaire doit pointer vers ce gestionnaire, ce
185       que l'on configure dans Apache httpd comme suit :</p>
186
187       <div class="example"><h3>Exemple de configuration du gestionnaire de
188       formulaire de connexion</h3><pre class="prettyprint lang-config">&lt;Location "/dologin.html"&gt;
189     SetHandler form-login-handler
190     AuthFormLoginRequiredLocation "http://example.com/login.html"
191     AuthFormLoginSuccessLocation "http://example.com/admin/index.html"
192     AuthFormProvider file
193     AuthUserFile "conf/passwd"
194     AuthType form
195     AuthName /admin
196     Session On
197     SessionCookieName session path=/
198 &lt;/Location&gt;</pre>
199 </div>
200
201       <p>L'URL spécifiée par la directive
202       <code class="directive"><a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></code>
203       référencera en général une page expliquant à l'utilisateur que sa
204       tentative de connexion a échoué, et qu'il doit la renouveler. La
205       directive <code class="directive"><a href="#authformloginsuccesslocation">AuthFormLoginSuccessLocation</a></code>
206       spécifie l'URL vers laquelle l'utilisateur doit être redirigé s'il
207       s'est authentifié avec succès.</p>
208
209       <p>Alternativement, l'URL vers laquelle doit être redirigé
210       l'utilisateur s'il s'est authentifié avec succès peut être
211       intégrée dans le formulaire de connexion, comme dans l'exemple
212       ci-dessous. Il en découle que le même gestionnaire
213       <var>form-login-handler</var> pourra être utilisé pour différentes
214       zones du site web.</p>
215
216       <div class="example"><h3>Exemple de formulaire d'authentification multizone</h3><pre class="prettyprint lang-html">&lt;form method="POST" action="/dologin.html"&gt;
217   Username: &lt;input type="text" name="httpd_username" value="" /&gt;
218   Password: &lt;input type="password" name="httpd_password" value="" /&gt;
219   &lt;input type="submit" name="login" value="Login" /&gt;
220   &lt;input type="hidden" name="httpd_location" value="http://example.com/success.html" /&gt;
221 &lt;/form&gt;</pre>
222 </div>
223
224     </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
225 <div class="section">
226 <h2><a name="inline" id="inline">Connexion à la volée</a> <a title="Lien permanent" href="#inline" class="permalink">&para;</a></h2>
227
228       <div class="warning"><h3>Avertissement</h3>
229         <p>Il existe un risque, dans certaines circonstances, que le
230         formulaire de connexion configuré pour une connexion à la volée
231         soit soumis plusieurs fois, révélant de ce fait les paramètres
232         de connexion à l'application sous-jacente. L'administrateur doit
233         s'assurer que cette dernière est correctement sécurisée afin
234         d'éviter les éventuels abus. En cas de doute, utilisez une page
235         de connexion indépendante dédiée.</p>
236       </div>
237
238       <p>Comme alternative à la page de connexion dédiée pour un site
239       web, il est possible de configurer <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>
240       pour authentifier les utilisateurs à la volée, sans les rediriger
241       vers une autre page, ce qui permet de conserver l'état de la page
242       courante au cours de la tentative de connexion. Ceci peut s'avérer
243       utile dans le cas d'une session limitée dans le temps, si le délai
244       de la session a expiré pendant la requête de l'utilisateur. Ce
245       dernier peut alors se réauthentifier à la même place, et
246       poursuivre son activité à partir du point où il en était resté.</p>
247
248       <p>Si un utilisateur non authentifié tente d'accéder à une page
249       protégée par <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code>, et si ce dernier
250       n'est pas configuré avec une directive <code class="directive"><a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></code>,
251       un code de statut <var>HTTP_UNAUTHORIZED</var> est renvoyé vers le
252       navigateur, indiquant à l'utilisateur qu'il n'est pas autorisé à
253       accéder à cette page.</p>
254
255       <p>Pour configurer l'authentification à la volée, l'administrateur
256       remplace le message d'erreur renvoyé par le code de statut
257       <var>HTTP_UNAUTHORIZED</var> par un message d'erreur personnalisé
258       contenant le formulaire de connexion comme suit :</p>
259
260       <div class="example"><h3>Exemple simple d'authentification à la volée</h3><pre class="prettyprint lang-config">AuthFormProvider file
261 ErrorDocument 401 "/login.shtml"
262 AuthUserFile "conf/passwd"
263 AuthType form
264 AuthName /admin
265 AuthFormLoginRequiredLocation "http://example.com/login.html"
266 Session On
267 SessionCookieName session path=/</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> <a title="Lien permanent" href="#inlinepreservebody" class="permalink">&para;</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> <a title="Lien permanent" href="#loggingout" class="permalink">&para;</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=/</pre>
369 </div>
370
371       <p>Notez que la déconnexion d'un utilisateur ne supprime pas la
372       session ; elle supprime seulement l'utilisateur et le mot de passe
373       de la session. Si la session qui en résulte est vide, elle sera
374       probablement supprimée, mais ce n'est pas garanti. Si vous voulez
375       être sûr que la session sera supprimée, affectez une valeur faible
376       à la directive <code class="directive"><a href="../mod/mod_session.html#sessionmaxage">SessionMaxAge</a></code>, par exemple 1
377       (affecter à cette directive la valeur zéro signifie une session
378       sans limite d'âge).
379       </p>
380
381       <div class="example"><h3>Exemple simple avec durée de validité de session
382       limitée</h3><pre class="prettyprint lang-config">SetHandler form-logout-handler
383 AuthFormLogoutLocation "http://example.com/loggedout.html"
384 Session On
385 SessionMaxAge 1
386 SessionCookieName session path=/</pre>
387 </div>
388
389     </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
390 <div class="section">
391 <h2><a name="urlencoding" id="urlencoding">Noms d'utilisateurs et mots de
392     passe</a> <a title="Lien permanent" href="#urlencoding" class="permalink">&para;</a></h2>
393     <p>Notez que la soumission d'un formulaire implique l'encodage URL
394     (URLEncoding) des données du formulaire, ici le nom d'utilisateur et
395     le mot de passe. Vous devez donc choisir des noms d'utilisateurs et
396     mots de passe qui ne contiennent pas de caractères susceptibles
397     d'être encodés URL lors de la soumission du formulaire, sous peine
398     d'obtenir des résultats inattendus.</p>
399     </div>
400 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
401 <div class="directive-section"><h2><a name="authformauthoritative" id="authformauthoritative">Directive</a> <a name="AuthFormAuthoritative" id="AuthFormAuthoritative">AuthFormAuthoritative</a> <a title="Lien permanent" href="#authformauthoritative" class="permalink">&para;</a></h2>
402 <table class="directive">
403 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Détermine si l'autorisation et l'authentification sont confiés à
404 des modules de plus bas niveau</td></tr>
405 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormAuthoritative On|Off</code></td></tr>
406 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AuthFormAuthoritative On</code></td></tr>
407 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
408 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
409 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
410 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
411 </table>
412     <p>Normalement, chacun des modules d'autorisation spécifiés par la
413     directive <code class="directive"><a href="#authformprovider">AuthFormProvider</a></code> va tenter de
414     vérifier l'identité de l'utilisateur, et si ce dernier n'est trouvé
415     dans aucun fournisseur, l'accès sera refusé. En définissant
416     explicitement la directive
417     <code class="directive">AuthFormAuthoritative</code> à <code>Off</code> on
418     confie les processus d'authentification et d'autorisation à des
419     modules ne s'appuyant pas sur des fournisseurs, si <strong>aucun
420     identifiant utilisateur</strong> ou aucune <strong>règle</strong> ne
421     correspond à l'identifiant utilisateur fourni. Ceci ne peut s'avérer
422     nécessaire que si l'on combine <code class="module"><a href="../mod/mod_auth_form.html">mod_auth_form</a></code> avec
423     des modules tiers qui ne se configurent pas avec la directive
424     <code class="directive"><a href="#authformprovider">AuthFormProvider</a></code>.
425     Lorsqu'on utilise de tels modules, la chronologie du processus est
426     déterminée dans leur code source, et n'est pas configurable.</p>
427
428 </div>
429 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
430 <div class="directive-section"><h2><a name="authformbody" id="authformbody">Directive</a> <a name="AuthFormBody" id="AuthFormBody">AuthFormBody</a> <a title="Lien permanent" href="#authformbody" class="permalink">&para;</a></h2>
431 <table class="directive">
432 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire contenant le corps de la
433 requête à effectuer en cas de connexion réussie</td></tr>
434 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormBody <var>nom du champ</var></code></td></tr>
435 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_body</code></td></tr>
436 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
437 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
438 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
439 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
440 <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>
441 </table>
442     <p>La directive <code class="directive"><a href="#authformbody">AuthFormBody</a></code>
443     spécifie le nom du champ HTML qui, s'il existe, contiendra le corps
444     de la requête à effectuer en cas de connexion réussie.</p>
445
446     <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
447     mesure de relancer une requête qui a été éventuellement interrompue
448     par l'écran de connexion, ou par l'expiration d'un délai de
449     session.</p>
450
451 </div>
452 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
453 <div class="directive-section"><h2><a name="authformdisablenostore" id="authformdisablenostore">Directive</a> <a name="AuthFormDisableNoStore" id="AuthFormDisableNoStore">AuthFormDisableNoStore</a> <a title="Lien permanent" href="#authformdisablenostore" class="permalink">&para;</a></h2>
454 <table class="directive">
455 <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
456 connexion</td></tr>
457 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormDisableNoStore <var>On|Off</var></code></td></tr>
458 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AuthFormDisableNoStore Off</code></td></tr>
459 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
460 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</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> <a title="Lien permanent" href="#authformfakebasicauth" class="permalink">&para;</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#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
484 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
485 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
486 <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>
487 </table>
488     <p>Le drapeau <code class="directive"><a href="#authformfakebasicauth">AuthFormFakeBasicAuth</a></code>
489     détermine si une en-tête d'<code>Authentification de base</code>
490     sera ajoutée aux en-têtes de la requête. On peut utiliser cette
491     méthode pour présenter le nom d'utilisateur et le mot de passe à
492     l'application sous-jacente, sans que cette dernière ait besoin de
493     connaître la manière dont le processus de connexion a été mené à
494     bien.</p>
495
496
497 </div>
498 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
499 <div class="directive-section"><h2><a name="authformlocation" id="authformlocation">Directive</a> <a name="AuthFormLocation" id="AuthFormLocation">AuthFormLocation</a> <a title="Lien permanent" href="#authformlocation" class="permalink">&para;</a></h2>
500 <table class="directive">
501 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire qui contiendra l'URL vers
502 laquelle l'utilisateur sera redirigé en cas de connexion
503 réussie</td></tr>
504 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormLocation <var>nom du champ</var></code></td></tr>
505 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_location</code></td></tr>
506 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
507 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
508 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
509 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
510 <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>
511 </table>
512     <p>La directive <code class="directive"><a href="#authformlocation">AuthFormLocation</a></code>
513     spécifie le nom du champ HTML qui, s'il existe, contiendra l'URL
514     vers laquelle rediriger le navigateur en cas de connexion
515     réussie.</p>
516
517 </div>
518 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
519 <div class="directive-section"><h2><a name="authformloginrequiredlocation" id="authformloginrequiredlocation">Directive</a> <a name="AuthFormLoginRequiredLocation" id="AuthFormLoginRequiredLocation">AuthFormLoginRequiredLocation</a> <a title="Lien permanent" href="#authformloginrequiredlocation" class="permalink">&para;</a></h2>
520 <table class="directive">
521 <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
522 authentification est requise</td></tr>
523 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormLoginRequiredLocation <var>url</var></code></td></tr>
524 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>none</code></td></tr>
525 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
526 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
527 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
528 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
529 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP
530 Apache. L'interprétation des expressions rationnelles est supportée
531 depuis la version 2.4.4.</td></tr>
532 </table>
533     <p>La directive <code class="directive"><a href="#authformloginrequiredlocation">AuthFormLoginRequiredLocation</a></code>
534     spécifie l'URL vers laquelle l'utilisateur devra être
535     redirigé s'il n'est pas autorisé à accéder à une page. Sa valeur est
536     interprétée via l'interpréteur <a href="../expr.html">ap_expr</a>
537     avant d'être envoyée au client. Par défaut,
538     si un utilisateur n'est pas autorisé à accéder à une page, le code
539     de réponse HTTP <code>HTTP_UNAUTHORIZED</code> est renvoyé avec la
540     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>
541     permet de remplacer cette valeur par défaut.</p>
542
543     <p>Vous pouvez utiliser cette directive si vous voulez présenter une
544     page de connexion personnalisée à vos utilisateurs.</p>
545
546
547 </div>
548 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
549 <div class="directive-section"><h2><a name="authformloginsuccesslocation" id="authformloginsuccesslocation">Directive</a> <a name="AuthFormLoginSuccessLocation" id="AuthFormLoginSuccessLocation">AuthFormLoginSuccessLocation</a> <a title="Lien permanent" href="#authformloginsuccesslocation" class="permalink">&para;</a></h2>
550 <table class="directive">
551 <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
552 de connexion réussie</td></tr>
553 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormLoginSuccessLocation <var>url</var></code></td></tr>
554 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>none</code></td></tr>
555 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
556 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
557 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
558 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
559 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP
560 Apache. L'interprétation des expressions rationnelles est supportée
561 depuis la version 2.4.4.</td></tr>
562 </table>
563     <p>La directive <code class="directive"><a href="#authformloginsuccesslocation">AuthFormLoginSuccessLocation</a></code>
564     spécifie l'URL vers laquelle l'utilisateur doit être
565     redirigé en cas de connexion réussie. Sa valeur est
566     interprétée via l'interpréteur <a href="../expr.html">ap_expr</a>
567     avant d'être envoyée au client. L'effet de cette directive
568     peut être annulé si l'on a défini un champ de formulaire contenant
569     une autre URL à l'aide de la directive <code class="directive"><a href="#authformlocation">AuthFormLocation</a></code>.</p>
570
571     <p>Vous pouvez utiliser cette directive si vous possédez une URL de
572     connexion personnalisée, et si vous n'avez pas intégré la page de
573     destination dans le formulaire de connexion.</p>
574
575
576 </div>
577 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
578 <div class="directive-section"><h2><a name="authformlogoutlocation" id="authformlogoutlocation">Directive</a> <a name="AuthFormLogoutLocation" id="AuthFormLogoutLocation">AuthFormLogoutLocation</a> <a title="Lien permanent" href="#authformlogoutlocation" class="permalink">&para;</a></h2>
579 <table class="directive">
580 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>L'URL vers laquelle un utilisateur devra être redirigé
581 après s'être déconnecté</td></tr>
582 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormLogoutLocation <var>uri</var></code></td></tr>
583 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>none</code></td></tr>
584 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
585 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
586 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
587 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
588 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.0 du serveur HTTP
589 Apache. L'interprétation des expressions rationnelles est supportée
590 depuis la version 2.4.4.</td></tr>
591 </table>
592     <p>La directive <code class="directive"><a href="#authformlogoutlocation">AuthFormLogoutLocation</a></code>
593     spécifie l'URL de la page du serveur vers laquelle l'utilisateur
594     devra être redirigé s'il se déconnecte. Sa valeur est
595     interprétée via l'interpréteur <a href="../expr.html">ap_expr</a>
596     avant d'être envoyée au client.</p>
597
598     <p>Lorsqu'un accès est tenté sur un URI traité par le gestionnaire
599     <code>form-logout-handler</code>, la page spécifiée par cette
600     directive sera présentée à l'utilisateur final. Par exemple :</p>
601
602     <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">&lt;Location "/logout"&gt;
603     SetHandler form-logout-handler
604     AuthFormLogoutLocation "http://example.com/loggedout.html"
605     Session on
606     #...
607 &lt;/Location&gt;</pre>
608 </div>
609
610     <p>Si un utilisateur tente d'accéder à l'URI <var>/logout/</var>, il
611     sera déconnecté, et la page <var>/loggedout.html</var> lui sera
612     présentée. Assurez-vous que la page <var>loggedout.html</var> n'est
613     pas protégée par mot de passe, car dans le cas contraire, elle ne
614     serait pas affichée.</p>
615
616
617 </div>
618 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
619 <div class="directive-section"><h2><a name="authformmethod" id="authformmethod">Directive</a> <a name="AuthFormMethod" id="AuthFormMethod">AuthFormMethod</a> <a title="Lien permanent" href="#authformmethod" class="permalink">&para;</a></h2>
620 <table class="directive">
621 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire contenant la méthode de la
622 requête à effectuer en cas de connexion réussie</td></tr>
623 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormMethod <var>nom du champ</var></code></td></tr>
624 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_method</code></td></tr>
625 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
626 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
627 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
628 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
629 <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>
630 </table>
631     <p>La directive <code class="directive"><a href="#authformmethod">AuthFormMethod</a></code>
632     spécifie le nom du champ HTML qui, s'il existe, contiendra le type
633     MIME de la requête à effectuer en cas de connexion réussie.</p>
634
635     <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
636     mesure de relancer une requête qui a été éventuellement interrompue
637     par l'écran de connexion, ou par l'expiration d'un délai de
638     session.</p>
639
640 </div>
641 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
642 <div class="directive-section"><h2><a name="authformmimetype" id="authformmimetype">Directive</a> <a name="AuthFormMimetype" id="AuthFormMimetype">AuthFormMimetype</a> <a title="Lien permanent" href="#authformmimetype" class="permalink">&para;</a></h2>
643 <table class="directive">
644 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire contenant le type MIME du
645 corps de la requête à effectuer en cas de connexion
646 réussie</td></tr>
647 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormMimetype <var>nom du champ</var></code></td></tr>
648 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_mimetype</code></td></tr>
649 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
650 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
651 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
652 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
653 <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>
654 </table>
655     <p>La directive <code class="directive"><a href="#authformmimetype">AuthFormMimetype</a></code>
656     spécifie le nom du champ HTML qui, s'il existe, contiendra le type
657     MIME de la requête à effectuer en cas de connexion réussie.</p>
658
659     <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
660     mesure de relancer une requête qui a été éventuellement interrompue
661     par l'écran de connexion, ou par l'expiration d'un délai de
662     session.</p>
663
664 </div>
665 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
666 <div class="directive-section"><h2><a name="authformpassword" id="authformpassword">Directive</a> <a name="AuthFormPassword" id="AuthFormPassword">AuthFormPassword</a> <a title="Lien permanent" href="#authformpassword" class="permalink">&para;</a></h2>
667 <table class="directive">
668 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire qui contient le mot de passe
669 de connexion</td></tr>
670 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormPassword <var>nom du champ</var></code></td></tr>
671 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_password</code></td></tr>
672 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
673 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
674 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
675 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
676 <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>
677 </table>
678     <p>La directive <code class="directive"><a href="#authformpassword">AuthFormPassword</a></code> permet de
679     spécifier le nom du champ HTML qui, s'il existe, contiendra le mot
680     de passe qui sera utilisé pour la connexion.</p>
681
682 </div>
683 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
684 <div class="directive-section"><h2><a name="authformprovider" id="authformprovider">Directive</a> <a name="AuthFormProvider" id="AuthFormProvider">AuthFormProvider</a> <a title="Lien permanent" href="#authformprovider" class="permalink">&para;</a></h2>
685 <table class="directive">
686 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le(s) fournisseur(s) d'authentification pour la
687 zone concernée</td></tr>
688 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormProvider <var>nom fournisseur</var>
689 [<var>nom fournisseur</var>] ...</code></td></tr>
690 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AuthFormProvider file</code></td></tr>
691 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
692 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
693 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
694 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
695 </table>
696     <p>La directive <code class="directive">AuthFormProvider</code> permet de
697     définir quel fournisseur sera utilisé pour authentifier les
698     utilisateurs pour la zone concernée. Le fournisseur par défaut
699     <code>file</code> est implémenté par le module
700     <code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code>. Assurez-vous que le fournisseur
701     choisi soit bien présent dans le serveur.</p>
702
703     <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">&lt;Location "/secure"&gt;
704     AuthType form
705     AuthName "private area"
706     AuthFormProvider  dbm
707     AuthDBMType        SDBM
708     AuthDBMUserFile    "/www/etc/dbmpasswd"
709     Require            valid-user
710     #...
711 &lt;/Location&gt;</pre>
712 </div>
713
714     <p>Les différents fournisseurs sont implémentés par les modules
715     <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>,
716     <code class="module"><a href="../mod/mod_authn_dbd.html">mod_authn_dbd</a></code> et
717     <code class="module"><a href="../mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code>.</p>
718
719 </div>
720 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
721 <div class="directive-section"><h2><a name="authformsitepassphrase" id="authformsitepassphrase">Directive</a> <a name="AuthFormSitePassphrase" id="AuthFormSitePassphrase">AuthFormSitePassphrase</a> <a title="Lien permanent" href="#authformsitepassphrase" class="permalink">&para;</a></h2>
722 <table class="directive">
723 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Court-circuite l'authentification pour les sites à fort
724 trafic</td></tr>
725 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormSitePassphrase <var>secret</var></code></td></tr>
726 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>none</code></td></tr>
727 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
728 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
729 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
730 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
731 <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>
732 </table>
733     <p>La directive <code class="directive"><a href="#authformsitepassphrase">AuthFormSitePassphrase</a></code>
734     spécifie un mot de passe qui, s'il est présent dans la session
735     utilisateur, indique à Apache httpd de court-circuiter l'authentification
736     pour l'URL considérée. On peut l'utiliser dans le cas de sites web à
737     fort trafic afin de réduire la charge induite sur l'infrastructure
738     d'authentification.</p>
739
740     <p>On peut insérer le mot de passe dans une session utilisateur en
741     ajoutant cette directive à la configuration concernant le
742     gestionnaire <var>form-login-handler</var>. Le gestionnaire
743     <var>form-login-handler</var>, quant à lui, effectuera toujours les
744     vérifications d'authentification, qu'un mot de passe soit spécifié
745     ou non.</p>
746
747     <div class="warning"><h3>Avertissement</h3>
748       <p>Si la session est présentée à l'utilisateur à l'aide du module
749       <code class="module"><a href="../mod/mod_session_cookie.html">mod_session_cookie</a></code>, et si la session n'est pas
750       protégée par le module <code class="module"><a href="../mod/mod_session_crypto.html">mod_session_crypto</a></code>, le mot
751       de passe peut faire l'objet d'une attaque de type dictionnaire.
752       Quelle que soit la configuration de la session, assurez-vous que
753       cette directive n'est pas utilisée dans un espace d'URLs contenant
754       des données privées, ou à partir desquelles des transactions
755       sensibles pourraient être menées. En tout état de cause, vous
756       devez être conscient des risques encourus avant de l'utiliser.</p>
757     </div>
758
759
760 </div>
761 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
762 <div class="directive-section"><h2><a name="authformsize" id="authformsize">Directive</a> <a name="AuthFormSize" id="AuthFormSize">AuthFormSize</a> <a title="Lien permanent" href="#authformsize" class="permalink">&para;</a></h2>
763 <table class="directive">
764 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>La taille maximale en octets du formulaire dont seront
765 extraites les informations de connexion</td></tr>
766 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormSize <var>taille</var></code></td></tr>
767 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>8192</code></td></tr>
768 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
769 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
770 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
771 <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>
772 </table>
773     <p>La directive <code class="directive"><a href="#authformsize">AuthFormSize</a></code> spécifie
774     la taille maximale du corps de la requête qui sera utilisée pour
775     trouver le formulaire de connexion.</p>
776
777     <p>Si une requête de connexion entrante possède une taille
778     supérieure à cette valeur, elle sera rejetée avec le code de réponse
779     HTTP <code>HTTP_REQUEST_TOO_LARGE</code>.</p>
780
781     <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é
782     de définir cette directive à une valeur similaire à celle de la
783     directive <code class="directive"><a href="../mod/mod_request.html#keptbodysize">KeptBodySize</a></code>.</p>
784
785
786 </div>
787 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
788 <div class="directive-section"><h2><a name="authformusername" id="authformusername">Directive</a> <a name="AuthFormUsername" id="AuthFormUsername">AuthFormUsername</a> <a title="Lien permanent" href="#authformusername" class="permalink">&para;</a></h2>
789 <table class="directive">
790 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nom du champ de formulaire qui contient le nom de
791 connexion</td></tr>
792 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthFormUsername <var>nom du champ</var></code></td></tr>
793 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>httpd_username</code></td></tr>
794 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
795 <tr><th><a href="directive-dict.html#Override">Surcharges autorisées:</a></th><td>AuthConfig</td></tr>
796 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
797 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_form</td></tr>
798 <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>
799 </table>
800     <p>La directive <code class="directive"><a href="#authformusername">AuthFormUsername</a></code> permet de
801     spécifier le nom du champ HTML qui, s'il existe, contiendra le nom
802     d'utilisateur qui sera utilisé pour la connexion.</p>
803
804 </div>
805 </div>
806 <div class="bottomlang">
807 <p><span>Langues Disponibles: </span><a href="../en/mod/mod_auth_form.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
808 <a href="../fr/mod/mod_auth_form.html" title="Français">&nbsp;fr&nbsp;</a></p>
809 </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>
810 <script type="text/javascript"><!--//--><![CDATA[//><!--
811 var comments_shortname = 'httpd';
812 var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_auth_form.html';
813 (function(w, d) {
814     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
815         d.write('<div id="comments_thread"><\/div>');
816         var s = d.createElement('script');
817         s.type = 'text/javascript';
818         s.async = true;
819         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
820         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
821     }
822     else {
823         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
824     }
825 })(window, document);
826 //--><!]]></script></div><div id="footer">
827 <p class="apache">Copyright 2019 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
828 <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[//><!--
829 if (typeof(prettyPrint) !== 'undefined') {
830     prettyPrint();
831 }
832 //--><!]]></script>
833 </body></html>