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:
@@ -56,7 +56,7 @@ import org.alfresco.service.cmr.repository.TemplateService;
|
||||
import org.alfresco.service.cmr.rule.RuleService;
|
||||
import org.alfresco.service.cmr.search.SearchService;
|
||||
import org.alfresco.service.cmr.security.AccessStatus;
|
||||
import org.alfresco.service.cmr.security.AuthenticationService;
|
||||
import org.alfresco.service.cmr.security.MutableAuthenticationService;
|
||||
import org.alfresco.service.cmr.security.PermissionService;
|
||||
import org.alfresco.service.namespace.NamespaceService;
|
||||
import org.alfresco.web.app.Application;
|
||||
@@ -208,12 +208,12 @@ public class NavigationBean implements Serializable
|
||||
/**
|
||||
* @param authService The AuthenticationService to set.
|
||||
*/
|
||||
public void setAuthenticationService(AuthenticationService authService)
|
||||
public void setAuthenticationService(MutableAuthenticationService authService)
|
||||
{
|
||||
this.authService = authService;
|
||||
}
|
||||
|
||||
protected AuthenticationService getAuthService()
|
||||
protected MutableAuthenticationService getAuthService()
|
||||
{
|
||||
if (authService == null)
|
||||
this.authService = Repository.getServiceRegistry(FacesContext.getCurrentInstance()).getAuthenticationService();
|
||||
@@ -1024,7 +1024,9 @@ public class NavigationBean implements Serializable
|
||||
*/
|
||||
public boolean isAllowUserConfig()
|
||||
{
|
||||
return this.clientConfig.getAllowUserConfig();
|
||||
// For correct behaviour, we ask the authentication chain whether this particular user is mutable
|
||||
return this.clientConfig.getAllowUserConfig()
|
||||
&& this.authService.isAuthenticationMutable(this.authService.getCurrentUserName());
|
||||
}
|
||||
|
||||
|
||||
@@ -1157,7 +1159,7 @@ public class NavigationBean implements Serializable
|
||||
UserPreferencesBean preferences;
|
||||
|
||||
/** The Authentication service bean reference */
|
||||
transient private AuthenticationService authService;
|
||||
transient private MutableAuthenticationService authService;
|
||||
|
||||
/** The PermissionService reference */
|
||||
transient private PermissionService permissionService;
|
||||
|
Reference in New Issue
Block a user