diff --git a/ldapcherry/backend/backendAD.py b/ldapcherry/backend/backendAD.py index 4490113..6180083 100644 --- a/ldapcherry/backend/backendAD.py +++ b/ldapcherry/backend/backendAD.py @@ -92,11 +92,24 @@ self.builtin = 'CN=Builtin,' + basedn self.user_filter_tmpl = '(sAMAccountName=%(username)s)' self.group_filter_tmpl = '(uid=%(userdn)s)' - self.search_filter_tmpl = '(|(sAMAccountName=%(searchstring)s*)' \ - '(sn=%(searchstring)s*)(cn=%(searchstring)s*))' + self.search_filter_tmpl = '(&(|(sAMAccountName=%(searchstring)s)' \ + '(cn=%(searchstring)s*)' \ + '(name=%(searchstring)s*)' \ + '(givenName=%(searchstring)s*)' \ + '(cn=%(searchstring)s*))' \ + '(&(objectClass=person)' \ + '(objectClass=user)' \ + '(!(objectClass=computer)))' \ + ')' self.dn_user_attr = 'cn' self.key = 'sAMAccountName' - self.objectlasses = ['top', 'person', 'organizationalPerson', 'user'] + self.objectlasses = [ + 'top', + 'person', + 'organizationalPerson', + 'user', + 'posixAccount', + ] self.group_attrs = { 'member': "%(dn)s" }