一、AuthenticationManager里面保存有很多实例,其中一个就是AuthenticationProvider;而每个AuthenticationProvider里面都有一个UserDetailsService。 二、默认情况下,实现AuthenticationManager,就是实现AuthenticationProvider。 三、身份验证是在AuthenticationProvider中执行。 1、AuthenticationProvider使用UserDetailsService的UserDetails负责检索和验证用户名; 2、AuthenticationProvider使用PasswordEncoder检查密码用户是否提供了与您从数据库中检索的哈希密码。