import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.argeo.naming.LdapAttrs;
-import org.argeo.naming.LdapObjs;
import org.osgi.framework.Filter;
import org.osgi.framework.FrameworkUtil;
import org.osgi.framework.InvalidSyntaxException;
LdapName groupDn = new LdapName(value.toString());
DirectoryUser group = doGetRole(groupDn);
allRoles.add(group);
- if (log.isDebugEnabled())
- log.debug("Add memberOf " + groupDn);
+ if (log.isTraceEnabled())
+ log.trace("Add memberOf " + groupDn);
}
} catch (Exception e) {
throw new UserDirectoryException("Cannot get memberOf groups for " + user, e);
// TODO check for loops
DirectoryUser group = doGetRole(groupDn);
allRoles.add(group);
- if (log.isDebugEnabled())
- log.debug("Add direct group " + groupDn);
+ if (log.isTraceEnabled())
+ log.trace("Add direct group " + groupDn);
collectRoles(group, allRoles);
}
}
AbstractUserDirectory scopedUserAdmin = scope(user);
try {
DirectoryUser directoryUser = (DirectoryUser) scopedUserAdmin.getRole(user.getName());
+ if (directoryUser == null)
+ throw new UserDirectoryException("No scoped user found for " + user);
LdifAuthorization authorization = new LdifAuthorization(directoryUser,
scopedUserAdmin.getAllRoles(directoryUser));
return authorization;
return uri;
}
- // protected List<String> getIndexedUserProperties() {
- // return indexedUserProperties;
- // }
- //
- // protected void setIndexedUserProperties(List<String>
- // indexedUserProperties) {
- // this.indexedUserProperties = indexedUserProperties;
- // }
-
private static boolean readOnlyDefault(URI uri) {
if (uri == null)
return true;
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() {