From 430ab1d4db592eb1c8e537ae148ca7f580d6bdac Mon Sep 17 00:00:00 2001 From: Lucien Gentis Date: Sun, 17 Jun 2012 12:26:34 +0000 Subject: [PATCH] Updates. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1351097 13f79535-47bb-0310-9956-ffa450edef68 --- docs/manual/mod/mod_lua.xml.fr | 108 ++++++++++++++++++++++++++- docs/manual/vhosts/name-based.xml.fr | 7 +- 2 files changed, 111 insertions(+), 4 deletions(-) diff --git a/docs/manual/mod/mod_lua.xml.fr b/docs/manual/mod/mod_lua.xml.fr index fce3e9bdccb..741abb226fe 100644 --- a/docs/manual/mod/mod_lua.xml.fr +++ b/docs/manual/mod/mod_lua.xml.fr @@ -1,7 +1,7 @@ - + @@ -135,6 +135,60 @@ Cela signifie que vous pouvez (et êtes encouragé à) avoir pl gestionnaires (ou points d'entrée, ou filtres) dans le même script.

+ +
+Ecriture de fournisseurs d'autorisation + +

mod_authz_core fournit une interface d'autorisation +de haut niveau bien plus facile à utiliser que dans les hooks +correspondants. Le premier argument de la directive Require permet de spécifier le +fournisseur d'autorisation à utiliser. Pour chaque directive Require, +mod_authz_core appellera le fournisseur d'autorisation +spécifié, le reste de la ligne constituant les paramètres. Le +fournisseur considéré va alors vérifier les autorisations et fournir le +résultat dans une valeur de retour.

+ +

En général, le fournisseur authz est appelé avant l'authentification. +S'il doit connaître le nom d'utilisateur authentifié (ou si +l'utilisateur est appelé à être authentifié), le fournisseur doit +renvoyer apache2.AUTHZ_DENIED_NO_USER, ce qui va +déclancher le processus d'authentification et un deuxième appel du +fournisseur authz.

+ +

La fonction du fournisseur authz ci-dessous accepte deux arguments, +une adresse IP et un nom d'utilisateur. Elle autorise l'accès dans le +cas où la requête provient de l'adresse IP spécifiée, ou si +l'utilisateur authentifié correspond au second argument :

+ + +authz_provider.lua + +require 'apache2' + +function authz_check_foo(r, ip, user) + if r.useragent_ip == ip then + return apache2.AUTHZ_GRANTED + elseif r.user == nil then + return apache2.AUTHZ_DENIED_NO_USER + elseif r.user == user then + return apache2.AUTHZ_GRANTED + else + return apache2.AUTHZ_DENIED + end +end + + +

La configuration suivante enregistre cette fonction en tant que +fournisseur foo, et la configure por l'URL / :

+ +LuaAuthzProvider foo authz_provider.lua authz_check_foo +<Location /> + Require foo 10.1.2.3 john_doe +</Location> + +
Ecriture de fonctions d'accroche @@ -249,6 +303,17 @@ end <td>oui</td> </tr> + <tr> + <td><code>context_prefix</code></td> + <td>string</td> + <td>non</td> + </tr> + <tr> + <td><code>context_document_root</code></td> + <td>string</td> + <td>non</td> + </tr> + <tr> <td><code>document_root</code></td> <td>string</td> @@ -284,6 +349,11 @@ end <td>string</td> <td>non</td> </tr> + <tr> + <td><code>log_id</code></td> + <td>string</td> + <td>non</td> + </tr> <tr> <td><code>method</code></td> <td>string</td> @@ -344,6 +414,11 @@ end <td>string</td> <td>oui</td> </tr> + <tr> + <td><code>useragent_ip</code></td> + <td>string</td> + <td>non</td> + </tr> </table> <p>La structure request_rec possède (au minimum) les méthodes @@ -354,8 +429,8 @@ end </highlight> <highlight language="lua"> - r:parseargs() -- renvoie une table lua contenant la chaîne - d'arguments de la requête + r:parseargs() -- renvoie une table lua contenant la chaîne + d'arguments de la requête </highlight> <!-- /* Not supported yet */ @@ -829,5 +904,32 @@ traitement de la requête</description> </usage> </directivesynopsis> +<directivesynopsis> +<name>LuaAuthzProvider</name> +<description>Branche une fonction fournisseur d'autorisation dans <module>mod_authz_core</module> +</description> +<syntax>LuaAuthzProvider provider_name /path/to/lua/script.lua function_name</syntax> +<contextlist><context>server config</context> </contextlist> +<compatibility>Disponible depuis la version 2.5.0 du serveur HTTP Apache</compatibility> + +<usage> +<p>Lorsqu'une fonction lua a été enregistrée en tant que fournisseur +d'autorisation, elle peut être appelée via la directive <directive +module="mod_authz_core">Require</directive> :</p> + +<example> +<highlight language="config"> +LuaRoot /usr/local/apache2/lua +LuaAuthzProvider foo authz.lua authz_check_foo +<Location /> + Require foo bar +</Location> +</highlight> +</example> + +</usage> +</directivesynopsis> + + </modulesynopsis> diff --git a/docs/manual/vhosts/name-based.xml.fr b/docs/manual/vhosts/name-based.xml.fr index 5bfd581c475..11085975c11 100644 --- a/docs/manual/vhosts/name-based.xml.fr +++ b/docs/manual/vhosts/name-based.xml.fr @@ -1,7 +1,7 @@ <?xml version='1.0' encoding='ISO-8859-1' ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1334406:1344675 (outdated) --> +<!-- English Revision: 1334675 --> <!-- French translation by alain B, review by Vincent Deffontaines updated by Lucien GENTIS --> @@ -211,6 +211,11 @@ virtuel bas priorité particulière en cas de présence de caractères génériques (que ce soit pour le ServerName ou le ServerAlias).</p> + <p>La liste complète des noms dans la section <directive + module="core">VirtualHost</directive> sont traités comme une + directive <directive module="core">ServerAlias</directive> sans + caractères génériques.</p> + <p>Finalement, vous pouvez affiner la configuration des serveurs virtuels en plaçant d'autres directives à l'intérieur des sections <directive type="section" module="core">VirtualHost</directive>. -- 2.47.2