SpringSecurity 用户帐号已被锁定的问题及解决方法
SpringSecurity 用户帐号已被锁定
01 异常发生场景
- 当我自定义登录接口时
- 以下是我的UserDetailsService和UserDetails接口的实现类
@Service public class UserDetailsServiceImpl implements UserDetailsService { @Autowired private MsUserServiceImp msUserServiceImp; @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { //使用mybatis-plus,获取到账号密码数据 LambdaQueryWrapper<MsUser> qw=new LambdaQueryWrapper<>(); qw.eq(MsUser::getUsername,username); MsUser user = msUserServiceImp.getOne(qw); LoginUser loginUser = new LoginUser(); loginUser.setMsUser(user); return loginUser; } }
@Data @NoArgsConstructor @AllArgsConstructor public class LoginUser implements UserDetails { private MsUser msUser; @Override public Collection<? extends GrantedAuthority> getAuthorities() { return null; } @Override public String getPassword() { return msUser.getPassword(); } @Override public String getUsername() { return msUser.getUsername(); } @Override public boolean isAccountNonExpired() { return false; } @Override public boolean isAccountNonLocked() { return false; } @Override public boolean isCredentialsNonExpired() { return false; } @Override public boolean isEnabled() { return false; } }
02 问题发生的原因
重写的UserDetails类默认方法返回值为false
- 1.isAccountNonExpired()
判断帐户是否过期
- 2.isAccountNonLocked()
判断帐户是否锁定
- 3.isCredentialsNonExpired()
凭据是否过期,就是登录时间到没到
- 4.isEnabled()
是否启动
03 解决方式
将UserDetails接口的实现类里上述方法,也就是所有方法设置为true就可以避免被锁定了
到此这篇关于SpringSecurity 用户帐号已被锁定的文章就介绍到这了,更多相关SpringSecurity 帐号锁定内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
springboot websocket集群(stomp协议)连接时候传递参数
这篇文章主要介绍了springboot websocket集群(stomp协议)连接时候传递参数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-07-07JavaWeb实现用户登录注册功能实例代码(基于Servlet+JSP+JavaBean模式)
这篇文章主要基于Servlet+JSP+JavaBean开发模式实现JavaWeb用户登录注册功能实例代码,非常实用,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看看吧2016-05-05jackson在springboot中的使用方式-自定义参数转换器
这篇文章主要介绍了jackson在springboot中的使用方式-自定义参数转换器,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-10-10java多线程之wait(),notify(),notifyAll()的详解分析
本篇文章是对java多线程 wait(),notify(),notifyAll()进行了详细的分析介绍,需要的朋友参考下2013-06-06
最新评论