【发布时间】:2016-07-09 15:23:22
【问题描述】:
我在 Spring Security Config 中指定了 1 的 tokenValiditySeconds,但我一直看到默认值 1209600(在 org.springframework.security.web.authentication.rememberme.AbstractRememberMeServices 中找到)出现。我有一个自定义的“RememberMeService”类,它扩展了TokenBasedRememberMeServices(它又扩展了AbstractRememberMeServices),但我没有在我的课堂上更改tokenValiditySeconds...我只是希望它可以从我的安全性中设置配置。
除tokenValiditySeconds 外,其他一切正常。我专门将它用于我的 REST API(而不是在 Web 表单中)。
如何使我在 Spring Security Config 中指定的 tokenValiditySeconds 应用于我的 RememberMeService?这是我的configure() 方法:
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.headers()
.frameOptions()
.sameOrigin()
.and()
.authorizeRequests()
.antMatchers("/rest/**").hasRole("ADMIN")
.anyRequest().permitAll()
.and()
.csrf()
.disable()
.httpBasic()
.and()
.rememberMe()
.key(KEY)
.tokenValiditySeconds(1)
.userDetailsService(springUserDetailsService)
.rememberMeServices(new SpringRememberMeService(KEY, springUserDetailsService))
.and()
.logout().disable();
}
【问题讨论】:
标签: java spring rest spring-security spring-rest