Class CoreRememberMeService
- java.lang.Object
-
- de.hybris.platform.spring.security.CoreRememberMeService
-
- All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean,org.springframework.security.web.authentication.logout.LogoutHandler,org.springframework.security.web.authentication.RememberMeServices
- Direct Known Subclasses:
BackofficeRememberMeService,CockpitRememberMeService
public class CoreRememberMeService extends java.lang.Object implements org.springframework.security.web.authentication.RememberMeServices, org.springframework.beans.factory.InitializingBean, org.springframework.security.web.authentication.logout.LogoutHandlerIdentifies previously remembered users by a @see de.hybris.platform.jalo.user.CookieBasedLoginToken supported parameters are:- cookieName" value="AdminwebToken" />
- ttl, default is 15000
- secure, default is false
- path, default will be request.getContextPath()
- domain, default is
-
-
Field Summary
Fields Modifier and Type Field Description protected org.springframework.security.authentication.AuthenticationDetailsSourceauthenticationDetailsSourcestatic java.lang.StringDEFAULT_PARAMETERprotected org.springframework.context.support.MessageSourceAccessormessagesstatic java.lang.StringSPRING_SECURITY_REMEMBER_ME_COOKIE_KEYprotected org.springframework.security.core.userdetails.UserDetailsCheckeruserDetailsChecker
-
Constructor Summary
Constructors Constructor Description CoreRememberMeService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidafterPropertiesSet()org.springframework.security.core.AuthenticationautoLogin(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)protected voidcancelCookie(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)Sets a "cancel cookie" (with maxAge = 0) on the response to disable persistent logins.protected java.lang.StringgetCookieName()protected java.lang.StringgetDefaultLanguageForTenant()java.lang.StringgetDomain()java.lang.StringgetKey()protected java.util.Optional<java.lang.String>getLanguageFromCookie(LoginToken token)protected java.util.Optional<java.lang.String>getLanguageFromHttpRequest(javax.servlet.http.HttpServletRequest request)protected java.util.Optional<java.lang.String>getLanguageFromUserDetails(org.springframework.security.core.userdetails.UserDetails userDetails)protected java.lang.StringgetLanguageIsoCode(org.springframework.security.core.userdetails.UserDetails userDetails, LoginToken token, javax.servlet.http.HttpServletRequest request)java.lang.StringgetPath(javax.servlet.http.HttpServletRequest request)intgetTtl()booleanisSecure()voidloginFail(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)voidloginSuccess(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.security.core.Authentication successfulAuthentication)Examines the incoming request and checks for the presence of the configured "remember me" parameter.voidlogout(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.security.core.Authentication authentication)Implementation of LogoutHandler.protected org.springframework.security.core.userdetails.UserDetailsServicelookupUserDetailsService()protected voidonLoginFail(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)voidonLoginSuccess(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.security.core.Authentication successfulAuthentication)org.springframework.security.core.userdetails.UserDetailsprocessAutoLoginCookie(LoginToken token, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)protected booleanrememberMeRequested(javax.servlet.http.HttpServletRequest request, java.lang.String parameter)voidsetCookieName(java.lang.String cookieName)voidsetDomain(java.lang.String domain)voidsetKey(java.lang.String key)voidsetPath(java.lang.String path)voidsetSecure(boolean secure)voidsetTtl(int ttl)protected voidupdateLanguageInSessionContext(org.springframework.security.core.userdetails.UserDetails userDetails, LoginToken token, javax.servlet.http.HttpServletRequest request)
-
-
-
Field Detail
-
DEFAULT_PARAMETER
public static final java.lang.String DEFAULT_PARAMETER
- See Also:
- Constant Field Values
-
SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY
public static final java.lang.String SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY
- See Also:
- Constant Field Values
-
messages
protected org.springframework.context.support.MessageSourceAccessor messages
-
userDetailsChecker
protected final org.springframework.security.core.userdetails.UserDetailsChecker userDetailsChecker
-
authenticationDetailsSource
protected final org.springframework.security.authentication.AuthenticationDetailsSource authenticationDetailsSource
-
-
Method Detail
-
afterPropertiesSet
public void afterPropertiesSet() throws java.lang.Exception- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean- Throws:
java.lang.Exception
-
onLoginSuccess
public void onLoginSuccess(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.security.core.Authentication successfulAuthentication) throws EJBPasswordEncoderNotFoundException
-
processAutoLoginCookie
public org.springframework.security.core.userdetails.UserDetails processAutoLoginCookie(LoginToken token, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
-
updateLanguageInSessionContext
protected void updateLanguageInSessionContext(org.springframework.security.core.userdetails.UserDetails userDetails, LoginToken token, javax.servlet.http.HttpServletRequest request)
-
getLanguageIsoCode
protected java.lang.String getLanguageIsoCode(org.springframework.security.core.userdetails.UserDetails userDetails, LoginToken token, javax.servlet.http.HttpServletRequest request)
-
getLanguageFromCookie
protected java.util.Optional<java.lang.String> getLanguageFromCookie(LoginToken token)
-
getLanguageFromUserDetails
protected java.util.Optional<java.lang.String> getLanguageFromUserDetails(org.springframework.security.core.userdetails.UserDetails userDetails)
-
getLanguageFromHttpRequest
protected java.util.Optional<java.lang.String> getLanguageFromHttpRequest(javax.servlet.http.HttpServletRequest request)
-
getDefaultLanguageForTenant
protected java.lang.String getDefaultLanguageForTenant()
-
autoLogin
public org.springframework.security.core.Authentication autoLogin(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)- Specified by:
autoLoginin interfaceorg.springframework.security.web.authentication.RememberMeServices
-
getPath
public java.lang.String getPath(javax.servlet.http.HttpServletRequest request)
- Returns:
- the path
-
setPath
public void setPath(java.lang.String path)
- Parameters:
path- the path to set
-
isSecure
public boolean isSecure()
- Returns:
- the secure
-
setSecure
public void setSecure(boolean secure)
- Parameters:
secure- the secure to set
-
getTtl
public int getTtl()
- Returns:
- the ttl
-
setTtl
public void setTtl(int ttl)
- Parameters:
ttl- the ttl to set
-
getDomain
public java.lang.String getDomain()
- Returns:
- the domain
-
setDomain
public void setDomain(java.lang.String domain)
- Parameters:
domain- the domain to set
-
setCookieName
public void setCookieName(java.lang.String cookieName)
-
getCookieName
protected java.lang.String getCookieName()
-
lookupUserDetailsService
protected org.springframework.security.core.userdetails.UserDetailsService lookupUserDetailsService()
-
cancelCookie
protected void cancelCookie(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)Sets a "cancel cookie" (with maxAge = 0) on the response to disable persistent logins.- Parameters:
request-response-
-
logout
public void logout(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.security.core.Authentication authentication)Implementation of LogoutHandler. Default behaviour is to call cancelCookie().- Specified by:
logoutin interfaceorg.springframework.security.web.authentication.logout.LogoutHandler
-
loginFail
public final void loginFail(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)- Specified by:
loginFailin interfaceorg.springframework.security.web.authentication.RememberMeServices
-
rememberMeRequested
protected boolean rememberMeRequested(javax.servlet.http.HttpServletRequest request, java.lang.String parameter)
-
onLoginFail
protected void onLoginFail(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
-
loginSuccess
public void loginSuccess(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.security.core.Authentication successfulAuthentication)Examines the incoming request and checks for the presence of the configured "remember me" parameter. If it's present, or if alwaysRemember is set to true, calls onLoginSuccess.- Specified by:
loginSuccessin interfaceorg.springframework.security.web.authentication.RememberMeServices
-
getKey
public java.lang.String getKey()
- Returns:
- the key
-
setKey
public void setKey(java.lang.String key)
- Parameters:
key- the key to set
-
-