1
0
mirror of https://github.com/apache/httpd.git synced 2025-07-10 08:01:00 +03:00
Files
apache/docs/manual/mod/mod_access_compat.html.fr
Lucien Gentis 45c2de30c3 Rebuild.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1741777 13f79535-47bb-0310-9956-ffa450edef68
2016-04-30 15:06:31 +00:00

522 lines
30 KiB
Plaintext
Raw Blame History

<?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_access_compat - Serveur Apache HTTP Version 2.5</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/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>
<p class="apache">Serveur Apache HTTP Version 2.5</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.5</a> &gt; <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_access_compat</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_access_compat.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_access_compat.html" title="Fran<61>ais">&nbsp;fr&nbsp;</a> |
<a href="../ja/mod/mod_access_compat.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Autorisations de groupe <20> base de nom d'h<>te (nom ou
adresse IP)</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur<75>de<64>Module:</a></th><td>access_compat_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Fichier<65>Source:</a></th><td>mod_access_compat.c</td></tr>
<tr><th><a href="module-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible dans la version 2.3 du serveur HTTP Apache
<EFBFBD> des fins de compatibilit<69>
avec les pr<70>c<EFBFBD>dentes versions d'Apache httpd 2.x. Les directives fournies par
ce module sont devenues obsol<6F>tes depuis la refonte d'authz. Voir
<code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code></td></tr></table>
<h3>Sommaire</h3>
<p>Les directives fournies par le module
<code class="module"><a href="../mod/mod_access_compat.html">mod_access_compat</a></code> s'utilisent dans les sections
<code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code>,
<code class="directive"><a href="../mod/core.html#files">&lt;Files&gt;</a></code> et
<code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code>, ainsi
que dans les fichiers <code><a href="core.html#accessfilename">.htaccess</a></code> et permettent
de contr<74>ler l'acc<63>s <20> certaines parties du serveur. On peut
contr<74>ler cet acc<63>s en fonction du nom d'h<>te du client, de son
adresse IP ou d'autres caract<63>ristiques de la requ<71>te, telles
qu'elles sont enregistr<74>es dans les <a href="../env.html">variables
d'environnement</a>. Les directives <code class="directive"><a href="#allow">Allow</a></code> et <code class="directive"><a href="#deny">Deny</a></code> permettent de sp<73>cifier
quels clients sont ou ne sont pas autoris<69>s <20> acc<63>der au serveur,
alors que la directive <code class="directive"><a href="#order">Order</a></code> d<>finit le statut
d'acc<63>s par d<>faut, et d<>termine la mani<6E>re dont les directives
<code class="directive"><a href="#allow">Allow</a></code> et
<code class="directive"><a href="#deny">Deny</a></code> interagissent
entre elles.</p>
<p>Les restrictions d'acc<63>s <20> base de nom d'h<>te et
l'authentification <20> base de mot de passe peuvent <20>tre impl<70>ment<6E>es
simultan<61>ment. Dans ce cas, on utilise la directive <code class="directive"><a href="#satisfy">Satisfy</a></code> pour d<>terminer la
mani<6E>re dont ces deux modes de restrictions interagissent.</p>
<div class="warning"><h3>Note</h3>
<p>Les directives fournies par le module
<code class="module"><a href="../mod/mod_access_compat.html">mod_access_compat</a></code> sont devenues obsol<6F>tes depuis
la refonte du module <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code>. M<>langer d'anciennes
directives comme <code class="directive"><a href="#order">Order</a></code>, <code class="directive"><a href="#allow">Allow</a></code> ou <code class="directive"><a href="#deny">Deny</a></code> avec des nouvelles comme
<code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code> est techniquement
possible mais d<>conseill<6C>. En effet, <code class="module"><a href="../mod/mod_access_compat.html">mod_access_compat</a></code> a
<20>t<EFBFBD> con<6F>u pour supporter des configurations ne contenant que des anciennes
directives afin de faciliter le passage <20> la version 2.4. Voir le document
<a href="../upgrading.html">upgrading</a> pour plus de d<>tails.
</p>
</div>
<p>En g<>n<EFBFBD>ral, les directives de restriction d'acc<63>s s'appliquent <20>
toutes les m<>thodes d'acc<63>s (<code>GET</code>, <code>PUT</code>,
<code>POST</code>, etc...). C'est d'ailleurs ce que l'on souhaite
dans la plupart des cas. Il est cependant possible de restreindre
certaines m<>thodes, alors que les autres m<>thodes ne se verront
impos<6F>e aucune restriction, en regroupant les directives <20>
l'int<6E>rieur d'une section <code class="directive"><a href="../mod/core.html#limit">&lt;Limit&gt;</a></code>.</p>
<div class="note"><h3>Fusion des sections de configuration</h3>
<p>Lorsqu'une directive fournie par ce module est utilis<69>e dans
une nouvelle section de configuration, cette derni<6E>re n'h<>rite
d'aucune directive d<>finie dans une section pr<70>c<EFBFBD>dente.</p>
</div>
</div>
<div id="quickview"><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#allow">Allow</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#deny">Deny</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#order">Order</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#satisfy">Satisfy</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_access_compat">Probl<62>mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mod_access_compat">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code></li>
<li><code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code></li>
<li><code class="module"><a href="../mod/mod_authz_core.html">mod_authz_core</a></code></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="allow" id="allow">Directive</a> <a name="Allow" id="Allow">Allow</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Sp<53>cifie quels h<>tes peuvent acc<63>der <20> une certaine zone du
serveur</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code> Allow from all|<var>h<>te</var>|env=[!]<var>variable
d'environnement</var>
[<var>h<>te</var>|env=[!]<var>variable d'environnement</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r<>pertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Limit</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_access_compat</td></tr>
</table>
<p>La directive <code class="directive">Allow</code> permet de d<>finir quels
h<>tes ont le droit d'acc<63>der <20> une certaine partie du serveur. On
peut contr<74>ler l'acc<63>s par nom d'h<>te, adresse IP, intervalle
d'adresses IP, ou toute autre caract<63>ristique de la requ<71>te client
enregistr<74>e dans les variables d'environnement.</p>
<p>Le premier argument de cette directive est toujours
<code>from</code>. Les arguments suivants peuvent prendre trois
formes diff<66>rentes. Si <code>Allow from all</code> est sp<73>cifi<66>,
tout h<>te se voit accord<72> l'acc<63>s, en tenant compte des directives
<code class="directive"><a href="#deny">Deny</a></code> et <code class="directive"><a href="#order">Order</a></code> comme d<>crit plus loin.
Pour ne permettre l'acc<63>s au serveur qu'<27> un h<>te ou un groupe
d'h<>tes particuliers, on peut sp<73>cifier un <em>nom d'h<>te</em> sous
une des formes suivantes :</p>
<dl>
<dt>Un nom de domaine (partiel)</dt>
<dd>
<pre class="prettyprint lang-config">Allow from example.org
Allow from .net example.edu</pre>
<p>Les h<>tes dont les noms correspondent ou se terminent par la
cha<68>ne sp<73>cifi<66>e ont l'autorisation d'acc<63>s. Seules les
composantes enti<74>res du nom d'h<>te doivent correspondre ; ainsi,
dans l'exemple ci-dessus, <code>foo.example.org</code>
correspondra, mais <code>fooexample.org</code> ne conviendra pas.
Avec cette configuration, Apache httpd va effectuer une double recherche
DNS sur l'adresse IP du client, sans tenir compte de la
d<>finition de la directive <code class="directive"><a href="../mod/core.html#hostnamelookups">HostnameLookups</a></code>. Tout d'abord, une
recherche DNS inverse sur l'adresse IP est effectu<74>e pour
d<>terminer le nom d'h<>te associ<63>, puis une recherche directe sur
le nom d'h<>te est effectu<74>e afin de s'assurer qu'il correspond
bien <20> l'adresse IP originale. L'acc<63>s ne sera accord<72> que si le
nom d'h<>te correspond et si les recherches DNS inverse et directe
concordent.</p></dd>
<dt>Une adresse IP compl<70>te</dt>
<dd>
<pre class="prettyprint lang-config">Allow from 10.1.2.3
Allow from 192.168.1.104 192.168.1.205</pre>
<p>L'adresse IP d'un h<>te auquel on a accord<72> l'acc<63>s</p></dd>
<dt>Une adresse IP partielle</dt>
<dd>
<pre class="prettyprint lang-config">Allow from 10.1
Allow from 10 172.20 192.168.2</pre>
<p>De un <20> trois des premiers octets d'une adresse IP, afin de
restreindre l'acc<63>s <20> un sous-r<>seau.</p></dd>
<dt>Une paire r<>seau/masque de sous-r<>seau</dt>
<dd>
<pre class="prettyprint lang-config">Allow from 10.1.0.0/255.255.0.0</pre>
<p>Un r<>seau a.b.c.d, et un masque de sous-r<>seau w.x.y.z, pour
une d<>finition plus pr<70>cise de la restriction d'acc<63>s impos<6F>e <20> un
sous-r<>seau.</p></dd>
<dt>Une sp<73>cification CIDR r<>seau/nnn</dt>
<dd>
<pre class="prettyprint lang-config">Allow from 10.1.0.0/16</pre>
<p>Identique au cas pr<70>c<EFBFBD>dent, mis <20> part que le masque est
constitu<74> des nnn bits de poids fort.</p></dd>
</dl>
<p>Notez que les trois derniers exemples d<>signent le m<>me ensemble
d'h<>tes.</p>
<p>On peut sp<73>cifier des adresses et sous-r<>seaux IPv6 de la mani<6E>re
suivante :</p>
<pre class="prettyprint lang-config">Allow from 2001:db8::a00:20ff:fea7:ccea
Allow from 2001:db8::a00:20ff:fea7:ccea/10</pre>
<p>Le troisi<73>me format d'argument de la directive
<code class="directive">Allow</code> permet de contr<74>ler l'acc<63>s au serveur
en fonction de l'existence d'une <a href="../env.html">variable d'environnement</a>. Lorsque <code>Allow
from env=<var>variable d'environnement</var></code> est sp<73>cifi<66>, la
requ<71>te est autoris<69>e si la variable d'environnement <var>variable
d'environnement</var> existe. En revanche, lorsque <code>Allow from
env=!<var>env-variable</var></code> est sp<73>cifi<66>, la
requ<71>te est autoris<69>e si la variable d'environnement <var>variable
d'environnement</var> n'existe pas. Le serveur permet de d<>finir
avec souplesse des variables d'environnement en se basant sur les
caract<63>ristiques de la requ<71>te client et en utilisant les directives
fournies par le module <code class="module"><a href="../mod/mod_setenvif.html">mod_setenvif</a></code>. Ainsi, on peut
utiliser la directive <code class="directive">Allow</code> pour permettre
l'acc<63>s en fonction de param<61>tres comme le <code>User-Agent</code>
(type de navigateur) des clients, le <code>Referer</code>, ou
d'autres champs d'en-t<>te de la requ<71>te HTTP.</p>
<pre class="prettyprint lang-config">SetEnvIf User-Agent ^KnockKnock/2\.0 let_me_in
&lt;Directory "/docroot"&gt;
Order Deny,Allow
Deny from all
Allow from env=let_me_in
&lt;/Directory&gt;</pre>
<p>Dans cet exemple, les navigateurs dont la cha<68>ne user-agent
commence par <code>KnockKnock/2.0</code> se verront accorder
l'acc<63>s, alors que tous les autres seront rejet<65>s.</p>
<div class="note"><h3>Fusion des sections de configuration</h3>
<p>Lorsqu'une directive fournie par ce module est utilis<69>e dans
une nouvelle section de configuration, cette derni<6E>re n'h<>rite
d'aucune directive d<>finie dans une section pr<70>c<EFBFBD>dente.</p>
</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="deny" id="deny">Directive</a> <a name="Deny" id="Deny">Deny</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>finit quels h<>tes ne sont pas autoris<69>s <20> acc<63>der au
serveur</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code> Deny from all|<var>h<>te</var>|env=[!]<var>variable
d'environnement</var>
[<var>h<>te</var>|env=[!]<var>variable d'environnement</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r<>pertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Limit</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_access_compat</td></tr>
</table>
<p>Cette directive permet de restreindre l'acc<63>s au serveur en
fonction du nom d'h<>te, de l'adresse IP ou de variables
d'environnement. Les arguments de la directive
<code class="directive">Deny</code> sont identiques aux arguments de la
directive <code class="directive"><a href="#allow">Allow</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="order" id="order">Directive</a> <a name="Order" id="Order">Order</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>finit le statut d'acc<63>s par d<>faut et l'ordre dans lequel
les directives <code class="directive">Allow</code> et
<code class="directive">Deny</code> sont <20>valu<6C>es.</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code> Order <var>ordre</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>Order Deny,Allow</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r<>pertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Limit</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_access_compat</td></tr>
</table>
<p>La directive <code class="directive">Order</code>, associ<63>e aux
directives <code class="directive"><a href="#allow">Allow</a></code>
et <code class="directive"><a href="#deny">Deny</a></code>,
impl<70>mente un syst<73>me de contr<74>le d'acc<63>s en trois passes. Au cours
de la premi<6D>re passe, ce sont soit toutes les directives <code class="directive"><a href="#allow">Allow</a></code>, soit toutes les
directives <code class="directive"><a href="#deny">Deny</a></code> qui sont trait<69>es, selon
la d<>finition de la directive <code class="directive"><a href="#order">Order</a></code>. Le reste des
directives (<code class="directive"><a href="#deny">Deny</a></code>
ou <code class="directive"><a href="#allow">Allow</a></code>) est
trait<69> au cours de la seconde passe. La troisi<73>me passe s'applique <20>
toutes les requ<71>tes qui ne sont concern<72>es par aucune des deux
premi<6D>res passes.</p>
<p>Notez que toutes les directives <code class="directive"><a href="#allow">Allow</a></code> et <code class="directive"><a href="#deny">Deny</a></code> sont trait<69>es, <20> la
diff<66>rence d'un pare-feu classique o<> seule la premi<6D>re r<>gle qui
correspond est utilis<69>e. La derni<6E>re directive qui correspond
s'applique ( <20> la diff<66>rence l<> encore d'un pare-feu classique). De
plus, l'ordre dans lequel les lignes apparaissent dans le fichier de
configuration n'a pas d'incidence -- toutes les lignes <code class="directive"><a href="#allow">Allow</a></code> sont consid<69>r<EFBFBD>es comme
un groupe, toutes les lignes <code class="directive"><a href="#deny">Deny</a></code> comme un autre, et le
statut par d<>faut a son existence propre.</p>
<p><em>Ordre</em> peut <20>tre :</p>
<dl>
<dt><code>Allow,Deny</code></dt>
<dd>Dans un premier temps, toutes les directives <code class="directive"><a href="#allow">Allow</a></code> sont <20>valu<6C>es ; au
moins une d'entre elles doit correspondre, sinon la requ<71>te est
rejet<65>e. Ensuite, toutes les directives <code class="directive"><a href="#deny">Deny</a></code> sont <20>valu<6C>es. Si au
moins l'une d'entre elles correspond, la requ<71>te est rejet<65>e.
Enfin, toute requ<71>te qui ne correspond <20> aucune directive
<code class="directive"><a href="#allow">Allow</a></code> ou
<code class="directive"><a href="#deny">Deny</a></code> est rejet<65>e
par d<>faut.</dd>
<dt><code>Deny,Allow</code></dt>
<dd>Dans un premier temps, toutes les directives <code class="directive"><a href="#deny">Deny</a></code> sont <20>valu<6C>es ; Si au
moins une d'entre elles correspond, la requ<71>te est rejet<65>e,
<strong><3E> moins</strong> qu'elle corresponde aussi <20> une directive
<code class="directive"><a href="#allow">Allow</a></code>. Toute
requ<71>te qui ne correspond <20> aucune directive <code class="directive"><a href="#allow">Allow</a></code> ou <code class="directive"><a href="#deny">Deny</a></code> est autoris<69>e.</dd>
<dt><code>Mutual-failure</code></dt>
<dd>Cet argument a le m<>me effet que <code>Allow,Deny</code> et
est devenu de ce fait obsol<6F>te.</dd>
</dl>
<p>Les mots-cl<63>s ne peuvent <20>tre s<>par<61>s que par des virgules ;
<em>aucun espace</em> ne doit s'intercaler entre eux.</p>
<table class="bordered">
<tr>
<th>Match</th>
<th>R<>sultat Allow,Deny</th>
<th>R<>sultat Deny,Allow</th>
</tr><tr>
<th>Correspond <20> Allow seulement</th>
<td>Requ<71>te autoris<69>e</td>
<td>Requ<71>te autoris<69>e</td>
</tr><tr>
<th>Correspond <20> Deny seulement</th>
<td>Requ<71>te rejet<65>e</td>
<td>Requ<71>te rejet<65>e</td>
</tr><tr>
<th>Aucune correspondance</th>
<td>Par d<>faut la seconde directive : rejet</td>
<td>Par d<>faut la seconde directive : autorisation</td>
</tr><tr>
<th>Correspond <20> Allow &amp; Deny</th>
<td>La derni<6E>re correspondance l'emporte : rejet</td>
<td>La derni<6E>re correspondance l'emporte : autorisation</td>
</tr>
</table>
<p>Dans cet exemple, tous les h<>tes du domaine example.org ont
l'autorisation d'acc<63>s ; tous les autres voient leur acc<63>s
refus<75>.</p>
<pre class="prettyprint lang-config">Order Deny,Allow
Deny from all
Allow from example.org</pre>
<p>Dans l'exemple suivant, tous les h<>tes du domaine example.org ont
l'autorisation d'acc<63>s, sauf ceux du sous-domaine foo.example.org qui
voient leur acc<63>s refus<75>. Tous les h<>tes qui ne sont pas dans le
domaine example.org sont rejet<65>s car le statut par d<>faut est positionn<6E>
sur <code class="directive"><a href="#deny">Deny</a></code>, et consiste donc en un
refus d'acc<63>s.</p>
<pre class="prettyprint lang-config">Order Allow,Deny
Allow from example.org
Deny from foo.example.org</pre>
<p>Par contre, si la valeur de la directive
<code class="directive">Order</code>, dans l'exemple pr<70>c<EFBFBD>dent, est
<code>Deny,Allow</code>, tout le monde a l'autorisation d'acc<63>s.
Ceci est d<> au fait que <code>Allow from example.org</code> sera
<20>valu<6C> en dernier, sans tenir compte de l'ordre r<>el dans lequel les
directives apparaissent dans le fichier de configuration, et va
l'emporter sur <code>Deny from foo.example.org</code>. Tout h<>te qui
n'est pas dans le domaine <code>example.org</code> aura aussi
l'autorisation d'acc<63>s car le statut par d<>faut est positionn<6E> sur
<code class="directive"><a href="#allow">Allow</a></code> et constitue donc une
autorisation d'acc<63>s.</p>
<p>La pr<70>sence d'une directive <code class="directive">Order</code> peut
affecter le contr<74>le d'acc<63>s <20> une partie du serveur m<>me en
l'abscence de directives <code class="directive"><a href="#allow">Allow</a></code> et <code class="directive"><a href="#deny">Deny</a></code> associ<63>es, <20> cause de
son influence sur le statut par d<>faut. Par exemple,</p>
<pre class="prettyprint lang-config">&lt;Directory "/www"&gt;
Order Allow,Deny
&lt;/Directory&gt;</pre>
<p>va interdire tout acc<63>s au r<>pertoire <code>/www</code> <20> cause
du statut d'acc<63>s par d<>faut qui est d<>fini <20> <code class="directive"><a href="#deny">Deny</a></code>.</p>
<p>La directive <code class="directive">Order</code> ne contr<74>le l'ordre
dans lequel sont trait<69>es les directives d'acc<63>s qu'au cours de
chaque phase du traitement de la configuration du serveur. Ceci
implique, par exemple, qu'une directive <code class="directive"><a href="#allow">Allow</a></code> ou <code class="directive"><a href="#deny">Deny</a></code> situ<74>e dans une section
<code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code> sera
toujours <20>valu<6C>e apr<70>s une directive <code class="directive"><a href="#allow">Allow</a></code> ou <code class="directive"><a href="#deny">Deny</a></code> situ<74>e dans une section
<code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code> ou un
fichier <code>.htaccess</code>, sans tenir compte de la
d<>finition de la directive <code class="directive">Order</code>. Pour plus
de d<>tails <20> propos de la fusion des sections de configuration, voir
le document <a href="../sections.html">Comment fonctionnent les sections Directory,
Location et Files</a>.</p>
<div class="note"><h3>Fusion des sections de configuration</h3>
<p>Lorsqu'une directive fournie par ce module est utilis<69>e dans
une nouvelle section de configuration, cette derni<6E>re n'h<>rite
d'aucune directive d<>finie dans une section pr<70>c<EFBFBD>dente.</p>
</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="satisfy" id="satisfy">Directive</a> <a name="Satisfy" id="Satisfy">Satisfy</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Interaction entre le contr<74>le d'acc<63>s en fonction de l'h<>te
et l'authentification utilisateur</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Satisfy Any|All</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>Satisfy All</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r<>pertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_access_compat</td></tr>
</table>
<p>Politique d'acc<63>s dans le cas o<> on utilise <20> la fois <code class="directive"><a href="#allow">Allow</a></code> et <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code>. L'argument est soit
<code>All</code>, soit <code>Any</code>. L'utilisation de cette
directive n'a de sens que si l'acc<63>s <20> une zone particuli<6C>re du
serveur est restreinte par utilisateur/mot de passe et en fonction
de l'adresse IP de l'h<>te client. Dans ce cas, par
d<>faut (<code>All</code>), le client doit satisfaire <20> la
restriction d'adresse, <em>et</em> fournir un couple
utilisateur/mot de passe valide. Avec l'argument <code>Any</code>,
le client se verra accorder l'acc<63>s s'il satisfait <20> la restriction
d'adresse ou fournit un couple utilisateur/mot de passe valide. On
peut utiliser cette derni<6E>re d<>finition pour restreindre l'acc<63>s <20>
une zone par mot de passe, mais accorder l'acc<63>s aux clients
poss<73>dant certaines adresses IP sans qu'ils aient <20> fournir de mot
de passe.</p>
<p>Par exemple, si vous souhaitez que les utilisateurs de votre
r<>seau acc<63>dent <20> une zone de votre site web sans restriction, mais
que l'acc<63>s <20> cette zone n<>cessite un mot de passe pour les autres
utilisateurs, vous pouvez utiliser une configuration du style :</p>
<pre class="prettyprint lang-config">Require valid-user
Allow from 192.168.1
Satisfy Any</pre>
<p>
Une autre utilisation fr<66>quente de la directive
<code class="directive">Satisfy</code> est l'all<6C>gement des restrictions
d'acc<63>s <20> un sous-r<>pertoire par rapport aux restrictions d'acc<63>s au
r<>pertoire parent :
</p>
<pre class="prettyprint lang-config">&lt;Directory "/var/www/private"&gt;
Require valid-user
&lt;/Directory&gt;
&lt;Directory "/var/www/private/public"&gt;
Allow from all
Satisfy Any
&lt;/Directory&gt;</pre>
<p>Dans l'exemple ci-dessus, l'acc<63>s au r<>pertoire
<code>/var/www/private</code> n<>cessitera une authentification,
alors que l'acc<63>s au r<>pertoire <code>/var/www/private/public</code>
sera accord<72> sans restriction.</p>
<p>Depuis la version 2.0.51, les directives
<code class="directive">Satisfy</code> peuvent <20>tre restreintes <20> certaines
m<>thodes particuli<6C>res <20> l'aide des sections <code class="directive"><a href="../mod/core.html#limit">&lt;Limit&gt;</a></code> et <code class="directive"><a href="../mod/core.html#limitexcept">&lt;LimitExcept&gt;</a></code>.</p>
<div class="note"><h3>Fusion des sections de configuration</h3>
<p>Lorsqu'une directive fournie par ce module est utilis<69>e dans
une nouvelle section de configuration, cette derni<6E>re n'h<>rite
d'aucune directive d<>finie dans une section pr<70>c<EFBFBD>dente.</p>
</div>
<h3>Voir aussi</h3>
<ul>
<li><code class="directive"><a href="#allow">Allow</a></code></li>
<li><code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code></li>
</ul>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_access_compat.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_access_compat.html" title="Fran<61>ais">&nbsp;fr&nbsp;</a> |
<a href="../ja/mod/mod_access_compat.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&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/trunk/mod/mod_access_compat.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 2016 The Apache Software Foundation.<br />Autoris<69> 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/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[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>