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 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 5 This file is generated from xml source: DO NOT EDIT 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 7 --> 8<title>mod_auth_basic - Serveur Apache HTTP</title> 9<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" /> 10<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" /> 11<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" /> 12<script src="/style/scripts/prettify.min.js" type="text/javascript"> 13</script> 14 15<link href="/images/favicon.ico" rel="shortcut icon" /></head> 16<body> 17<div id="page-header"> 18<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.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> 19<p class="apache">Serveur Apache HTTP Version 2.4</p> 20<img alt="" src="/images/feather.gif" /></div> 21<div class="up"><a href="./"><img title="<-" alt="<-" src="/images/left.gif" /></a></div> 22<div id="path"> 23<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div> 24<div id="page-content"> 25<div id="preamble"><h1>Module Apache mod_auth_basic</h1> 26<div class="toplang"> 27<p><span>Langues Disponibles: </span><a href="/en/mod/mod_auth_basic.html" hreflang="en" rel="alternate" title="English"> en </a> | 28<a href="/fr/mod/mod_auth_basic.html" title="Fran�ais"> fr </a> | 29<a href="/ja/mod/mod_auth_basic.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 30<a href="/ko/mod/mod_auth_basic.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p> 31</div> 32<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Authentification HTTP de base</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_basic_module</td></tr> 35<tr><th><a href="module-dict.html#SourceFile">Fichier�Source:</a></th><td>mod_auth_basic.c</td></tr> 36<tr><th><a href="module-dict.html#Compatibility">Compatibilit�:</a></th><td>Disponible depuis la version 2.1 d'Apache</td></tr></table> 37<h3>Sommaire</h3> 38 39 <p>Ce module permet d'utiliser l'authentification basique HTTP pour 40 restreindre l'acc�s en recherchant les utilisateurs dans les 41 fournisseurs d'authentification sp�cifi�s. Il est en g�n�ral 42 combin� avec au moins un module d'authentification comme 43 <code class="module"><a href="/mod/mod_authn_file.html">mod_authn_file</a></code> et un module d'autorisation comme 44 <code class="module"><a href="/mod/mod_authz_user.html">mod_authz_user</a></code>. L'authentification HTTP � 45 base de condens� (digest), quant � elle, est fournie par le module 46 <code class="module"><a href="/mod/mod_auth_digest.html">mod_auth_digest</a></code>. </p> 47</div> 48<div id="quickview"><h3 class="directives">Directives</h3> 49<ul id="toc"> 50<li><img alt="" src="/images/down.gif" /> <a href="#authbasicauthoritative">AuthBasicAuthoritative</a></li> 51<li><img alt="" src="/images/down.gif" /> <a href="#authbasicfake">AuthBasicFake</a></li> 52<li><img alt="" src="/images/down.gif" /> <a href="#authbasicprovider">AuthBasicProvider</a></li> 53<li><img alt="" src="/images/down.gif" /> <a href="#authbasicusedigestalgorithm">AuthBasicUseDigestAlgorithm</a></li> 54</ul> 55<h3>Voir aussi</h3> 56<ul class="seealso"> 57<li><code class="directive"><a href="/mod/mod_authn_core.html#authname">AuthName</a></code></li> 58<li><code class="directive"><a href="/mod/mod_authn_core.html#authtype">AuthType</a></code></li> 59<li><code class="directive"><a href="/mod/mod_authz_core.html#require">Require</a></code></li> 60<li><a href="/howto/auth.html">Mode d'emploi de 61l'authentification</a></li> 62</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div> 63 64<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 65<div class="directive-section"><h2><a name="AuthBasicAuthoritative" id="AuthBasicAuthoritative">AuthBasicAuthoritative</a> <a name="authbasicauthoritative" id="authbasicauthoritative">Directive</a></h2> 66<table class="directive"> 67<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�finit si les processus d'autorisation et 68d'authentification peuvent �tre confi�s � des modules de plus bas 69niveau</td></tr> 70<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthBasicAuthoritative On|Off</code></td></tr> 71<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>AuthBasicAuthoritative On</code></td></tr> 72<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r�pertoire, .htaccess</td></tr> 73<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr> 74<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> 75<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_basic</td></tr> 76</table> 77 <p>Normalement, chaque module d'autorisation �num�r� dans la 78 directive <code class="directive"><a href="#authbasicprovider">AuthBasicProvider</a></code> va tenter de 79 v�rifier l'utilisateur, et si ce dernier n'est trouv� dans aucun des 80 fournisseurs, l'acc�s sera refus�. D�finir explicitement la 81 directive <code class="directive">AuthBasicAuthoritative</code> � 82 <code>Off</code> permet de confier l'autorisation et 83 l'authentification � d'autres modules non bas�s sur les fournisseurs 84 si <strong>aucun identifiant utilisateur</strong> ou aucune 85 <strong>r�gle</strong> ne correspondent � l'identifiant utilisateur 86 sp�cifi�. Ceci ne peut s'av�rer n�cessaire que lorsque 87 <code class="module"><a href="/mod/mod_auth_basic.html">mod_auth_basic</a></code> est combin� avec des modules tiers 88 qui n'ont pas �t� configur�s � l'aide de la directive <code class="directive"><a href="#authbasicprovider">AuthBasicProvider</a></code>. Lorsqu'on 89 utilise de tels modules, l'ordre dans lequel s'effectue le 90 traitement est d�fini dans le code source des modules et n'est pas 91 configurable.</p> 92 93</div> 94<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 95<div class="directive-section"><h2><a name="AuthBasicFake" id="AuthBasicFake">AuthBasicFake</a> <a name="authbasicfake" id="authbasicfake">Directive</a></h2> 96<table class="directive"> 97<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Authentification de base simul�e � l'aide des nom 98d'utilisateur et mot de passe fournis</td></tr> 99<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthBasicFake off|nom-utilisateur [mot-de-passe]</code></td></tr> 100<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>none</code></td></tr> 101<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r�pertoire, .htaccess</td></tr> 102<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr> 103<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> 104<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_basic</td></tr> 105<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>Disponible � partir de la version 2.4.5 du serveur HTTP 106Apache</td></tr> 107</table> 108 <p>Les nom d'utilisateur et mot de passe sp�cifi�s sont rassembl�s 109 dans un en-t�te d'autorisation qui est transmis au serveur ou au 110 service sous-jacent au serveur. Ces nom d'utilisateur et mot de 111 passe sont interpr�t�s par l'<a href="/expr.html">interpr�teur 112 d'expression</a>, ce qui permet de les d�finir en fonction de 113 param�tres de la requ�te.</p> 114 115 <p>Si aucun mot de passe n'est sp�cifi�, la valeur par d�faut 116 "password" sera utilis�e. Pour d�sactiver l'authentification de base 117 simul�e pour un espace d'URL, d�finissez AuthBasicFake � "off".</p> 118 119 <p>Dans l'exemple suivant, un nom d'utilisateur et un mot de passe 120 pr�d�finis sont transmis � un serveur d'arri�re-plan :</p> 121 122 <div class="example"><h3>Exemple de transmission d'un nom d'utilisateur et 123 d'un mot de passe pr�d�finis</h3><pre class="prettyprint lang-config"><Location /demo> 124 AuthBasicFake demo demopass 125</Location></pre> 126</div> 127 128 <p>Dans l'exemple suivant, l'adresse email extraite d'un certificat 129 client est transmise au serveur, �tendant par l�-m�me la 130 fonctionnalit� de l'option FakeBasicAuth de la directive <code class="directive"><a href="/mod/mod_ssl.html#ssloptions">SSLOptions</a></code>. Comme avec l'option 131 FakeBasicAuth, le mot de passe se voit attribu� le contenu fixe de 132 la cha�ne "password".</p> 133 134 <div class="example"><h3>Exemple d'utilisation avec un certificat</h3><pre class="prettyprint lang-config"><Location /secure> 135 AuthBasicFake %{SSL_CLIENT_S_DN_Email} 136</Location></pre> 137</div> 138 139 <p>Pour compl�ter l'exemple pr�c�dent, il est possible de g�n�rer la 140 valeur du mot de passe en proc�dant � un hashage de l'adresse email 141 � partir d'un mot d'une passphrase initial fix�e, puis de transmettre le 142 r�sultat obtenu au serveur d'arri�re-plan. Ceci peut s'av�rer utile 143 pour donner acc�s � des serveurs anciens qui ne supportent pas les 144 certificats clients.</p> 145 146 <div class="example"><h3>Exemple de g�n�ration de mot de passe par hashage de 147 l'adresse email</h3><pre class="prettyprint lang-config"><Location /secure> 148 AuthBasicFake %{SSL_CLIENT_S_DN_Email} %{sha1:passphrase-%{SSL_CLIENT_S_DN_Email}} 149</Location></pre> 150</div> 151 152 <div class="example"><h3>D�sactivation de l'authentification simul�e</h3><pre class="prettyprint lang-config"><Location /public> 153 AuthBasicFake off 154</Location></pre> 155</div> 156 157 158</div> 159<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 160<div class="directive-section"><h2><a name="AuthBasicProvider" id="AuthBasicProvider">AuthBasicProvider</a> <a name="authbasicprovider" id="authbasicprovider">Directive</a></h2> 161<table class="directive"> 162<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�finit le(les) fournisseur(s) d'authentification pour 163cette zone du site web</td></tr> 164<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthBasicProvider <var>nom fournisseur</var> 165[<var>nom fournisseur</var>] ...</code></td></tr> 166<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>AuthBasicProvider file</code></td></tr> 167<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r�pertoire, .htaccess</td></tr> 168<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr> 169<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> 170<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_basic</td></tr> 171</table> 172 <p>La directive <code class="directive">AuthBasicProvider</code> permet de 173 d�finir le fournisseur utilis� pour authentifier les utilisateurs 174 pour la zone du site web concern�e. Le fournisseur par d�faut 175 <code>file</code> est impl�ment� par le module 176 <code class="module"><a href="/mod/mod_authn_file.html">mod_authn_file</a></code>. Assurez-vous que le module 177 impl�mentant le fournisseur choisi soit bien pr�sent dans le 178 serveur.</p> 179 180 <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"><Location /secure> 181 AuthType basic 182 AuthName "private area" 183 AuthBasicProvider dbm 184 AuthDBMType SDBM 185 AuthDBMUserFile /www/etc/dbmpasswd 186 Require valid-user 187</Location></pre> 188</div> 189 <p>Les fournisseurs sont sollicit�s dans l'ordre jusqu'� ce que l'un 190 d'entre eux trouve une correspondance pour le nom d'utilisateur de 191 la requ�te ; alors, ce dernier fournisseur sera le seul � v�rifier 192 le mot de passe. Un �chec dans la v�rification du mot de passe 193 n'entra�ne pas le passage du contr�le au fournisseur suivant.</p> 194 195 <p>Les diff�rents fournisseurs disponibles sont impl�ment�s par les 196 modules <code class="module"><a href="/mod/mod_authn_dbm.html">mod_authn_dbm</a></code>, 197 <code class="module"><a href="/mod/mod_authn_file.html">mod_authn_file</a></code>, <code class="module"><a href="/mod/mod_authn_dbd.html">mod_authn_dbd</a></code>, 198 <code class="module"><a href="/mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code> et <code class="module"><a href="/mod/mod_authn_socache.html">mod_authn_socache</a></code>.</p> 199 200</div> 201<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 202<div class="directive-section"><h2><a name="AuthBasicUseDigestAlgorithm" id="AuthBasicUseDigestAlgorithm">AuthBasicUseDigestAlgorithm</a> <a name="authbasicusedigestalgorithm" id="authbasicusedigestalgorithm">Directive</a></h2> 203<table class="directive"> 204<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>V�rifie les mots de passe aupr�s des fournisseurs 205d'authentification � la mani�re de l'authentification de type Digest. 206</td></tr> 207<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthBasicUseDigestAlgorithm MD5|Off</code></td></tr> 208<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>AuthBasicUseDigestAlgorithm Off</code></td></tr> 209<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r�pertoire, .htaccess</td></tr> 210<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr> 211<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> 212<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_basic</td></tr> 213<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>Disponible � partir de la version 2.4.7 du serveur HTTP 214Apache</td></tr> 215</table> 216 <p>Normalement, lorsqu'on utilise l'authentification basique, les 217 fournisseurs sp�cifi�s via la directive <code class="directive"><a href="#authbasicprovider">AuthBasicProvider</a></code> tentent de 218 contr�ler l'identit� d'un utilisateur en recherchant dans leurs 219 bases de donn�es l'existence d'un couple utilisateur/mot de passe 220 correspondant. Les mots de passe enregistr�s sont en g�n�ral 221 chiffr�s, mais ce n'est pas syst�matique ; chaque fournisseur peut 222 choisir son propre mode de stockage des mots de passe.</p> 223 224 <p>Lorsqu'on utilise l'authentification de type Digest, les 225 fournisseurs sp�cifi�s par la directive <code class="directive"><a href="/mod/mod_auth_digest.html#authdigestprovider">AuthDigestProvider</a></code> effectuent 226 une recherche similaire dans leurs bases de 227 donn�es pour trouver un couple utilisateur/mot de passe 228 correspondant. Cependant, � la diff�rence de l'authentification 229 basique, les donn�es associ�es � chaque utilisateur et comportant le 230 nom d'utilisateur, le domaine de protection (realm) et le mot de 231 passe doivent �tre contenues dans une cha�ne chiffr�e (Voir le 232 document <a href="http://tools.ietf.org/html/rfc2617#section-3.2.2.2">RFC 2617, 233 Section 3.2.2.2</a> pour plus de d�tails � propos du type de 234 chiffrement utilis� pour cette cha�ne).</p> 235 236 <p>A cause de la diff�rence entre les m�thodes de stockage des 237 donn�es des authentifications de type basique et digest, le passage 238 d'une m�thode d'authentification de type digest � une m�thode 239 d'authentification de type basique requiert l'attribution de 240 nouveaux 241 mots de passe � chaque utilisateur, car leur mots de passe existant 242 ne peut pas �tre extrait � partir du sch�ma de stockage utilis� 243 par les fournisseurs d'authentification de type digest.</p> 244 245 <p>Si la directive <code class="directive"><a href="#authbasicusedigestalgorithm">AuthBasicUseDigestAlgorithm</a></code> est 246 d�finie � la valeur <code>MD5</code>, le mot de passe d'un 247 utilisateur dans le cas de l'authentification basique sera v�rifi� 248 en utilisant le m�me format de chiffrement que dans le cas de 249 l'authentification de type digest. Tout d'abord, une cha�ne 250 comportant le nom d'utilisateur, le domaine de protection (realm) et 251 le mot de passe est g�n�r�e sous forme de condens� (hash) en 252 utilisant l'algorithme MD5 ; puis le nom d'utilisateur et cette 253 cha�ne chiffr�e sont transmis aux fournisseurs sp�cifi�s via la 254 directive <code class="directive"><a href="#authbasicprovider">AuthBasicProvider</a></code> comme si la 255 directive <code class="directive"><a href="/mod/mod_authn_core.html#authtype">AuthType</a></code> 256 �tait d�finie � <code>Digest</code> et si l'authentification de type 257 Digest �tait utilis�e. 258 </p> 259 260 <p>Gr�ce � cette directive, un site peut basculer d'une 261 authentification de type digest � basique sans devoir changer les 262 mots de passe des utilisateurs. </p> 263 264 <div class="note"> 265 Le processus inverse consistant � passer d'une authentification de 266 type basique � digest sans changer les mots de passe n'est en 267 g�n�ral pas possible. Les mots de passe enregistr�s dans le cas 268 d'une authentification de type basique ne pourront �tre extraits 269 et chiffr�s � nouveau selon le sch�ma de l'authentification de 270 type digest, que s'ils ont �t� stock�s en clair ou selon un sch�ma de 271 chiffrement r�versible. 272 </div> 273 274 <div class="note"> 275 Seuls les fournisseurs qui supportent l'authentification de type 276 digest pourront authentifier les utilisateurs lorsque la directive 277 <code class="directive"><a href="#authbasicusedigestalgorithm">AuthBasicUseDigestAlgorithm</a></code> 278 est d�finie � <code>MD5</code>. L'utilisation d'un autre 279 fournisseur provoquera un message d'erreur et le client se verra 280 refuser l'acc�s.</div> 281 282</div> 283</div> 284<div class="bottomlang"> 285<p><span>Langues Disponibles: </span><a href="/en/mod/mod_auth_basic.html" hreflang="en" rel="alternate" title="English"> en </a> | 286<a href="/fr/mod/mod_auth_basic.html" title="Fran�ais"> fr </a> | 287<a href="/ja/mod/mod_auth_basic.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 288<a href="/ko/mod/mod_auth_basic.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p> 289</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&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> 290<script type="text/javascript"><!--//--><![CDATA[//><!-- 291var comments_shortname = 'httpd'; 292var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_auth_basic.html'; 293(function(w, d) { 294 if (w.location.hostname.toLowerCase() == "httpd.apache.org") { 295 d.write('<div id="comments_thread"><\/div>'); 296 var s = d.createElement('script'); 297 s.type = 'text/javascript'; 298 s.async = true; 299 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; 300 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); 301 } 302 else { 303 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); 304 } 305})(window, document); 306//--><!]]></script></div><div id="footer"> 307<p class="apache">Copyright 2014 The Apache Software Foundation.<br />Autoris� sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> 308<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.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[//><!-- 309if (typeof(prettyPrint) !== 'undefined') { 310 prettyPrint(); 311} 312//--><!]]></script> 313</body></html>