三UserDetailsService与PasswordEncoder接口详解
Posted 上善若水
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三UserDetailsService与PasswordEncoder接口详解相关的知识,希望对你有一定的参考价值。
一、UserDetailsService
接口
当什么也没有配置的时候,账号和密码是由Spring Security定义生成的。而在实际项目中账号和密码都是从数据库中查询出来的。所以,我们要通过自定义控制认证逻辑。
如果需要自定义逻辑时,只需要实现UserDetailsService
接口即可。接口定义如下:
- 返回值
UserDetails
,这个类是系统默认的用户“主体”
UserDetails
接口实现类如下:
以后我们只需要使用User
这个实现类即可!
- 方法参数
username
表示用户名。此值是客户端表单传递过来的数据。默认情况下必须叫username
,否则无法接收。
二、PasswordEncoder
接口
接口实现类 BCryptPasswordEncoder
测试
以上是关于三UserDetailsService与PasswordEncoder接口详解的主要内容,如果未能解决你的问题,请参考以下文章
自定义验证类UserDetailsService 实现Security框架UserDetailsService的接口
项目一众筹网07_04_SpringSecurity记住我数据库登录-默认实现创建UserDetailsService类装配UserDetailsService怎么改源码
Spring Security----RBAC权限控制模型,和权限相关知识点整理
Spring Security 2.0.6 调用 UserDetailSservice 的 loadUserByuserName 方法时