X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fosgi%2Fuseradmin%2FDirectoryUserAdmin.java;h=0115d57ca48aa0a87ce71cd8df71ac9c5cbda2e1;hb=feddb4be70a8304dd4a533efee6e14c22691b500;hp=59fb05dc3b6e2e3e2160188cce194e1588b17e83;hpb=f3cb3bed85cb528d919193ce6abb2bb8d05faf03;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/osgi/useradmin/DirectoryUserAdmin.java b/org.argeo.cms/src/org/argeo/cms/osgi/useradmin/DirectoryUserAdmin.java index 59fb05dc3..0115d57ca 100644 --- a/org.argeo.cms/src/org/argeo/cms/osgi/useradmin/DirectoryUserAdmin.java +++ b/org.argeo.cms/src/org/argeo/cms/osgi/useradmin/DirectoryUserAdmin.java @@ -26,7 +26,9 @@ import javax.security.auth.Subject; import javax.security.auth.kerberos.KerberosTicket; import org.argeo.api.cms.directory.DirectoryDigestUtils; +import org.argeo.api.cms.directory.CmsUser; import org.argeo.api.cms.directory.HierarchyUnit; +import org.argeo.api.cms.directory.UserDirectory; import org.argeo.cms.directory.ldap.AbstractLdapDirectory; import org.argeo.cms.directory.ldap.LdapDao; import org.argeo.cms.directory.ldap.LdapEntry; @@ -146,7 +148,7 @@ public class DirectoryUserAdmin extends AbstractLdapDirectory implements UserAdm } } - protected List getAllRoles(DirectoryUser user) { + protected List getAllRoles(CmsUser user) { List allRoles = new ArrayList(); if (user != null) { collectRoles((LdapEntry) user, allRoles); @@ -182,23 +184,23 @@ public class DirectoryUserAdmin extends AbstractLdapDirectory implements UserAdm return res.toArray(new Role[res.size()]); } - List getRoles(LdapName searchBase, String filter, boolean deep) throws InvalidSyntaxException { + List getRoles(LdapName searchBase, String filter, boolean deep) throws InvalidSyntaxException { LdapEntryWorkingCopy wc = getWorkingCopy(); // Filter f = filter != null ? FrameworkUtil.createFilter(filter) : null; List searchRes = getDirectoryDao().doGetEntries(searchBase, filter, deep); - List res = new ArrayList<>(); + List res = new ArrayList<>(); for (LdapEntry entry : searchRes) - res.add((DirectoryUser) entry); + res.add((CmsUser) entry); if (wc != null) { - for (Iterator it = res.iterator(); it.hasNext();) { - DirectoryUser user = (DirectoryUser) it.next(); + for (Iterator it = res.iterator(); it.hasNext();) { + CmsUser user = (CmsUser) it.next(); LdapName dn = LdapNameUtils.toLdapName(user.getName()); if (wc.getDeletedData().containsKey(dn)) it.remove(); } Filter f = filter != null ? FrameworkUtil.createFilter(filter) : null; for (LdapEntry ldapEntry : wc.getNewData().values()) { - DirectoryUser user = (DirectoryUser) ldapEntry; + CmsUser user = (CmsUser) ldapEntry; if (f == null || f.match(user.getProperties())) res.add(user); } @@ -211,7 +213,7 @@ public class DirectoryUserAdmin extends AbstractLdapDirectory implements UserAdm @Override public User getUser(String key, String value) { // TODO check value null or empty - List collectedUsers = new ArrayList(); + List collectedUsers = new ArrayList(); if (key != null) { doGetUser(key, value, collectedUsers); } else { @@ -227,11 +229,11 @@ public class DirectoryUserAdmin extends AbstractLdapDirectory implements UserAdm return null; } - protected void doGetUser(String key, String value, List collectedUsers) { + protected void doGetUser(String key, String value, List collectedUsers) { String f = "(" + key + "=" + value + ")"; List users = getDirectoryDao().doGetEntries(getBaseDn(), f, true); for (LdapEntry entry : users) - collectedUsers.add((DirectoryUser) entry); + collectedUsers.add((CmsUser) entry); } @Override @@ -261,8 +263,8 @@ public class DirectoryUserAdmin extends AbstractLdapDirectory implements UserAdm return getAuthorizationFromScoped(scopedUserAdmin, user); } - if (user instanceof DirectoryUser) { - return new LdifAuthorization(user, getAllRoles((DirectoryUser) user)); + if (user instanceof CmsUser) { + return new LdifAuthorization(user, getAllRoles((CmsUser) user)); } else { // bind with authenticating user DirectoryUserAdmin scopedUserAdmin = scope(user).orElseThrow(); @@ -273,7 +275,7 @@ public class DirectoryUserAdmin extends AbstractLdapDirectory implements UserAdm private Authorization getAuthorizationFromScoped(DirectoryUserAdmin scopedUserAdmin, User user) { try { - DirectoryUser directoryUser = (DirectoryUser) scopedUserAdmin.getRole(user.getName()); + CmsUser directoryUser = (CmsUser) scopedUserAdmin.getRole(user.getName()); if (directoryUser == null) throw new IllegalStateException("No scoped user found for " + user); LdifAuthorization authorization = new LdifAuthorization(directoryUser,