对于最新的稳定版本,请使用 Spring Security 6.5.3! |
Dao身份验证提供者
让我们来看看如何DaoAuthenticationProvider
在 Spring Security 中工作。
该图详细说明了如何AuthenticationManager
在阅读用户名和密码工作的数字中。

图 1.
DaoAuthenticationProvider
用法身份验证
Filter
从读取用户名和密码传递一个UsernamePasswordAuthenticationToken
到AuthenticationManager
由ProviderManager
.
这
ProviderManager
配置为使用 AuthenticationProvider 类型DaoAuthenticationProvider
.
DaoAuthenticationProvider
查找UserDetails
从UserDetailsService
.
DaoAuthenticationProvider
然后使用PasswordEncoder
以验证UserDetails
返回。
身份验证成功后,
Authentication
返回的 is 类型为UsernamePasswordAuthenticationToken
并且有一个主体,即UserDetails
由配置的UserDetailsService
.
最终,返回的UsernamePasswordAuthenticationToken
将设置在SecurityContextHolder
通过身份验证Filter
.