From 5d39143d7ea77173300af60264d191101e310902 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Wed, 15 Nov 2017 10:43:07 +0100 Subject: [PATCH] Improve user directory --- .../org/argeo/cms/auth/UserAdminLoginModule.java | 4 +++- .../osgi/useradmin/AbstractUserDirectory.java | 14 ++++---------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/org.argeo.cms/src/org/argeo/cms/auth/UserAdminLoginModule.java b/org.argeo.cms/src/org/argeo/cms/auth/UserAdminLoginModule.java index 1d91a21ca..68a08c5d9 100644 --- a/org.argeo.cms/src/org/argeo/cms/auth/UserAdminLoginModule.java +++ b/org.argeo.cms/src/org/argeo/cms/auth/UserAdminLoginModule.java @@ -117,8 +117,10 @@ public class UserAdminLoginModule implements LoginModule { AuthenticatingUser authenticatingUser = new AuthenticatingUser(user.getName(), password); bindAuthorization = userAdmin.getAuthorization(authenticatingUser); // TODO check tokens as well - if (bindAuthorization != null) + if (bindAuthorization != null) { + authenticatedUser = user; return true; + } } catch (Exception e) { // silent if(log.isTraceEnabled()) diff --git a/org.argeo.enterprise/src/org/argeo/osgi/useradmin/AbstractUserDirectory.java b/org.argeo.enterprise/src/org/argeo/osgi/useradmin/AbstractUserDirectory.java index d6135f8e8..d3c7d6246 100644 --- a/org.argeo.enterprise/src/org/argeo/osgi/useradmin/AbstractUserDirectory.java +++ b/org.argeo.enterprise/src/org/argeo/osgi/useradmin/AbstractUserDirectory.java @@ -414,15 +414,6 @@ public abstract class AbstractUserDirectory implements UserAdmin, UserDirectory return uri; } - // protected List getIndexedUserProperties() { - // return indexedUserProperties; - // } - // - // protected void setIndexedUserProperties(List - // indexedUserProperties) { - // this.indexedUserProperties = indexedUserProperties; - // } - private static boolean readOnlyDefault(URI uri) { if (uri == null) return true; @@ -434,8 +425,11 @@ public abstract class AbstractUserDirectory implements UserAdmin, UserDirectory return !file.canWrite(); else return !file.getParentFile().canWrite(); + } else if (uri.getScheme().equals("ldap")) { + if (uri.getAuthority() != null)// assume writable if authenticated + return false; } - return true; + return true;// read only by default } public boolean isReadOnly() { -- 2.30.2