mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-11-22 09:59:06 +01:00
LSauthMethod::HTTP : Add parameter to disable checking login/password by LDAP auth challenge
This commit is contained in:
parent
bf6ebf171d
commit
e294fb123b
3 changed files with 83 additions and 8 deletions
|
@ -4,15 +4,47 @@
|
|||
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>. Cette &LSauthMethod; n'utilise
|
||||
ici que la variable <literal>$_SERVER['PHP_AUTH_USER']</literal>. Si
|
||||
celle-ci est présente, une recherche dans l'annuaire est effectué pour
|
||||
trouver l'utilisateur correspondant. L'authentification réussi uniquement
|
||||
si un et un seul utilisateur est retourné par la recherche.</para>
|
||||
<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 est effectuée sur une égalité
|
||||
<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>
|
||||
<simpara>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>.</simpara>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</sect2>
|
||||
|
|
30
public_html/conf/LSauth/config.LSauthMethod_HTTP.php
Normal file
30
public_html/conf/LSauth/config.LSauthMethod_HTTP.php
Normal file
|
@ -0,0 +1,30 @@
|
|||
<?php
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2007 Easter-eggs
|
||||
* http://ldapsaisie.labs.libre-entreprise.org
|
||||
*
|
||||
* Author: See AUTHORS file in top-level directory.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License version 2
|
||||
* as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
|
||||
******************************************************************************/
|
||||
|
||||
/*
|
||||
***********************************************************
|
||||
* 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);
|
|
@ -53,6 +53,19 @@ class LSauthMethod_HTTP extends LSauthMethod_basic {
|
|||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check authentication
|
||||
*
|
||||
* @retval LSldapObject|false The LSldapObject of the user authificated or false
|
||||
*/
|
||||
public function authenticate() {
|
||||
if ( (defined('LSAUTHMETHOD_HTTP_TRUST_WITHOUT_PASSWORD_CHALLENGE')) && (constant('LSAUTHMETHOD_HTTP_TRUST_WITHOUT_PASSWORD_CHALLENGE') === True)) {
|
||||
// Return authObject without checking login/password by LDAP auth challenge
|
||||
return LSauthMethod :: authenticate();
|
||||
}
|
||||
else {
|
||||
return parent :: authenticate();
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue