Class AuthenticationUtil
java.lang.Object
org.alfresco.repo.security.authentication.AuthenticationUtil
- All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean
@AlfrescoPublicApi
public class AuthenticationUtil
extends Object
implements org.springframework.beans.factory.InitializingBean
Utility helper methods to change the authenticated context for threads.
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidstatic voidRemove the current security informationstatic Stringstatic StringGet the name of the default admin user (the admin user created during bootstrap)static net.sf.acegisecurity.AuthenticationWARN: Advanced usage only.
Get the authentication for that was set by an real authentication.static StringGet the fully authenticated user.static StringGet the name of the guest rolestatic StringGet the name of the Guest Userstatic StringgetMaskedUsername(net.sf.acegisecurity.Authentication authentication) static net.sf.acegisecurity.AuthenticationGet the current authentication for application of permissions.static StringGet the user that is currently in effect for purposes of authentication.static StringGet the name of the system usergetUserTenant(String userName) static booleanstatic booleanstatic voidLogs the current authenticated usersstatic voidstatic StringmaskUsername(String userName) static voidPop the authentication context from a threadlocal stack.static voidPush the current authentication context onto a threadlocal stack.static <R> RrunAs(AuthenticationUtil.RunAsWork<R> runAsWork, String uid) Execute a unit of work as a given user.static <R> RrunAsSystem(AuthenticationUtil.RunAsWork<R> runAsWork) static net.sf.acegisecurity.AuthenticationAuthenticate as the Admin user.voidsetDefaultAdminUserName(String defaultAdminUserName) voidsetDefaultGuestUserName(String defaultGuestUserName) static net.sf.acegisecurity.AuthenticationsetFullAuthentication(net.sf.acegisecurity.Authentication authentication) Re-authenticate using a previously-created authentication.static net.sf.acegisecurity.AuthenticationsetFullyAuthenticatedUser(String userName) Authenticate as the given user.static voidsetMtEnabled(boolean mtEnabled) static net.sf.acegisecurity.AuthenticationsetRunAsUser(String userName) WARN: Advanced usage only.
Switch to the given user for all authenticated operations.static net.sf.acegisecurity.AuthenticationWARN: Advanced usage only.
Set the system user as the currently running user for authentication purposes.
-
Field Details
-
SYSTEM_USER_NAME
- See Also:
-
-
Constructor Details
-
AuthenticationUtil
public AuthenticationUtil()
-
-
Method Details
-
afterPropertiesSet
- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean- Throws:
Exception
-
setDefaultAdminUserName
-
setDefaultGuestUserName
-
setMtEnabled
public static void setMtEnabled(boolean mtEnabled) -
isMtEnabled
public static boolean isMtEnabled() -
maskUsername
-
getMaskedUsername
-
setAdminUserAsFullyAuthenticatedUser
public static net.sf.acegisecurity.Authentication setAdminUserAsFullyAuthenticatedUser()Authenticate as the Admin user. The Admin user will be authenticated and all operations with be run in the context of this Admin user.- Returns:
- the authentication token
-
setFullyAuthenticatedUser
Authenticate as the given user. The user will be authenticated and all operations with be run in the context of this user.- Parameters:
userName- the user name- Returns:
- the authentication token
-
setFullAuthentication
public static net.sf.acegisecurity.Authentication setFullAuthentication(net.sf.acegisecurity.Authentication authentication) Re-authenticate using a previously-created authentication. -
setRunAsUserSystem
public static net.sf.acegisecurity.Authentication setRunAsUserSystem()WARN: Advanced usage only.
Set the system user as the currently running user for authentication purposes.- Returns:
- Authentication
- See Also:
-
setRunAsUser
WARN: Advanced usage only.
Switch to the given user for all authenticated operations. The original, authenticated user can still be found usinggetFullyAuthenticatedUser().- Parameters:
userName- the user to run as- Returns:
- the new authentication
-
getRunAsAuthentication
public static net.sf.acegisecurity.Authentication getRunAsAuthentication() throws AuthenticationExceptionGet the current authentication for application of permissions. This includes the any overlay details set bysetRunAsUser(String).- Returns:
- Authentication Returns the running authentication
- Throws:
AuthenticationException
-
getFullAuthentication
public static net.sf.acegisecurity.Authentication getFullAuthentication() throws AuthenticationExceptionWARN: Advanced usage only.
Get the authentication for that was set by an real authentication.- Returns:
- Authentication Returns the real authentication
- Throws:
AuthenticationException
-
getRunAsUser
Get the user that is currently in effect for purposes of authentication. This includes any overlays introduced byrunAs.- Returns:
- Returns the name of the user
- Throws:
AuthenticationException
-
isRunAsUserTheSystemUser
public static boolean isRunAsUserTheSystemUser() -
getFullyAuthenticatedUser
Get the fully authenticated user. It returns the name of the user that last authenticated and excludes any overlay authentication set byrunAs.- Returns:
- Returns the name of the authenticated user
- Throws:
AuthenticationException
-
getSystemUserName
Get the name of the system user- Returns:
- system user name
-
getAdminUserName
Get the name of the default admin user (the admin user created during bootstrap)- Returns:
- admin user name
-
getAdminRoleName
-
getGuestUserName
Get the name of the Guest User -
getGuestRoleName
Get the name of the guest role -
clearCurrentSecurityContext
public static void clearCurrentSecurityContext()Remove the current security information -
runAs
Execute a unit of work as a given user. The thread's authenticated user will be returned to its normal state after the call.- Parameters:
runAsWork- the unit of work to douid- the user ID- Returns:
- Returns the work's return value
-
runAsSystem
-
pushAuthentication
public static void pushAuthentication()Push the current authentication context onto a threadlocal stack. -
popAuthentication
public static void popAuthentication()Pop the authentication context from a threadlocal stack. -
logAuthenticatedUsers
public static void logAuthenticatedUsers()Logs the current authenticated users -
logNDC
-
getUserTenant
-