auth
2021-08-12 09:57:39 4 举报
登录查看完整内容
auth流程
作者其他创作
大纲/内容
返回业务数据
查询用户信息
二次请求
根据authentication获取Principal(userId)
登录
转发相关服务(这里模拟到user-center)
短信验证码模式(SMSCodeTokenGranter)
是否验证通过
返回失败结果
无效
GatewayAuthConfig中注入SecurityWebFilterChain,通过ServerHttpSecurity.AuthorizeExchangeSpec.pathMatchers()..permitAll()方法指定放行路径
user
threadLoacal<User>
SecurityWebFilterChain拦截
目前支持redis和jwt两种方式
包含用户基本信息及权限菜单相关信息
生成token
浏览器保存access-token
gateway
other server
根据结果执行WebSecurityConfig中配置的successAndFailureHandler
否
是
有效
携带access-token
user-center
密码模式(PasswordEnhanceTokenGranter)
放行api
放行
AuthorizeExchangeSpec进行token有效性验证
业务处理2
业务处理1
匹配grantType
auth-server
/oauth/token
AuthenticationWebFilter进行token转换并进行验证失败和验证成功的后续操作(ResAuthenticationSuccessHandler,ResAuthenticationFailureHandler)
根据注入的TokenStore选择存储方式
服务间通信用openfegin通信,要重写restTemplate,添加RestTemplateInterceptor,把bear_token添加到请求头中
0 条评论
回复 删除
下一页