我和您有类似的“要求”,对我来说,它工作正常。我的设置如下
@Configurationprotected static class AuthenticationConfiguration extends GlobalAuthenticationConfigurerAdapter { @Autowired private UserDetailsService userDetailsService; @Autowired private PasswordEnprer passwordEnprer; @Override public void init(AuthenticationManagerBuilder auth) throws Exception { auth.userDetailsService(userDetailsService).passwordEnprer( passwordEnprer); }}我的猜测是您的问题出在哪里,
auth.jdbcAuthentication()因为它将提供实现
UserDetailsService核心安全性的实现,
User而根本不使用您的实现。参见javadoc:
将JDBC身份验证添加到AuthenticationManagerBuilder中,并返回JdbcUserDetailsManagerConfigurer以允许自定义JDBC身份验证。此方法还确保UserDetailsService可用于getDefaultUserDetailsService()方法。请注意,其他UserDetailsService可能会覆盖此UserDetailsService作为默认值。



