spring security 整合activity工作流遇到的问题

1. spring security 登录提示用户名密码错误的问题

spring security项目引入了activity的相关依赖导致登录不上,原因是activity里面有自己的UserDetailsService的实现,项目启动的时候优先加载activity的UserDetailsService的实现,导致我们自己写的UserDetailsService用不了,说一下排查的过程.

spring security 整合activity工作流遇到的问题

找到ProviderManager通过断点模式跟踪到是DaoAuthenticationProvider实现了authenticate方法,但是自己的方法里并没找到authenticate方法,我们去父类里找到了,

spring security 整合activity工作流遇到的问题

跟进去看,在父类找到了retrieveUser,是在DaoAuthenticationProvider

spring security 整合activity工作流遇到的问题

接着断点进去看

spring security 整合activity工作流遇到的问题

发现是IdentityServiceUserDetailsService可这个类并不是我们自己实现的用户验证的类,要排除掉

在启动类可以排除掉@SpringBootApplication(exclude = SecurityAutoConfiguration.class)即可