X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fauth%2FUserAdminUtils.java;h=ad53086f5c206249d4b066fc7f5f90b0e087ab2b;hb=9ec85110269f8be5c83ea26e283359bb451a67b7;hp=326b0f4da3bc62ee6486e3b556397473b8479433;hpb=b7c2f2cc2f6f74762031567e9e636ff277ebc7c7;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/auth/UserAdminUtils.java b/org.argeo.cms/src/org/argeo/cms/auth/UserAdminUtils.java index 326b0f4da..ad53086f5 100644 --- a/org.argeo.cms/src/org/argeo/cms/auth/UserAdminUtils.java +++ b/org.argeo.cms/src/org/argeo/cms/auth/UserAdminUtils.java @@ -6,9 +6,8 @@ import javax.naming.InvalidNameException; import javax.naming.ldap.LdapName; import javax.naming.ldap.Rdn; -import org.argeo.cms.CmsException; +import org.argeo.api.NodeConstants; import org.argeo.naming.LdapAttrs; -import org.argeo.node.NodeConstants; import org.osgi.service.useradmin.Role; import org.osgi.service.useradmin.User; import org.osgi.service.useradmin.UserAdmin; @@ -59,7 +58,7 @@ public class UserAdminUtils { || last.getType().toLowerCase().equals(LdapAttrs.cn.name())) return (String) last.getValue(); else - throw new CmsException("Cannot retrieve user local id, non valid dn: " + dn); + throw new IllegalArgumentException("Cannot retrieve user local id, non valid dn: " + dn); } /** @@ -129,7 +128,7 @@ public class UserAdminUtils { try { return new LdapName(dn); } catch (InvalidNameException e) { - throw new CmsException("Cannot parse LDAP name " + dn, e); + throw new IllegalArgumentException("Cannot parse LDAP name " + dn, e); } } @@ -148,7 +147,8 @@ public class UserAdminUtils { int i = 0; loop: while (i < rdns.size()) { Rdn currrRdn = rdns.get(i); - if (!LdapAttrs.dc.name().equals(currrRdn.getType())) + if (LdapAttrs.uid.name().equals(currrRdn.getType()) || LdapAttrs.cn.name().equals(currrRdn.getType()) + || LdapAttrs.ou.name().equals(currrRdn.getType())) break loop; else { String currVal = (String) currrRdn.getValue(); @@ -158,7 +158,7 @@ public class UserAdminUtils { } return dname; } catch (InvalidNameException e) { - throw new CmsException("Unable to get domain name for " + dn, e); + throw new IllegalArgumentException("Unable to get domain name for " + dn, e); } }