]> granicus.if.org Git - apache/blob - docs/manual/howto/access.html.fr
1e1d4791e49aa60e111204a8c38498874226ae89
[apache] / docs / manual / howto / access.html.fr
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
4 <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
5 <!--
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7               This file is generated from xml source: DO NOT EDIT
8         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
9       -->
10 <title>Contrôle d'accès - Serveur Apache HTTP Version 2.5</title>
11 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
14 <script src="../style/scripts/prettify.min.js" type="text/javascript">
15 </script>
16
17 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
18 <body id="manual-page"><div id="page-header">
19 <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>
20 <p class="apache">Serveur Apache HTTP Version 2.5</p>
21 <img alt="" src="../images/feather.png" /></div>
22 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
23 <div id="path">
24 <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="./">How-To / Tutoriels</a></div><div id="page-content"><div id="preamble"><h1>Contrôle d'accès</h1>
25 <div class="toplang">
26 <p><span>Langues Disponibles: </span><a href="../en/howto/access.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
27 <a href="../es/howto/access.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
28 <a href="../fr/howto/access.html" title="Français">&nbsp;fr&nbsp;</a></p>
29 </div>
30
31     <p>Le contrôle d'accès fait référence à tout concept de contrôle
32     d'accès à une ressource quelconque. Il est distinct du processus d'<a href="auth.html">authentification et d'autorisation</a>.</p>
33 </div>
34 <div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#related">Modules et directives concernés</a></li>
35 <li><img alt="" src="../images/down.gif" /> <a href="#host">Contrôle d'accès en fonction de l'hôte du
36 client</a></li>
37 <li><img alt="" src="../images/down.gif" /> <a href="#env">Contrôle d'accès en fonction de variables
38 arbitraires</a></li>
39 <li><img alt="" src="../images/down.gif" /> <a href="#rewrite">Utilisation de mod_rewrite pour le contrôle
40 d'accès</a></li>
41 <li><img alt="" src="../images/down.gif" /> <a href="#moreinformation">Informations complémentaires</a></li>
42 </ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
43 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
44 <div class="section">
45 <h2><a name="related" id="related">Modules et directives concernés</a></h2>
46
47     <p>Plusieurs modules peuvent intervenir dans le contrôle d'accès.
48     Les plus importants sont <code class="module"><a href="../mod/mod_authz_core.html">mod_authz_core</a></code> et
49     <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code>. Ce document également aussi comment
50     utiliser <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> pour le contrôle
51     d'accès.</p>
52
53 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
54 <div class="section">
55 <h2><a name="host" id="host">Contrôle d'accès en fonction de l'hôte du
56 client</a></h2>
57     <p>
58     Si vous souhaitez restreindre l'accès à certaines parties de votre
59     site web en fonction de l'adresse de l'hôte de vos visiteurs, le
60     plus simple pour y parvenir consiste à utiliser le module
61     <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code>.
62     </p>
63
64     <p>La directive <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code> permet d'accorder ou
65     d'interdire l'accès à certaines ressources de différentes manières.
66     Ces critères d'accès, en conjonction avec les directives <code class="directive"><a href="../mod/mod_authz_core.html#requireall">RequireAll</a></code>, <code class="directive"><a href="../mod/mod_authz_core.html#requireany">RequireAny</a></code>, et <code class="directive"><a href="../mod/mod_authz_core.html#requirenone">RequireNone</a></code>, peuvent être
67     combinés d'une manière suffisamment complexe pour
68     satisfaire votre politique de contrôle d'accès.</p>
69
70     <div class="warning"><p>
71     Les directives <code class="directive"><a href="../mod/mod_access_compat.html#allow">Allow</a></code>, <code class="directive"><a href="../mod/mod_access_compat.html#deny">Deny</a></code>, et <code class="directive"><a href="../mod/mod_access_compat.html#order">Order</a></code> fournies par le module
72     <code class="module"><a href="../mod/mod_access_compat.html">mod_access_compat</a></code> sont obsolètes, et sont appelées à
73     disparaître dans les versions futures. Il est donc déconseillé de
74     les utiliser, et de se fier aux tutoriels qui recommandent leur
75     utilisation.
76     </p></div>
77
78     <p>Les directives Require s'utilisent comme suit :</p>
79
80     <pre class="prettyprint lang-config">Require host <var>address</var>
81 Require ip <var>ip.address</var>
82     </pre>
83
84
85     <p>Dans la première forme, <var>nom-hôte</var> est un nom de domaine
86     pleinement qualifié (fqdn), ou un nom de domaine partiel ; vous
87     pouvez spécifier plusieurs noms de domaines, si vous le désirez.</p>
88
89     <p>Dans la seconde forme, <var>adresse-ip</var> est une adresse IP
90     complète, une adresse IP partielle, une paire réseau/masque de
91     sous-réseau ou une spécification CIDR de la forme réseau/nnn. Il est
92     possible de spécifier des adresses IPv4 ou IPv6.</p>
93
94     <p>Voir <a href="../mod/mod_authz_host.html#requiredirectives">la
95     documentation de mod_authz_host</a> pour d'autres exemples de cette
96     syntaxe.</p>
97
98     <p>Vous pouvez insérer le mot-clé <code>not</code> pour inverser un
99     critère particulier. Notez que le mot <code>not</code> réalise la
100     négation sur la valeur, et ne peut pas être utilisé seul pour autoriser
101     ou interdire une requête, car <em>non vrai</em> ne
102     veut pas ici forcément dire <em>faux</em>. Ainsi, pour interdire la
103     visite d'une page à l'aide d'une négation, le bloc doit contenir un
104     élément, qui sera évalué à l'une des valeurs vrai ou faux.
105     Par exemple, si quelqu'un est en train de
106     spamer votre forum, vous pouvez ajouter cette ligne pour lui refuser
107     l'accès :</p>
108
109     <pre class="prettyprint lang-config">&lt;RequireAll&gt;
110     Require all granted
111     Require not ip 10.252.46.165
112 &lt;/RequireAll&gt;</pre>
113
114
115     <p>Les visiteurs possédant cette adresse (<code>10.252.46.165</code>) ne pourront pas voir le
116     contenu concerné par cette directive. Si vous voulez interdir
117     l'accès à une machine en fonction de son nom, vous pouvez ajouter
118     ceci :</p>
119
120     <pre class="prettyprint lang-config">Require not host <var>host.example.com</var></pre>
121
122
123     <p>Et si vous voulez interdire l'accès à un domaine particulier,
124     vous pouvez spécifier des adresses IP partielles ou des noms de
125     domaine, comme ceci :</p>
126
127     <pre class="prettyprint lang-config">Require not ip 192.168.205
128 Require not host phishers.example.com moreidiots.example
129 Require not host gov</pre>
130
131
132     <p>Les directives <code class="directive"><a href="../mod/mod_authz_core.html#requireall">RequireAll</a></code>, <code class="directive"><a href="../mod/mod_authz_core.html#requireany">RequireAny</a></code>, et <code class="directive"><a href="../mod/mod_authz_core.html#requirenone">RequireNone</a></code> ouvrent le champ à des
133     critères d'accès plus complexes.</p>
134
135 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
136 <div class="section">
137 <h2><a name="env" id="env">Contrôle d'accès en fonction de variables
138 arbitraires</a></h2>
139
140     <p>Vous pouvez accorder ou refuser l'accès en fonction de variables
141     d'environnement arbitraires ou de valeurs d'en-têtes de la requête
142     en utilisant la directive <code class="directive"><a href="../mod/core.html#if">&lt;If&gt;</a></code>. Par exemple, pour interdire l'accès en
143     fonction du user-agent (le type de navigateur), vous pouvez
144     spécifier ceci :</p>
145
146     <pre class="prettyprint lang-config">&lt;If "%{HTTP_USER_AGENT} == 'BadBot'"&gt;
147     Require all denied
148 &lt;/If&gt;</pre>
149
150
151     <p>En utilisant la syntaxe <code>expr</code> de la directive
152     <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code>, l'exemple
153     précédent peut aussi s'écrire :</p>
154
155
156     <pre class="prettyprint lang-config">Require expr %{HTTP_USER_AGENT} != 'BadBot'</pre>
157
158
159     <div class="note"><h3>Avertissement :</h3>
160     <p>Contrôler l'accès en fonction de l'en-tête
161     <code>User-Agent</code> n'est pas une technique fiable, car cet
162     en-tête peut être défini à une valeur quelconque, selon le bon
163     vouloir de l'utilisateur.</p>
164     </div>
165
166     <p>Voir le document à propos des <a href="../expr.html">expressions</a> pour une description plus
167     approfondie des syntaxes d'expressions et des variables disponibles.</p>
168
169 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
170 <div class="section">
171 <h2><a name="rewrite" id="rewrite">Utilisation de mod_rewrite pour le contrôle
172 d'accès</a></h2>
173
174     <p>Le drapeau <code>[F]</code> de la directive <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> permet d'envoyer une
175     réponse de type 403 Forbidden. Il vous permet donc d'interdire
176     l'accès à une ressource en fonction d'un critère arbitraire.</p>
177
178     <p>Par exemple, pour bloquer l'accès à une ressources entre 20h et
179     7h du matin, vous pouvez utiliser <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> :</p>
180
181     <pre class="prettyprint lang-config">RewriteEngine On
182 RewriteCond "%{TIME_HOUR}" "&gt;=20" [OR]
183 RewriteCond "%{TIME_HOUR}" "&lt;07"
184 RewriteRule "^/fridge" "-" [F]</pre>
185
186
187     <p>Toute requête arrivant après 20h ou avant 7h du matin provoquera
188     l'envoi d'une réponse de type 403 Forbidden. Vous pouvez utiliser
189     cette technique pour vérifier toutes sortes de critères. En outre,
190     si vous le préférez, vous pouvez rediriger ou réécrire la requête.</p>
191
192     <p>Notez que la directive <code class="directive"><a href="../mod/core.html#if">&lt;If&gt;</a></code>, ajoutée à partir de la version 2.4,
193     permet de remplacer le module <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> dans de
194     nombreuses situations où il était traditionnellement utilisé, et
195     il sera probablement préférable pour vous de tenter de l'utiliser
196     avant de vous tourner vers mod_rewrite.</p>
197
198 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
199 <div class="section">
200 <h2><a name="moreinformation" id="moreinformation">Informations complémentaires</a></h2>
201
202     <p>Le <a href="../expr.html">moteur d'expressions</a> vous fournit
203     une grande puissance d'action en fonction de variables du serveur
204     arbitraires, et il vous est conseillé de consulter le document
205     correspondant pour plus de détails.</p>
206
207     <p>De même, vous devez lire la documentation du module
208     <code class="module"><a href="../mod/mod_authz_core.html">mod_authz_core</a></code> pour des exemples de combinaison de
209     critères d'accès multiples, et en particulier la manière dont ces
210     derniers interagissent.</p>
211
212     <p>Voir aussi le How-To <a href="auth.html">Authentification and
213     autorisation</a>.</p>
214 </div></div>
215 <div class="bottomlang">
216 <p><span>Langues Disponibles: </span><a href="../en/howto/access.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
217 <a href="../es/howto/access.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
218 <a href="../fr/howto/access.html" title="Français">&nbsp;fr&nbsp;</a></p>
219 </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>
220 <script type="text/javascript"><!--//--><![CDATA[//><!--
221 var comments_shortname = 'httpd';
222 var comments_identifier = 'http://httpd.apache.org/docs/trunk/howto/access.html';
223 (function(w, d) {
224     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
225         d.write('<div id="comments_thread"><\/div>');
226         var s = d.createElement('script');
227         s.type = 'text/javascript';
228         s.async = true;
229         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
230         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
231     }
232     else {
233         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
234     }
235 })(window, document);
236 //--><!]]></script></div><div id="footer">
237 <p class="apache">Copyright 2018 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
238 <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[//><!--
239 if (typeof(prettyPrint) !== 'undefined') {
240     prettyPrint();
241 }
242 //--><!]]></script>
243 </body></html>