mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Merged V3.2E to HEAD
17246: ETHREEOH-3208: User profiles for users authenticated by immutable subsystems are now read only - Introduced MutableAuthenticationService interface, only implemented by Alfresco native authentication service - Split out those methods from AuthenticationService that mutate the user store and added isAuthenticationMutable() - Now both Alfresco Explorer and Share user profile / password edit link rendering is conditional on isAuthenticationMutable - Works with authentication chain containing mixture of internally and externally authenticated users 17247: Fix failing unit tests - rm-public-services-security-context.xml needed to be brought in line with public-services-security-context.xml (and will forever more!) 17248: ETHREEOH-1593: alfUser cookie value should be base 64 encoded to allow for non-ASCII characters 17253: *RECORD ONLY* ETHREEOH-2885: web.xml must conform to the schema to work on JBoss git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18098 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -30,6 +30,7 @@ import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
import org.alfresco.service.cmr.security.AuthenticationService;
|
||||
import org.alfresco.service.cmr.security.MutableAuthenticationService;
|
||||
|
||||
/**
|
||||
* A base class for chaining authentication services. Where appropriate, methods will 'chain' across multiple
|
||||
@@ -37,9 +38,8 @@ import org.alfresco.service.cmr.security.AuthenticationService;
|
||||
*
|
||||
* @author dward
|
||||
*/
|
||||
public abstract class AbstractChainingAuthenticationService extends AbstractAuthenticationService
|
||||
public abstract class AbstractChainingAuthenticationService extends AbstractAuthenticationService implements MutableAuthenticationService
|
||||
{
|
||||
|
||||
/**
|
||||
* Instantiates a new abstract chaining authentication service.
|
||||
*/
|
||||
@@ -53,7 +53,7 @@ public abstract class AbstractChainingAuthenticationService extends AbstractAuth
|
||||
*
|
||||
* @return the mutable authentication service
|
||||
*/
|
||||
public abstract AuthenticationService getMutableAuthenticationService();
|
||||
public abstract MutableAuthenticationService getMutableAuthenticationService();
|
||||
|
||||
/**
|
||||
* Gets the authentication services across which methods will chain.
|
||||
@@ -130,6 +130,16 @@ public abstract class AbstractChainingAuthenticationService extends AbstractAuth
|
||||
getMutableAuthenticationService().setAuthenticationEnabled(userName, enabled);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public boolean isAuthenticationMutable(String userName)
|
||||
{
|
||||
MutableAuthenticationService mutableAuthenticationService = getMutableAuthenticationService();
|
||||
return mutableAuthenticationService == null ? false : mutableAuthenticationService
|
||||
.isAuthenticationMutable(userName);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
@@ -149,7 +159,7 @@ public abstract class AbstractChainingAuthenticationService extends AbstractAuth
|
||||
// Ignore and chain
|
||||
}
|
||||
}
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -226,7 +236,7 @@ public abstract class AbstractChainingAuthenticationService extends AbstractAuth
|
||||
// it doesn't exist in any of the authentication components
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
@@ -529,5 +539,7 @@ public abstract class AbstractChainingAuthenticationService extends AbstractAuth
|
||||
}
|
||||
return defaultGuestUserNames;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user