登录验证时序图
2022-02-10 14:51:35 0 举报
登录查看完整内容
登录验证时序图
作者其他创作
大纲/内容
1.获取token2.解析token3.获取userid4.封装Authentication对象存入SecurityContextHolder
服务端
Redis
前端
去Redis获取用户信息
数据库
获取用户信息UserDetails,首先从缓存中读取信息,如果缓存中没有的话,在UserDetailsService中加载,其最主要可以从我们自定义的UserDetailsService进行读取用户信息UserDetails;
如果认证通过,使用用户名/用户ID生成Jwt,用userid作为key,用户信息作为value 存入Redis
用户名/密码
登录接口
UsernamePasswordAuthenticationFilter
从SecurityContextHolder中获取当前请求的用户信息
登录验证时序图
主要的三个主要过程:第一步:AuthenticationProvide.authenticate()进行认证第二步:认证成功后,从authentication中删除凭据和其他机密数据,否则抛出异常或者认证失败第三步:发布认证成功事件,并将Authentication对象保存到security context中
Jwt认证过滤器
其他过滤器
自定义UserDetailsService
ProviderManager
DaoAuthenticationProvider
收藏
收藏
0 条评论
回复 删除
下一页