关于UserDetailsService的咨询

来源:4-13 小结

crea_union

2019-06-14

目前我们的框架支持了短信验证码登陆以及用户名密码登陆,其中查询数据库这块都用的UserDetailsService.loadUserByUsername,目前暂时没有写数据库查询,密码传的是加密后的12345,此时用户名密码登陆的模式没有问题。为什么短信验证的时候也是走这个流程呢?正确的项目使用的时候,短信验证码登陆的时候没有密码嘛,那是如何校验登陆的呢?

写回答

1回答

JoJo

2019-06-16

额,没太看明白,把几个点都说下,看看是不是你想要的答案。1.UserDetailsService只负责读取用户信息,不负责校验逻辑,所以不管是密码登录,还是短信登录,都可以用它获取用户信息。2.短信登录时没有密码的,因为短信只会发给用户注册时填的手机,所以能收到码的一定是用户本人,所以如果只要码填对了,我们就认为是用户在登录。

0
1
crea_union
恩,这个我明白,我的问题就是UserDetailsService读取用户信息,我看返回的对象里面的那个user的构造方法里面都有传密码这个字段,在短信的时候明明不需要密码,所以我才有疑问,实际可能真的没有密码,那填什么呢
2019-06-17
共1条回复

Spring Security技术栈开发企业级认证与授权

Spring Security技术栈,REST风格开发常见接口,独立开发认证授权模块保证REST服务安全

2662 学习 · 1561 问题

查看课程