用RememberMe的时候想改一些RememberMeServices的默认属性
比如
private String cookieName = SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY;
private String parameter = DEFAULT_PARAMETER;
private boolean alwaysRemember;
private String key;
private int tokenValiditySeconds = 1209600; // 14 days
但修改了之后发现cookie失效了
后来debug了半天才发现在 RememberMeAuthenticationProvider 也有一个key
public class RememberMeAuthenticationProvider implements AuthenticationProvider, InitializingBean, MessageSourceAware {
//~ Static fields/initializers =====================================================================================
private static final Log logger = LogFactory.getLog(RememberMeAuthenticationProvider.class);
//~ Instance fields ================================================================================================
protected MessageSourceAccessor messages = SpringSecurityMessageSource.getAccessor();
private String key;
在验证过程中会判断他们是否相等 假如只改了一个地方。。。
调整RememberMe配置
本文探讨了在使用Spring Security的RememberMe功能时,修改RememberMeServices配置导致的问题。特别是当更改了RememberMeServices中的某些默认属性后,发现cookie失效的情况。通过调试发现,在RememberMeAuthenticationProvider中还存在一个key配置需要同步修改。
8451

被折叠的 条评论
为什么被折叠?



