From 8c3d6b441d0e7c103e8b1c7fba0f2f27054c7790 Mon Sep 17 00:00:00 2001 From: Valentin Samir Date: Sun, 2 Mar 2014 01:50:09 +0100 Subject: [PATCH] =?UTF-8?q?[lc=5Fldap]=20Si=20l'user=20donn=C3=A9=20=C3=A0?= =?UTF-8?q?=20init=20existe=20dans=20la=20base,=20alors=20droits=20est=20m?= =?UTF-8?q?is=20aux=20droits=20de=20l'utilisateur?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lc_ldap.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lc_ldap.py b/lc_ldap.py index a228838..4012624 100644 --- a/lc_ldap.py +++ b/lc_ldap.py @@ -122,12 +122,15 @@ class lc_ldap(ldap.ldapobject.LDAPObject, object): if user is None: raise ValueError("Même root doit préciser qui il est pour se connecter à la base LDAP.") self.current_login = user + real_user = self.search(u'uid=%s' % user) + if real_user: + self.droits = [str(droit) for droit in real_user[0]['droits']] else: current_user = self.search(u'uid=%s' % user) if len(current_user) != 1: raise ValueError("L'utilisateur %s n'est pas présent dans la base en *1* exemplaire." % user) else: - self.current_login = current_user[0]["uid"][0].value + self.current_login = unicode(current_user[0]["uid"][0]) else: self.conn = self.simple_bind_s() self.dn = None