mod_auth_basic.html.fr 21.4 KB
Newer Older
powelld's avatar
powelld committed
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
<!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>mod_auth_basic - Serveur Apache HTTP Version 2.4</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<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" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>

<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<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>
<p class="apache">Serveur Apache HTTP Version 2.4</p>
<img alt="" src="../images/feather.png" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
<div id="path">
<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.4</a> &gt; <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_auth_basic</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_auth_basic.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_auth_basic.html" title="Franais">&nbsp;fr&nbsp;</a> |
<a href="../ja/mod/mod_auth_basic.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="../ko/mod/mod_auth_basic.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Authentification HTTP de base</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">IdentificateurdeModule:</a></th><td>auth_basic_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">FichierSource:</a></th><td>mod_auth_basic.c</td></tr>
<tr><th><a href="module-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.1 d'Apache</td></tr></table>
<h3>Sommaire</h3>

    <p>Ce module permet d'utiliser l'authentification basique HTTP pour
    restreindre l'accs en recherchant les utilisateurs dans les
    fournisseurs d'authentification spcifis. Il est en gnral
    combin avec au moins un module d'authentification comme
    <code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code> et un module d'autorisation comme
    <code class="module"><a href="../mod/mod_authz_user.html">mod_authz_user</a></code>. L'authentification HTTP 
    base de condens (digest), quant  elle, est fournie par le module
    <code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code>. </p>
</div>
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#authbasicauthoritative">AuthBasicAuthoritative</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#authbasicfake">AuthBasicFake</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#authbasicprovider">AuthBasicProvider</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#authbasicusedigestalgorithm">AuthBasicUseDigestAlgorithm</a></li>
</ul>
<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_basic">Problmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mod_auth_basic">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><code class="directive"><a href="../mod/mod_authn_core.html#authname">AuthName</a></code></li>
<li><code class="directive"><a href="../mod/mod_authn_core.html#authtype">AuthType</a></code></li>
<li><code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code></li>
<li><a href="../howto/auth.html">Mode d'emploi de
l'authentification</a></li>
<li><a href="#comments_section">Commentaires</a></li></ul></div>

<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="authbasicauthoritative" id="authbasicauthoritative">Directive</a> <a name="AuthBasicAuthoritative" id="AuthBasicAuthoritative">AuthBasicAuthoritative</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dfinit si les processus d'autorisation et
d'authentification peuvent tre confis  des modules de plus bas
niveau</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthBasicAuthoritative On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>AuthBasicAuthoritative On</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>rpertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_basic</td></tr>
</table>
    <p>Normalement, chaque module d'autorisation numr dans la
    directive <code class="directive"><a href="#authbasicprovider">AuthBasicProvider</a></code> va tenter de
    vrifier l'utilisateur, et si ce dernier n'est trouv dans aucun des
    fournisseurs, l'accs sera refus. Dfinir explicitement la
    directive <code class="directive">AuthBasicAuthoritative</code> 
    <code>Off</code> permet de confier l'autorisation et
    l'authentification  d'autres modules non bass sur les fournisseurs
    si <strong>aucun identifiant utilisateur</strong> ou aucune
    <strong>rgle</strong> ne correspondent  l'identifiant utilisateur
    spcifi. Ceci ne peut s'avrer ncessaire que lorsque
    <code class="module"><a href="../mod/mod_auth_basic.html">mod_auth_basic</a></code> est combin avec des modules tiers
    qui n'ont pas t configurs  l'aide de la directive <code class="directive"><a href="#authbasicprovider">AuthBasicProvider</a></code>. Lorsqu'on
    utilise de tels modules, l'ordre dans lequel s'effectue le
    traitement est dfini dans le code source des modules et n'est pas
    configurable.</p>

</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="authbasicfake" id="authbasicfake">Directive</a> <a name="AuthBasicFake" id="AuthBasicFake">AuthBasicFake</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Authentification de base simule  l'aide des nom
d'utilisateur et mot de passe fournis</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthBasicFake off|nom-utilisateur [mot-de-passe]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>none</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>rpertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_basic</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible  partir de la version 2.4.5 du serveur HTTP
Apache</td></tr>
</table>
    <p>Les nom d'utilisateur et mot de passe spcifis sont rassembls
    dans un en-tte d'autorisation qui est transmis au serveur ou au
    service sous-jacent au serveur. Ces nom d'utilisateur et mot de
    passe sont interprts par l'<a href="../expr.html">interprteur
    d'expression</a>, ce qui permet de les dfinir en fonction de
    paramtres de la requte.</p>

    <p>Si aucun mot de passe n'est spcifi, la valeur par dfaut
    "password" sera utilise. Pour dsactiver l'authentification de base
    simule pour un espace d'URL, dfinissez AuthBasicFake  "off".</p>

    <p>Dans l'exemple suivant, un nom d'utilisateur et un mot de passe
    prdfinis sont transmis  un serveur d'arrire-plan :</p>

    <div class="example"><h3>Exemple de transmission d'un nom d'utilisateur et
    d'un mot de passe prdfinis</h3><pre class="prettyprint lang-config">&lt;Location "/demo"&gt;
    AuthBasicFake demo demopass
&lt;/Location&gt;</pre>
</div>

    <p>Dans l'exemple suivant, l'adresse email extraite d'un certificat
    client est transmise au serveur, tendant par l-mme la
    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
    FakeBasicAuth, le mot de passe se voit attribu le contenu fixe de
    la chane "password".</p>

    <div class="example"><h3>Exemple d'utilisation avec un certificat</h3><pre class="prettyprint lang-config">&lt;Location "/secure"&gt;
    AuthBasicFake "%{SSL_CLIENT_S_DN_Email}"
&lt;/Location&gt;</pre>
</div>

    <p>Pour complter l'exemple prcdent, il est possible de gnrer la
    valeur du mot de passe en procdant  un hashage de l'adresse email
     partir d'un mot d'une passphrase initial fixe, puis de transmettre le
    rsultat obtenu au serveur d'arrire-plan. Ceci peut s'avrer utile
    pour donner accs  des serveurs anciens qui ne supportent pas les
    certificats clients.</p>

    <div class="example"><h3>Exemple de gnration de mot de passe par hashage de
    l'adresse email</h3><pre class="prettyprint lang-config">&lt;Location "/secure"&gt;
    AuthBasicFake "%{SSL_CLIENT_S_DN_Email}" "%{sha1:passphrase-%{SSL_CLIENT_S_DN_Email}}"
&lt;/Location&gt;</pre>
</div>

    <div class="example"><h3>Dsactivation de l'authentification simule</h3><pre class="prettyprint lang-config">&lt;Location "/public"&gt;
    AuthBasicFake off
&lt;/Location&gt;</pre>
</div>


</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="authbasicprovider" id="authbasicprovider">Directive</a> <a name="AuthBasicProvider" id="AuthBasicProvider">AuthBasicProvider</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dfinit le(les) fournisseur(s) d'authentification pour
cette zone du site web</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthBasicProvider <var>nom fournisseur</var>
[<var>nom fournisseur</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>AuthBasicProvider file</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>rpertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_basic</td></tr>
</table>
    <p>La directive <code class="directive">AuthBasicProvider</code> permet de
    dfinir le fournisseur utilis pour authentifier les utilisateurs
    pour la zone du site web concerne. Le fournisseur par dfaut
    <code>file</code> est implment par le module
    <code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code>. Assurez-vous que le module
    implmentant le fournisseur choisi soit bien prsent dans le
    serveur.</p>

    <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">&lt;Location "/secure"&gt;
    AuthType basic
    AuthName "private area"
    AuthBasicProvider  dbm
    AuthDBMType        SDBM
    AuthDBMUserFile    "/www/etc/dbmpasswd"
    Require            valid-user
&lt;/Location&gt;</pre>
</div>
    <p>Les fournisseurs sont sollicits dans l'ordre jusqu' ce que l'un
    d'entre eux trouve une correspondance pour le nom d'utilisateur de
    la requte ; alors, ce dernier fournisseur sera le seul  vrifier
    le mot de passe. Un chec dans la vrification du mot de passe
    n'entrane pas le passage du contrle au fournisseur suivant.</p>

    <p>Les diffrents fournisseurs disponibles sont implments par les
    modules <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>, <code class="module"><a href="../mod/mod_authn_dbd.html">mod_authn_dbd</a></code>,
    <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>

</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="authbasicusedigestalgorithm" id="authbasicusedigestalgorithm">Directive</a> <a name="AuthBasicUseDigestAlgorithm" id="AuthBasicUseDigestAlgorithm">AuthBasicUseDigestAlgorithm</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Vrifie les mots de passe auprs des fournisseurs
d'authentification  la manire de l'authentification de type Digest.
</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AuthBasicUseDigestAlgorithm MD5|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>AuthBasicUseDigestAlgorithm Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>rpertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_auth_basic</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible  partir de la version 2.4.7 du serveur HTTP
Apache</td></tr>
</table>
    <p>Normalement, lorsqu'on utilise l'authentification basique, les
    fournisseurs spcifis via la directive <code class="directive"><a href="#authbasicprovider">AuthBasicProvider</a></code> tentent de
    contrler l'identit d'un utilisateur en recherchant dans leurs
    bases de donnes l'existence d'un couple utilisateur/mot de passe
    correspondant. Les mots de passe enregistrs sont en gnral
    chiffrs, mais ce n'est pas systmatique ; chaque fournisseur peut
    choisir son propre mode de stockage des mots de passe.</p>

    <p>Lorsqu'on utilise l'authentification de type Digest, les
    fournisseurs spcifis par la directive <code class="directive"><a href="../mod/mod_auth_digest.html#authdigestprovider">AuthDigestProvider</a></code> effectuent
    une recherche similaire dans leurs bases de
    donnes pour trouver un couple utilisateur/mot de passe
    correspondant. Cependant,  la diffrence de l'authentification
    basique, les donnes associes  chaque utilisateur et comportant le
    nom d'utilisateur, le domaine de protection (realm) et le mot de
    passe doivent tre contenues dans une chane chiffre (Voir le
    document <a href="http://tools.ietf.org/html/rfc2617#section-3.2.2.2">RFC 2617,
    Section 3.2.2.2</a> pour plus de dtails  propos du type de
    chiffrement utilis pour cette chane).</p>

    <p>A cause de la diffrence entre les mthodes de stockage des
    donnes des authentifications de type basique et digest, le passage
    d'une mthode d'authentification de type digest  une mthode
    d'authentification de type basique requiert l'attribution de
    nouveaux
    mots de passe  chaque utilisateur, car leur mots de passe existant
    ne peut pas tre extrait  partir du schma de stockage utilis
    par les fournisseurs d'authentification de type digest.</p>

    <p>Si la directive <code class="directive"><a href="#authbasicusedigestalgorithm">AuthBasicUseDigestAlgorithm</a></code> est
    dfinie  la valeur <code>MD5</code>, le mot de passe d'un
    utilisateur dans le cas de l'authentification basique sera vrifi
    en utilisant le mme format de chiffrement que dans le cas de
    l'authentification de type digest. Tout d'abord, une chane
    comportant le nom d'utilisateur, le domaine de protection (realm) et
    le mot de passe est gnre sous forme de condens (hash) en
    utilisant l'algorithme MD5 ; puis le nom d'utilisateur et cette
    chane chiffre sont transmis aux fournisseurs spcifis via la
    directive <code class="directive"><a href="#authbasicprovider">AuthBasicProvider</a></code> comme si la
    directive <code class="directive"><a href="../mod/mod_authn_core.html#authtype">AuthType</a></code>
    tait dfinie  <code>Digest</code> et si l'authentification de type
    Digest tait utilise.
    </p>

    <p>Grce  cette directive, un site peut basculer d'une
    authentification de type digest  basique sans devoir changer les
    mots de passe des utilisateurs. </p>

    <div class="note">
      Le processus inverse consistant  passer d'une authentification de
      type basique  digest sans changer les mots de passe n'est en
      gnral pas possible. Les mots de passe enregistrs dans le cas
      d'une authentification de type basique ne pourront tre extraits
      et chiffrs  nouveau selon le schma de l'authentification de
      type digest, que s'ils ont t stocks en clair ou selon un schma de
      chiffrement rversible.
    </div>

    <div class="note">
      Seuls les fournisseurs qui supportent l'authentification de type
      digest pourront authentifier les utilisateurs lorsque la directive
      <code class="directive"><a href="#authbasicusedigestalgorithm">AuthBasicUseDigestAlgorithm</a></code>
      est dfinie  <code>MD5</code>. L'utilisation d'un autre
      fournisseur provoquera un message d'erreur et le client se verra
      refuser l'accs.</div>

</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_auth_basic.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_auth_basic.html" title="Franais">&nbsp;fr&nbsp;</a> |
<a href="../ja/mod/mod_auth_basic.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="../ko/mod/mod_auth_basic.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
</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>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_auth_basic.html';
(function(w, d) {
    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
        d.write('<div id="comments_thread"><\/div>');
        var s = d.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
    }
    else { 
        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
    }
})(window, document);
//--><!]]></script></div><div id="footer">
<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>
<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[//><!--
if (typeof(prettyPrint) !== 'undefined') {
    prettyPrint();
}
//--><!]]></script>
</body></html>