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