mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-11-27 04:04:49 +01:00
104 lines
4.1 KiB
Text
104 lines
4.1 KiB
Text
<sect2 id="config-LSauthMethod_HTTP">
|
|
<title>LSauthMethod_HTTP</title>
|
|
<para>Cette &LSauthMethod; est utilisée pour gérer l'authentification
|
|
via les variables d'environnements définies suite à une authentification
|
|
gérée par le serveur HTTP. En &php;, ces informations sont consultables
|
|
via les variables <literal>$_SERVER['PHP_AUTH_USER']</literal> et
|
|
<literal>$_SERVER['PHP_AUTH_PW']</literal>. Si la variable
|
|
<literal>$_SERVER['PHP_AUTH_USER']</literal> est présente, une recherche
|
|
dans l'annuaire est effectué pour trouver l'utilisateur correspondant.
|
|
L'authentification réussie uniquement si un et un seul utilisateur est
|
|
retourné par la recherche et si une authentification auprès de l'annuaire
|
|
LDAP réussie à l'aide du DN de l'objet LDAP trouvé et du mot de passe issu
|
|
de la variable <literal>$_SERVER['PHP_AUTH_PW']</literal>.</para>
|
|
|
|
<note><simpara>La recherche de l'utisateur est effectuée sur une égalité
|
|
parfaite du RDN ou en utilisant le &LSformat; de fitre de recherche
|
|
<literal>authObjectFilter</literal> défini dans la
|
|
<link linkend='config-srv-ldap'>configuration du serveur LDAP</link>
|
|
</simpara></note>
|
|
|
|
<para>Cette librairie peut être configurée en éditant le fichier de
|
|
configiration
|
|
<literal>conf/LSauth/config.LSauthMethod_HTTP.php</literal>.</para>
|
|
|
|
<programlisting linenumbering="unnumbered">
|
|
<citetitle>Structure du fichier</citetitle>/*
|
|
*****************************************************
|
|
* Configuration of the HTTP authentification support *
|
|
*****************************************************
|
|
*/
|
|
|
|
// Don't check HTTP server's login/password by LDAP authentication challenge
|
|
//define('LSAUTHMETHOD_HTTP_TRUST_WITHOUT_PASSWORD_CHALLENGE',true);
|
|
</programlisting>
|
|
|
|
<!-- Début Paramètres Configuration -->
|
|
<variablelist>
|
|
<title>Paramètres de configuration</title>
|
|
|
|
<varlistentry>
|
|
<term>LSAUTHMETHOD_HTTP_TRUST_WITHOUT_PASSWORD_CHALLENGE</term>
|
|
<listitem>
|
|
<para>Permet de désactiver le test d'authentification auprès de
|
|
l'annuaire LDAP. Pour cela, cette constante doit être définie et
|
|
valoir <literal>True</literal>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term>LSAUTHMETHOD_HTTP_METHOD</term>
|
|
<listitem>
|
|
<para>Permet de définir la méthode utilisée par le serveur HTTP pour passer
|
|
à PHP l'identifiant de l'utilisateur connecté et son mot de passe.</para>
|
|
<para>Cette constance peut pendre les valeurs suivantes :
|
|
<variablelist>
|
|
|
|
<varlistentry>
|
|
<term>PHP_PASS</term>
|
|
<listitem>
|
|
<para>Dans cette méthode, le serveur HTTP défini les variables
|
|
d'environnement <literal>PHP_AUTH_USER</literal> et <literal>
|
|
PHP_AUTH_PW</literal>. Cette méthode est la méthode par défaut et
|
|
convient en cas d'utilisation de <literal>mod_php</literal>.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term>REMOTE_USER</term>
|
|
<listitem>
|
|
<para>Dans cette méthode, le serveur HTTP défini la variable
|
|
d'environnement <literal>REMOTE_USER</literal>. Cette variable ne contient
|
|
que l'identifiant de l'utilisateur connecté. Cette méthode ne peut donc
|
|
être utilisée que conjointement avec l'activation du paramètre
|
|
<literal>LSAUTHMETHOD_HTTP_TRUST_WITHOUT_PASSWORD_CHALLENGE</literal>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term>AUTHORIZATION</term>
|
|
<listitem>
|
|
<para>Dans cette méthode, le serveur HTTP passe le contenu de l'entête
|
|
HTTP <literal>Authorization</literal> dans la variable d'environnement
|
|
<literal>HTTP_AUTHORIZATION</literal>. Cette méthode convient en cas d'
|
|
utilisation de PHP en mode CGI ou encore via PHP-FPM.</para>
|
|
<para>Pour utiliser cette méthode, il faudra adapter la configuration du
|
|
serveur HTTP. Par exemple, pour Apache HTTPd, vous pouvez utiliser le
|
|
module <literal>rewrite</literal> et la règle de réécriture suivante :
|
|
<programlisting linenumbering="unnumbered">
|
|
<![CDATA[RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]]]>
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
</para>
|
|
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
|
|
</variablelist>
|
|
</sect2>
|