Explorar o código

Fixes to LDAP query

svalavuo hai 6 días
pai
achega
54da13a873
Modificáronse 1 ficheiros con 4 adicións e 4 borrados
  1. 4 4
      includes/ldap.php

+ 4 - 4
includes/ldap.php

@@ -137,7 +137,7 @@ class LDAPAuth {
             }
             
             // Test search
-            $search = ldap_search($this->connection, $this->config['base_dn'], '(objectClass=*)', ['dn']);
+            $search = ldap_search($this->connection, $this->config['base_dn'], '(objectclass=*)', ['dn']);
             if (!$search) {
                 throw new Exception('LDAP search failed');
             }
@@ -201,12 +201,12 @@ class LDAPAuth {
                 }
             }
             
-            // Build search filter
+            // Build search filter - use zimbraAccount objectclass for Zimbra directory
             if ($query) {
                 $escaped_query = ldap_escape($query, '', LDAP_ESCAPE_FILTER);
-                $filter = "(&(|(uid=*$escaped_query*)(cn=*$escaped_query*)(mail=*$escaped_query*)(givenName=*$escaped_query*)(sn=*$escaped_query*))(!(objectClass=computer)))";
+                $filter = "(&(objectclass=zimbraAccount)(|(uid=*$escaped_query*)(cn=*$escaped_query*)(mail=*$escaped_query*)(givenName=*$escaped_query*)(sn=*$escaped_query*)))";
             } else {
-                $filter = "(&(objectClass=person)(!(objectClass=computer)))";
+                $filter = "(&(objectclass=zimbraAccount))";
             }
             
             // Debug: Log search parameters