From af5df8bc911378d4a03c4c321dd2f95f9da7156a Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Tue, 15 Sep 2015 08:31:08 +0000 Subject: [PATCH] Add object class to new users. git-svn-id: https://svn.argeo.org/commons/trunk@8396 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- .../argeo/osgi/useradmin/AbstractUserDirectory.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/org.argeo.security.core/src/org/argeo/osgi/useradmin/AbstractUserDirectory.java b/org.argeo.security.core/src/org/argeo/osgi/useradmin/AbstractUserDirectory.java index 77f68463f..a80c1c533 100644 --- a/org.argeo.security.core/src/org/argeo/osgi/useradmin/AbstractUserDirectory.java +++ b/org.argeo.security.core/src/org/argeo/osgi/useradmin/AbstractUserDirectory.java @@ -10,6 +10,7 @@ import java.util.Map; import javax.naming.InvalidNameException; import javax.naming.directory.Attributes; +import javax.naming.directory.BasicAttribute; import javax.naming.directory.BasicAttributes; import javax.naming.ldap.LdapName; import javax.naming.ldap.Rdn; @@ -249,14 +250,20 @@ public abstract class AbstractUserDirectory implements UserAdmin { protected DirectoryUser newRole(LdapName dn, int type, Attributes attrs) { LdifUser newRole; + BasicAttribute objectClass = new BasicAttribute("objectClass"); if (type == Role.USER) { newRole = new LdifUser(this, dn, attrs); - // users.put(dn, newRole); + objectClass.add("inetOrgPerson"); + objectClass.add("organizationalPerson"); + objectClass.add("person"); + objectClass.add("top"); } else if (type == Role.GROUP) { newRole = new LdifGroup(this, dn, attrs); - // groups.put(dn, (LdifGroup) newRole); + objectClass.add("groupOfNames"); + objectClass.add("top"); } else throw new UserDirectoryException("Unsupported type " + type); + newRole.getAttributes().put(objectClass); return newRole; } -- 2.30.2