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_privileges - Serveur HTTP Apache Version 2.4</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/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> 21<p class="apache">Serveur HTTP Apache Version 2.4</p> 22<img alt="" src="../images/feather.png" /></div> 23<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div> 24<div id="path"> 25<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> 26<div id="page-content"> 27<div id="preamble"><h1>Module Apache mod_privileges</h1> 28<div class="toplang"> 29<p><span>Langues Disponibles: </span><a href="../en/mod/mod_privileges.html" hreflang="en" rel="alternate" title="English"> en </a> | 30<a href="../fr/mod/mod_privileges.html" title="Français"> fr </a></p> 31</div> 32<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Support des privilèges de Solaris et de l'exécution des 33serveurs virtuels sous différents identifiants 34utilisateurs.</td></tr> 35<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr> 36<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>privileges_module</td></tr> 37<tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_privileges.c</td></tr> 38<tr><th><a href="module-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3 d'Apache sur les 39plates-formes Solaris 10 et OpenSolaris</td></tr></table> 40<h3>Sommaire</h3> 41 42<p>Ce module permet l'exécution de différents serveurs virtuels sous 43différents identifiants Unix <var>User</var> et <var>Group</var>, 44et avec différents <a href="http://sosc-dr.sun.com/bigadmin/features/articles/least_privilege.jsp">Privilèges 45Solaris</a>. En particulier, il apporte au problème de 46séparation des privilèges entre les différents serveurs virtuels la 47solution que devait apporter le module MPM abandonné perchild. Il 48apporte aussi d'autres améliorations en matière de sécurité.</p> 49 50<p>À la différence de perchild, <code class="module"><a href="../mod/mod_privileges.html">mod_privileges</a></code> n'est 51pas un module MPM. Il travaille <em>au sein</em> d'un modèle de 52traitement pour définir les privilèges et les User/Group <em>pour chaque 53requête</em> dans un même processus. Il n'est donc pas compatible avec 54les MPM threadés, et refusera de s'exécuter en cas d'utilisation d'un de 55ces derniers.</p> 56 57<p><code class="module"><a href="../mod/mod_privileges.html">mod_privileges</a></code> traite des problèmes de sécurité 58similaires à ceux de <a href="../suexec.html">suexec</a> ; mais à la 59différence de ce dernier, il ne s'applique pas seulement aux programmes 60CGI, mais à l'ensemble du cycle de traitement d'une requête, y compris 61les applications in-process et les sous-processus. Il convient 62particulièrement à l'exécution des applications PHP sous 63<strong>mod_php</strong>, qui est lui-même incompatible avec les modules 64MPM threadés. Il est également bien adapté aux autres applications de type 65script in-process comme <strong>mod_perl</strong>, 66<strong>mod_python</strong>, et <strong>mod_ruby</strong>, ainsi qu'aux 67applications en langage C telles que les modules Apache pour lesquels la 68séparation des privilèges constitue un problème.</p> 69 70</div> 71<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>Sujets</h3> 72<ul id="topics"> 73<li><img alt="" src="../images/down.gif" /> <a href="#security">Considérations à propos de sécurité</a></li> 74</ul><h3 class="directives">Directives</h3> 75<ul id="toc"> 76<li><img alt="" src="../images/down.gif" /> <a href="#dtraceprivileges">DTracePrivileges</a></li> 77<li><img alt="" src="../images/down.gif" /> <a href="#privilegesmode">PrivilegesMode</a></li> 78<li><img alt="" src="../images/down.gif" /> <a href="#vhostcgimode">VHostCGIMode</a></li> 79<li><img alt="" src="../images/down.gif" /> <a href="#vhostcgiprivs">VHostCGIPrivs</a></li> 80<li><img alt="" src="../images/down.gif" /> <a href="#vhostgroup">VHostGroup</a></li> 81<li><img alt="" src="../images/down.gif" /> <a href="#vhostprivs">VHostPrivs</a></li> 82<li><img alt="" src="../images/down.gif" /> <a href="#vhostsecure">VHostSecure</a></li> 83<li><img alt="" src="../images/down.gif" /> <a href="#vhostuser">VHostUser</a></li> 84</ul> 85<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__&list_id=144532&product=Apache%20httpd-2&query_format=specific&order=changeddate%20DESC%2Cpriority%2Cbug_severity&component=mod_privileges">Problèmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_privileges">Signaler un bug</a></li></ul><h3>Voir aussi</h3> 86<ul class="seealso"> 87<li><a href="#comments_section">Commentaires</a></li></ul></div> 88<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> 89<div class="section"> 90<h2><a name="security" id="security">Considérations à propos de sécurité</a></h2> 91 92<p><code class="module"><a href="../mod/mod_privileges.html">mod_privileges</a></code> introduit de nouveaux problèmes de 93sécurité dans les situations où du <strong>code non sûr</strong> peut 94s'exécuter <strong>à l'intérieur du processus du serveur web</strong>. 95Ceci s'applique aux modules non sûrs, et aux scripts s'exécutant sous 96des modules comme mod_php ou mod_perl. Les scripts s'exécutant en 97externe (comme par exemple les scripts CGI ou ceux s'exécutant sur un 98serveur d'applications derrière mod_proxy ou mod_jk) ne sont pas 99concernés.</p> 100 101<p>Les principaux problèmes de sécurité que l'on rencontre avec 102mod_privileges sont :</p> 103 104 105<ul><li>L'exécution sous un utilisateur système pose les mêmes problèmes 106de sécurité que mod_suexec, et pratiquement les mêmes que cgiwrap et 107suphp.</li> 108<li>Une extension utilisateur (module ou script) malveillante, écrite en connaissant les mécanismes 109utilisés par <strong>mod_privileges</strong>, 110pourrait élever ses privilèges à tout niveau 111accessible au processus httpd dans tout serveur virtuel. Ceci introduit 112de nouveaux risques si (et seulement si) mod_privileges est compilé avec 113l'option <var>BIG_SECURITY_HOLE</var>.</li> 114<li>Une extension utilisateur (module ou script) malveillante, écrite en connaissant les mécanismes 115utilisés par <strong>mod_privileges</strong>, 116pourrait élever ses privilèges pour s'attribuer 117l'identifiant utilisateur d'un autre utilisateur (et/ou groupe) 118système.</li> 119</ul> 120 121<p>La directive <code class="directive">PrivilegesMode</code> vous permet de 122sélectionner soit le mode <var>FAST</var>, soit le mode 123<var>SECURE</var>. Vous pouvez panacher les modes en utilisant par 124exemple le mode <var>FAST</var> pour les utilisateurs de confiance et 125les chemins contenant du code entièrement audité, tout en imposant le 126mode <var>SECURE</var> où un utilisateur non sûr a la possibilité 127d'introduire du code.</p> 128<p>Avant de décrire les modes, il nous faut présenter les cas 129d'utilisation de la cible : "Benign" ou "Hostile". Dans une situation 130"Benign", vous voulez séparer les utilisateurs pour leur confort, et les 131protéger, ainsi que le serveur, contre les risques induits par les 132erreurs involontaires. Dans une situation "Hostile" - par exemple 133l'hébergement d'un site commercial - il se peut que des utilisateurs 134attaquent délibérément le serveur ou s'attaquent entre eux.</p> 135<dl> 136<dt>Mode FAST</dt> 137<dd>En mode <var>FAST</var>, les requêtes sont traitées "in-process" 138avec les uid/gid et privilèges sélectionnés, si bien que la 139surcharge est négligeable. Ceci convient aux situations "Benign", mais 140n'est pas sécurisé contre un attaquant augmentant ses privilèges avec un 141module ou script "in-process".</dd> 142<dt>Mode SECURE</dt> 143<dd>Une requête en mode <var>SECURE</var> génère un sous-processus qui 144supprime les privilèges. Ce comportement est très similaire à 145l'exécution d'un programme CGI avec suexec, mais il reste valable tout 146au long du cycle de traitement de la requête, avec en plus l'avantage 147d'un contrôle précis des privilèges.</dd> 148</dl> 149<p>Vous pouvez sélectionner différents 150<code class="directive">PrivilegesMode</code>s pour chaque serveur virtuel, et 151même dans un contexte de répertoire à l'intérieur d'un serveur virtuel. 152Le mode <var>FAST</var> convient lorsque les utilisateurs sont sûrs 153et/ou n'ont pas le privilège de charger du code "in-process". Le mode 154<var>SECURE</var> convient dans les cas où du code non sûr peut 155s'exécuter "in-process". Cependant, même en mode <var>SECURE</var>, il 156n'y a pas de protection contre un utilisateur malveillant qui a la 157possibilité d'introduire du code supportant les privilèges <em>avant le 158début du cycle de traitement de la requête.</em></p> 159 160</div> 161<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> 162<div class="directive-section"><h2><a name="dtraceprivileges" id="dtraceprivileges">Directive</a> <a name="DTracePrivileges" id="DTracePrivileges">DTracePrivileges</a></h2> 163<table class="directive"> 164<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Détermine si les privilèges requis par dtrace sont 165activés.</td></tr> 166<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>DTracePrivileges On|Off</code></td></tr> 167<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>DTracePrivileges Off</code></td></tr> 168<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale</td></tr> 169<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr> 170<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_privileges</td></tr> 171<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>>Disponible sous Solaris 10 et OpenSolaris avec les 172modules MPM non-threadés (<code class="module"><a href="../mod/prefork.html">prefork</a></code> ou MPM 173personnalisé).</td></tr> 174</table> 175 <p>Cette directive qui s'applique à l'ensemble du serveur permet de 176 déterminer si Apache s'exécutera avec les <a href="http://sosc-dr.sun.com/bigadmin/features/articles/least_privilege.jsp">privilèges</a> requis pour exécuter <a href="http://sosc-dr.sun.com/bigadmin/content/dtrace/">dtrace</a>. 177 Notez que la définition <var>DTracePrivileges On</var> n'activera 178 pas à elle-seule DTrace, mais que <var>DTracePrivileges Off</var> 179 l'empêchera de fonctionner.</p> 180 181</div> 182<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> 183<div class="directive-section"><h2><a name="privilegesmode" id="privilegesmode">Directive</a> <a name="PrivilegesMode" id="PrivilegesMode">PrivilegesMode</a></h2> 184<table class="directive"> 185<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fait un compromis entre d'une part l'efficacité et la 186vitesse de traitement et d'autre part la sécurité à l'encontre des codes 187malicieux supportant les privilèges.</td></tr> 188<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>PrivilegesMode FAST|SECURE|SELECTIVE</code></td></tr> 189<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>PrivilegesMode FAST</code></td></tr> 190<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel, répertoire</td></tr> 191<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr> 192<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_privileges</td></tr> 193<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible sous Solaris 10 et OpenSolaris avec des 194modules MPMs non threadés (comme <code class="module"><a href="../mod/prefork.html">prefork</a></code> ou un module 195personnalisé).</td></tr> 196</table><p>Cette directive permet de faire un compromis entre les 197performances et la sécurité à l'encontre des codes malicieux supportant 198les privilèges. En mode <var>SECURE</var>, chaque requête est traitée 199dans un sous-processus sécurisé, ce qui induit une dégradation sensible 200des performances. En mode <var>FAST</var>, le serveur n'est pas protégé 201contre l'augmentation de privilège comme décrit plus haut.</p> 202<p>Cette directive est sensiblement différente selon qu'elle se trouve 203dans une section <code><Directory></code> (ou Location/Files/If) 204ou au niveau global ou dans un <code><VirtualHost></code>.</p> 205<p>Au niveau global, elle définit un comportement par défaut dont 206hériteront les serveurs virtuels. Dans un serveur virtuel, les modes 207FAST ou SECURE agissent sur l'ensemble de la requête HTTP, et toute 208définition de ces modes dans une section <code><Directory></code> 209sera <strong>ignorée</strong>. Le pseudo-mode SELECTIVE confie le choix 210du mode FAST ou SECURE aux directives contenues dans une 211section<code><Directory></code>.</p> 212<p>Dans une section <code><Directory></code>, elle ne s'applique 213que lorsque le mode SELECTIVE a été défini pour le serveur virtuel. 214Seuls FAST ou SECURE peuvent être définis dans ce contexte (SELECTIVE 215n'aurait pas de sens).</p> 216<div class="warning"><h3>Avertissement</h3> 217 Lorsque le mode SELECTIVE a été défini pour un serveur virtuel, 218 l'activation des privilèges doit être reportée <em>après</em> 219 la détermination, par la phase de comparaison du traitement de 220 la requête, du contexte <code><Directory></code> qui 221 s'applique à la requête. Ceci peut donner à un attaquant 222 l'opportunité d'introduire du code via une directive <code class="directive"><a href="../mod/mod_rewrite.html#rewritemap">RewriteMap</a></code> s'exécutant au 223 niveau global ou d'un serveur virtuel <em>avant</em> que les 224 privilèges n'aient été supprimés et l'uid/gid défini. 225</div> 226 227</div> 228<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> 229<div class="directive-section"><h2><a name="vhostcgimode" id="vhostcgimode">Directive</a> <a name="VHostCGIMode" id="VHostCGIMode">VHostCGIMode</a></h2> 230<table class="directive"> 231<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Détermine si le serveur virtuel peut exécuter des 232sous-processus, et définit les privilèges disponibles pour ces 233dernier.</td></tr> 234<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>VHostCGIMode On|Off|Secure</code></td></tr> 235<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>VHostCGIMode On</code></td></tr> 236<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>serveur virtuel</td></tr> 237<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr> 238<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_privileges</td></tr> 239<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible sous Solaris 10 et OpenSolaris avec les 240modules MPM non-threadés (<code class="module"><a href="../mod/prefork.html">prefork</a></code> ou MPM 241personnalisé).</td></tr> 242</table> 243 <p>Détermine si le serveur virtuel est autorisé à exécuter fork et 244 exec, et définit les <a href="http://sosc-dr.sun.com/bigadmin/features/articles/least_privilege.jsp">privilèges</a> requis pour exécuter des sous-processus. Si cette 245 directive est définie à <var>Off</var> le serveur virtuel ne 246 disposera d'aucun privilège et ne pourra exécuter ni des programmes 247 ou scripts CGI classiques via le module traditionnel 248 <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>, ni des programmes externes similaires tels 249 que ceux créés via le module <code class="module"><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code> ou les 250 programmes de réécriture externes utilisés par la directive 251 <code class="directive"><a href="../mod/mod_rewrite.html#rewritemap">RewriteMap</a></code>. Notez que 252 ceci n'empêche pas l'exécution de programmes CGI via d'autres 253 processus et sous d'autres modèles de sécurité comme <a href="https://httpd.apache.org/mod_fcgid/">mod_fcgid</a>, ce qui est la 254 solution recommandée sous Solaris.</p> 255 <p>Si cette directive est définie à <var>On</var> ou 256 <var>Secure</var>, le serveur virtuel pourra exécuter les scripts et 257 programmes externes cités ci-dessus. Définir la directive 258 <code class="directive">VHostCGIMode</code> à <var>Secure</var> a pour effet 259 supplémentaire de n'accorder aucun privilège aux sous-processus, 260 comme décrit dans la directive 261 <code class="directive">VHostSecure</code>.</p> 262 263</div> 264<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> 265<div class="directive-section"><h2><a name="vhostcgiprivs" id="vhostcgiprivs">Directive</a> <a name="VHostCGIPrivs" id="VHostCGIPrivs">VHostCGIPrivs</a></h2> 266<table class="directive"> 267<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Assigne des privilèges au choix aux sous-processus créés 268par un serveur virtuel.</td></tr> 269<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>VHostCGIPrivs [+-]?<var>privilege-name</var> [[+-]?privilege-name] ...</code></td></tr> 270<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Aucun</code></td></tr> 271<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>serveur virtuel</td></tr> 272<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr> 273<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_privileges</td></tr> 274<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible sous Solaris 10 et OpenSolaris avec les 275modules MPM non-threadés (<code class="module"><a href="../mod/prefork.html">prefork</a></code> ou MPM 276personnalisé) et lorsque <code class="module"><a href="../mod/mod_privileges.html">mod_privileges</a></code> est construit 277avec l'option de compilation 278<var>BIG_SECURITY_HOLE</var>.</td></tr> 279</table> 280 <p>La directive <code class="directive">VHostCGIPrivs</code> permet 281 d'assigner des <a href="http://sosc-dr.sun.com/bigadmin/features/articles/least_privilege.jsp">privilèges</a> au choix aux sous-processus créés par un serveur 282 virtuel, comme décrit dans la directive 283 <code class="directive">VHostCGIMode</code>. Chaque 284 <var>privilege-name</var> correspond à un privilège Solaris tel que 285 <var>file_setid</var> ou <var>sys_nfs</var>.</p> 286 287 <p><var>privilege-name</var> peut être éventuellement préfixé par + 288 ou -, ce qui va respectivement accorder ou refuser le privilège. Si 289 <var>nom-privilège</var> est spécifié sans + ni -, tous les autres 290 privilèges préalablement assignés au serveur virtuel seront refusés. 291 Cette directive permet de construire aisément votre propre jeu de 292 privilèges en annulant tout réglage par défaut.</p> 293 294 <div class="warning"><h3>Sécurité</h3> 295 <p>L'utilisation de cette directive peut ouvrir d'immenses trous de 296 sécurité dans les sous-processus Apache, jusqu'à leur exécution avec les 297 droits de root. Ne l'utilisez que si vous êtes absolument sûr de 298 comprendre ce que vous faites !</p></div> 299 300</div> 301<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> 302<div class="directive-section"><h2><a name="vhostgroup" id="vhostgroup">Directive</a> <a name="VHostGroup" id="VHostGroup">VHostGroup</a></h2> 303<table class="directive"> 304<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit l'identifiant du groupe sous lequel s'exécute un 305serveur virtuel.</td></tr> 306<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>VHostGroup <var>identifiant-groupe-unix</var></code></td></tr> 307<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Hérite de l'identifiant du groupe spécifié par la directive 308<code class="directive"><a href="../mod/mod_unixd.html#group">Group</a></code></code></td></tr> 309<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>serveur virtuel</td></tr> 310<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr> 311<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_privileges</td></tr> 312<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible sous Solaris 10 et OpenSolaris avec les 313modules MPM non-threadés (<code class="module"><a href="../mod/prefork.html">prefork</a></code> ou MPM 314personnalisé).</td></tr> 315</table> 316 <p>La directive <code class="directive">VHostGroup</code> permet de définir 317 l'identifiant du groupe unix sous lequel le serveur va traiter les 318 requêtes par l'intermédiaire d'un serveur virtuel. L'identifiant 319 du groupe est défini avant le traitement de la requête, puis 320 restauré à sa valeur de départ via les <a href="http://sosc-dr.sun.com/bigadmin/features/articles/least_privilege.jsp">Privilèges 321 Solaris</a>. Comme la définition 322 s'applique au <em>processus</em>, cette directive est incompatible 323 avec les modules MPM threadés.</p> 324 <p><var>Unix-group</var> peut être :</p> 325 <dl> 326 <dt>Un nom de groupe</dt> 327 <dd>Fait référence au groupe donné par son nom.</dd> 328 329 <dt><code>#</code> suivi d'un numéro de groupe.</dt> 330 <dd>Fait référence au groupe donné par son numéro.</dd> 331 </dl> 332 333 <div class="warning"><h3>Sécurité</h3> 334 <p>Cette directive ne peut pas être utilisée pour exécuter Apache en 335 tant que root ! Elle est tout de même susceptible de poser des 336 problèmes de sécurité similaires à ceux décrits dans la 337 documentation de <a href="../suexec.html">suexec</a>.</p></div> 338 339<h3>Voir aussi</h3> 340<ul> 341<li><code class="directive"><a href="../mod/mod_unixd.html#group">Group</a></code></li> 342<li><code class="directive"><a href="../mod/mod_suexec.html#suexecusergroup">SuexecUserGroup</a></code></li> 343</ul> 344</div> 345<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> 346<div class="directive-section"><h2><a name="vhostprivs" id="vhostprivs">Directive</a> <a name="VHostPrivs" id="VHostPrivs">VHostPrivs</a></h2> 347<table class="directive"> 348<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Assigne des privilèges à un serveur virtuel.</td></tr> 349<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>VHostPrivs [+-]?<var>nom-privilège</var> [[+-]?nom-privilège] ...</code></td></tr> 350<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Aucun</code></td></tr> 351<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>serveur virtuel</td></tr> 352<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr> 353<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_privileges</td></tr> 354<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible sous Solaris 10 et OpenSolaris avec les 355modules MPM non-threadés (<code class="module"><a href="../mod/prefork.html">prefork</a></code> ou MPM 356personnalisé) et lorsque <code class="module"><a href="../mod/mod_privileges.html">mod_privileges</a></code> est construit 357avec l'option de compilation 358<var>BIG_SECURITY_HOLE</var>.</td></tr> 359</table> 360 <p>La directive <code class="directive">VHostPrivs</code> permet d'assigner 361 des <a href="http://sosc-dr.sun.com/bigadmin/features/articles/least_privilege.jsp">privilèges</a> au choix à un serveur virtuel. Chaque 362 <var>nom-privilège</var> correspond à un privilège Solaris tel que 363 <var>file_setid</var> ou <var>sys_nfs</var>.</p> 364 365 <p><var>nom-privilège</var> peut être éventuellement préfixé par + 366 ou -, ce qui va respectivement accorder ou refuser le privilège. Si 367 <var>nom-privilège</var> est spécifié sans + ni -, tous les autres 368 privilèges préalablement assignés au serveur virtuel seront refusés. 369 Cette directive permet de construire aisément votre propre jeu de 370 privilèges en annulant tout réglage par défaut.</p> 371 372 <div class="warning"><h3>Sécurité</h3> 373 <p>L'utilisation de cette directive peut ouvrir d'immenses trous de 374 sécurité dans Apache, jusqu'au traitement de requêtes avec les 375 droits de root. Ne l'utilisez que si vous êtes absolument sûr de 376 comprendre ce que vous faites !</p></div> 377 378</div> 379<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> 380<div class="directive-section"><h2><a name="vhostsecure" id="vhostsecure">Directive</a> <a name="VHostSecure" id="VHostSecure">VHostSecure</a></h2> 381<table class="directive"> 382<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Détermine si le serveur s'exécute avec une sécurité avancée 383pour les serveurs virtuels.</td></tr> 384<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>VHostSecure On|Off</code></td></tr> 385<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>VHostSecure On</code></td></tr> 386<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>serveur virtuel</td></tr> 387<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr> 388<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_privileges</td></tr> 389<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible sous Solaris 10 et OpenSolaris avec les 390modules MPM non-threadés (<code class="module"><a href="../mod/prefork.html">prefork</a></code> ou MPM 391personnalisé).</td></tr> 392</table> 393 <p>Détermine si les serveurs virtuels traitent les requêtes avec une 394 sécurité avancée en supprimant les <a href="http://sosc-dr.sun.com/bigadmin/features/articles/least_privilege.jsp">Privilèges</a> rarement requis par un serveur web, mais disponibles 395 par défaut pour un utilisateur Unix standard, et donc susceptibles 396 d'être demandés par des modules et des applications. Il est 397 recommandé de conserver la définition par défaut (On), sauf si elle 398 empêche une application de fonctionner. Comme la définition 399 s'applique au <em>processus</em>, cette directive est incompatible 400 avec les modules MPM threadés.</p> 401 <div class="note"><h3>Note</h3> 402 <p>Le fait que la directive <code class="directive">VHostSecure</code> 403 empêche une application de fonctionner peut constituer un signal 404 d'avertissement indiquant que la sécurité de l'application doit être 405 revue.</p></div> 406 407</div> 408<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> 409<div class="directive-section"><h2><a name="vhostuser" id="vhostuser">Directive</a> <a name="VHostUser" id="VHostUser">VHostUser</a></h2> 410<table class="directive"> 411<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit l'identifiant utilisateur sous lequel s'exécute un 412serveur virtuel.</td></tr> 413<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>VHostUser <var>identifiant-utilisateur-unix</var></code></td></tr> 414<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Hérite de l'identifiant utilisateur spécifié par la directive 415<code class="directive"><a href="../mod/mod_unixd.html#user">User</a></code></code></td></tr> 416<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>serveur virtuel</td></tr> 417<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr> 418<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_privileges</td></tr> 419<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible sous Solaris 10 et OpenSolaris avec les 420modules MPM non-threadés (<code class="module"><a href="../mod/prefork.html">prefork</a></code> ou MPM 421personnalisé).</td></tr> 422</table> 423 <p>La directive <code class="directive">VHostUser</code> permet de définir 424 l'identifiant utilisateur unix sous lequel le serveur va traiter les 425 requêtes par l'intermédiaire d'un serveur virtuel. L'identifiant 426 utilisateur est défini avant le traitement de la requête, puis 427 restauré à sa valeur de départ via les <a href="http://sosc-dr.sun.com/bigadmin/features/articles/least_privilege.jsp">Privilèges 428 Solaris</a>. Comme la définition 429 s'applique au <em>processus</em>, cette directive est incompatible 430 avec les modules MPM threadés.</p> 431 <p><var>identifiant-utilisateur-unix</var> peut être :</p> 432 <dl> 433 <dt>Un nom d'utilisateur</dt> 434 <dd>Fait référence à l'utilisateur donné par son nom.</dd> 435 436 <dt><code>#</code> suivi d'un numéro d'utilisateur.</dt> 437 <dd>Fait référence à l'utilisateur donné par son numéro.</dd> 438 </dl> 439 440 <div class="warning"><h3>Sécurité</h3> 441 <p>Cette directive ne peut pas être utilisée pour exécuter Apache en 442 tant que root ! Elle est tout de même susceptible de poser des 443 problèmes de sécurité similaires à ceux décrits dans la 444 documentation de <a href="../suexec.html">suexec</a>.</p></div> 445 446<h3>Voir aussi</h3> 447<ul> 448<li><code class="directive"><a href="../mod/mod_unixd.html#user">User</a></code></li> 449<li><code class="directive"><a href="../mod/mod_suexec.html#suexecusergroup">SuexecUserGroup</a></code></li> 450</ul> 451</div> 452</div> 453<div class="bottomlang"> 454<p><span>Langues Disponibles: </span><a href="../en/mod/mod_privileges.html" hreflang="en" rel="alternate" title="English"> en </a> | 455<a href="../fr/mod/mod_privileges.html" title="Français"> fr </a></p> 456</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 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 Libera.chat, or sent to our <a href="https://httpd.apache.org/lists.html">mailing lists</a>.</div> 457<script type="text/javascript"><!--//--><![CDATA[//><!-- 458var comments_shortname = 'httpd'; 459var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_privileges.html'; 460(function(w, d) { 461 if (w.location.hostname.toLowerCase() == "httpd.apache.org") { 462 d.write('<div id="comments_thread"><\/div>'); 463 var s = d.createElement('script'); 464 s.type = 'text/javascript'; 465 s.async = true; 466 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; 467 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); 468 } 469 else { 470 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); 471 } 472})(window, document); 473//--><!]]></script></div><div id="footer"> 474<p class="apache">Copyright 2022 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> 475<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[//><!-- 476if (typeof(prettyPrint) !== 'undefined') { 477 prettyPrint(); 478} 479//--><!]]></script> 480</body></html>