Spring boot中使用Spring Security的记住我 remember-me功能
问题描述:Spring security新手,在登录时加上记住我功能,需要使用框架自带的记住我。
记住的用户数据,在数据库中做了持久化处理
- 首先 pom.xml文件中需要引入:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
- 定义自己的UserDetailsService 子类
public interface SysUserService extends UserDetailsService {
/**
* 根据用户名获取鉴权现象,用于登陆
*
* @param username 用户名
* @return 用户详细信息
* @throws UsernameNotFoundException
*/
UserDetails loadUserByUsername(String username) throws UsernameNotFoundException;
}
public class SysUserServiceImpl implements SysUserService{
UserDetails loadUserByUsername(String username) throws UsernameNotFoundException
{
//自定义数据库查找用户信息的逻辑
}
}
- 在WebSecurityConfigurerAdapter的子类中,

本文介绍了如何在Spring Boot应用中使用Spring Security的remember-me功能来实现在用户登录时的记住我选项。文章详细阐述了在pom.xml中引入依赖,自定义UserDetailsService,以及在WebSecurityConfigurerAdapter配置中设置的相关步骤。同时指出前端请求需携带`remember-me=true`并使用`Content-Type: application/x-www-form-urlencoded`,以确保框架能正确处理记住我逻辑。完成设置后,数据库的persistent_logins表会记录相关用户信息。
最低0.47元/天 解锁文章
2万+

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



