import org.apache.commons.httpclient.auth.AuthPolicy;
import org.apache.commons.httpclient.auth.CredentialsProvider;
-import org.apache.commons.httpclient.cookie.CookiePolicy;
import org.apache.commons.httpclient.params.DefaultHttpParams;
import org.apache.commons.httpclient.params.HttpMethodParams;
import org.apache.commons.httpclient.params.HttpParams;
private GSSCredential acceptorCredentials;
private boolean singleUser = false;
+ private boolean systemRolesAvailable = false;
public NodeUserAdmin(String systemRolesBaseDn) {
super(systemRolesBaseDn);
log.debug("User directory " + userDirectory.getBaseDn() + " [" + u.getScheme() + "] enabled."
+ (realm != null ? " " + realm + " realm." : ""));
- if (!isSystemRolesBaseDn(baseDn)) {
+ if (isSystemRolesBaseDn(baseDn))
+ systemRolesAvailable = true;
+
+ // start publishing only when system roles are available
+ if (systemRolesAvailable) {
+ // The list of baseDns is published as properties
+ // TODO clients should rather reference USerDirectory services
if (userAdminReg != null)
userAdminReg.unregister();
// register self as main user admin
public String getName() {
return "Node User Admin";
}
-
-
@Override
protected void addAbstractSystemRoles(Authorization rawAuthorization, Set<String> sysRoles) {
- if(rawAuthorization.getName()==null) {
+ if (rawAuthorization.getName() == null) {
sysRoles.add(NodeConstants.ROLE_ANONYMOUS);
- }else {
+ } else {
sysRoles.add(NodeConstants.ROLE_USER);
}
}
// schemes.add(AuthPolicy.BASIC);// incompatible with Basic
params.setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, schemes);
params.setParameter(CredentialsProvider.PROVIDER, new HttpCredentialProvider());
- params.setParameter(HttpMethodParams.COOKIE_POLICY, CookiePolicy.BROWSER_COMPATIBILITY);
+ params.setParameter(HttpMethodParams.COOKIE_POLICY, KernelConstants.COOKIE_POLICY_BROWSER_COMPATIBILITY);
// params.setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
}
}