# UserDetailsService

[UserDetailsService](https://DOCS. Spring.io/ Spring-security/site/DOCS/5.6.2/api/org/springframework/security/core/userdetails/userdetails.html)是[DaoAuthenticationProvider](DAO-Authentication-provider.html# Servlet-Authentication-DAOAuthenticationationationProvider)用于检索用户名、密码和其他属性,以进行用户名和密码的身份验证。 Spring 安全性提供in-memoryJDBCUserDetailsService的实现。

可以通过将自定义UserDetailsService公开为 Bean 来定义自定义身份验证。例如,下面将在假设CustomUserDetailsService实现UserDetailsService的情况下定制身份验证:

这仅在AuthenticationManagerBuilder尚未填充且没有定义AuthenticationProviderBean时使用。

例 1。自定义用户详细服务 Bean

爪哇

@Bean
CustomUserDetailsService customUserDetailsService() {
	return new CustomUserDetailsService();
}

XML

<b:bean class="example.CustomUserDetailsService"/>

Kotlin

@Bean
fun customUserDetailsService() = CustomUserDetailsService()

用户详细信息PasswordEncoder