Files
todo-vibe-coding/doc/iam.md

4 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 数据流
1.前端开始注册关键信息userpasswd传入后端接口执行注册流程此处注册后不自动登录密码通过哈希后存数据库不可逆存储
2.前端登录关键信息userpasswd传入后端接口后端校验成功后生成refresh token和access token将accesstoken对应的session存入redis而不存token校验由拿到token中获取的sid匹配refresh token哈希后连带session的其他信息存入数据库也可以存入redis进行加速读取并将二者返回给前端前端收到后将access token存入localstroage或内存防止xss, refresh token存入httponly cookie使用时代credential include
3.业务使用每次业务http请求前先检查access token的过期时间如果少于1-5分钟触发刷新token携带refreshtoken向后端发送请求进行更换token否则则直接进行业务若在后端业务开始鉴权时返回401则前端也要重试refresh此处refresh的时候可以同时更新refresh token和accesstoken并且作废旧token如果refresh token过期即前端响应退出登录此处可以模拟7天免登录此处重试仅一次即可多个同token refresh请求仅允许一个执行