spring security执行流程

启动的时候把userRespository注入进来

执行流程

首先我们配置SecurityConfiguration它继承WebSecurityConfiguraterAdpter

并且实现 configure是释放静态资源

还实现了configure(HttpSecurity http)主要是对于url请求资源的拦截处理

主要是通过UsernamePasswordAuthenticationFilter进行password验证

执行他的时候首先执行了他的父类AbstractAuthenticationProcessingFilter的doFilter方法

取出用户提交的用户名和密码

然后调用实现了UserDetailsService的自定义的DomainUserDetailsService类的loadUserByUsername()获取数据库这个用户的用户密码和权限信息

结果如下

对用户名和密码进行认证AbstractUserDetailAuthenticationProvider

 

然后是通过DAOAuthenticationProvider进行密码校验

比较传递的密码和数据库查询的密码进行比较

通过BcrtpPasswordEncoder校验

通过BCrypt对传入的密码进行加密

通过异或进行密等校验

返回结果校验失败抛出一个异常BadCredentialsException

校验成功返回

上面就是spring security整个执行流程

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值