Skip to content

Commit d03a18b

Browse files
author
Daan Hoogland
committed
add isPerson check to query
1 parent 0e8b0b8 commit d03a18b

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/ldap/ADLdapUserManagerImpl.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ public List<LdapUser> getUsersInGroup(String groupName, LdapContext context, Lon
5858
}
5959

6060
String generateADGroupSearchFilter(String groupName, Long domainId) {
61+
final String isPersonFilter = "(objectCategory=person)";
62+
6163
final StringBuilder userObjectFilter = new StringBuilder();
6264
userObjectFilter.append("(objectClass=");
6365
userObjectFilter.append(_ldapConfiguration.getUserObject(domainId));
@@ -71,6 +73,7 @@ String generateADGroupSearchFilter(String groupName, Long domainId) {
7173

7274
final StringBuilder result = new StringBuilder();
7375
result.append("(&");
76+
result.append(isPersonFilter);
7477
result.append(userObjectFilter);
7578
result.append(memberOfFilter);
7679
result.append(")");

plugins/user-authenticators/ldap/src/test/java/org/apache/cloudstack/ldap/ADLdapUserManagerImplTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public void testGenerateADSearchFilterWithNestedGroupsEnabled() {
5454
String [] groups = {"dev", "dev-hyd"};
5555
for (String group: groups) {
5656
String result = adLdapUserManager.generateADGroupSearchFilter(group, 1L);
57-
assertTrue(("(&(objectClass=user)(memberOf:1.2.840.113556.1.4.1941:=CN=" + group + ",DC=cloud,DC=citrix,DC=com))").equals(result));
57+
assertTrue(("(&(objectCategory=person)(objectClass=user)(memberOf:1.2.840.113556.1.4.1941:=CN=" + group + ",DC=cloud,DC=citrix,DC=com))").equals(result));
5858
}
5959

6060
}
@@ -69,7 +69,7 @@ public void testGenerateADSearchFilterWithNestedGroupsDisabled() {
6969
String [] groups = {"dev", "dev-hyd"};
7070
for (String group: groups) {
7171
String result = adLdapUserManager.generateADGroupSearchFilter(group, 1L);
72-
assertTrue(("(&(objectClass=user)(memberOf=CN=" + group + ",DC=cloud,DC=citrix,DC=com))").equals(result));
72+
assertTrue(("(&(objectCategory=person)(objectClass=user)(memberOf=CN=" + group + ",DC=cloud,DC=citrix,DC=com))").equals(result));
7373
}
7474
}
7575

0 commit comments

Comments
 (0)