From adb3461bc6ebca3b85e4a69d4e076113c2828253 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Wed, 30 May 2007 18:06:00 +0000 Subject: [PATCH] =?UTF-8?q?D=E9but=20ajout=20synchro=20ldap2dolibarr=20=E0?= =?UTF-8?q?=20la=20connexion?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/includes/pear/Auth/Container/LDAP.php | 2 +- htdocs/main.inc.php | 16 +++++++++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/htdocs/includes/pear/Auth/Container/LDAP.php b/htdocs/includes/pear/Auth/Container/LDAP.php index 853dc5f5f81..8e7ae6e7505 100644 --- a/htdocs/includes/pear/Auth/Container/LDAP.php +++ b/htdocs/includes/pear/Auth/Container/LDAP.php @@ -426,7 +426,7 @@ class Auth_Container_LDAP extends Auth_Container $attributes['count'] > 0) { $this->_debug('Saving attributes to Auth data', __LINE__); - DOLIAUTH::setAuthData('attributes', $attributes); + DOLIAuth::setAuthData('attributes', $attributes); } } @ldap_free_result($result_id); diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 8c470c63874..276da5e7bdc 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -303,6 +303,17 @@ if (! session_id() || ! isset($_SESSION["dol_login"])) if (! $ldapadminpass) $ldapadminpass=$conf->global->LDAP_ADMIN_PASS; // Fin code pour compatiblité + // Si synchro ldap2dolibarr on récupère les attributs de l'utilisateur + // afin de les synchroniser à sa connexion + if ($conf->global->LDAP_SYNCHRO_ACTIVE == 'ldap2dolibarr') + { + $attrArray = array(); // récupération de tous les attributs de l'utilisateur + } + else + { + $attrArray = array(''); // aucun attribut récupéré + } + $params = array( 'userattr' => $ldapuserattr, 'host' => $ldaphost, @@ -312,7 +323,7 @@ if (! session_id() || ! isset($_SESSION["dol_login"])) 'binddn' => $ldapadminlogin, 'bindpw' => $ldapadminpass, 'debug' => $ldapdebug, - //'attributes' => array('pwdlastset'), + 'attributes' => $attrArray, 'userfilter' => '' ); if ($ldapdebug) print "DEBUG: params=".join(',',$params)."
\n"; @@ -326,6 +337,9 @@ if (! session_id() || ! isset($_SESSION["dol_login"])) // Authentification Auth OK, on va chercher le login $login=$aDol->getUsername(); dolibarr_syslog ("Authentification ok (en mode Pear Base LDAP)"); + + // Récupération des attributs de l'utilisateur + $attributs = $aDol->getAuthData("attributes"); } else {