Token续期最佳实践:双Token前后端配合方案详解
创作时间:
作者:
@小白创作中心
Token续期最佳实践:双Token前后端配合方案详解
引用
CSDN
1.
https://blog.csdn.net/m0_58600248/article/details/138916457
在现代Web应用中,Token续期是一个重要的安全机制,它确保了用户在长时间使用应用时不会因为Token过期而被迫重新登录。本文将介绍一种双Token(access token和refresh token)的前后端配合方案,详细描述了该方案的流程和具体实现步骤。
双Token,前后端配合方案
以下是我们正在采用的流程图
方案:
- 双token方案意味着有两个token, access token 和 refresh token, access token是每次请求携带的token, 为了安全和减少暴露,通常设置的时间较短,我们设置为15分钟,不同行业有不同的需求,我们对于安全性比较重视,所以设置的时间偏短。 refresh token 我们设置为一小时过期,refresh token过期后就不在续期,让用户重新登陆
- 前端需要配置做的步骤,会设置请求拦截器,如果拦截到返回结果是401并且错误信息是token过期,则会在拦截器中发送refresh token请求
- 前端会监控用户活跃时间,我们设置用户的空闲时间是10分钟,如果用户长时间没有操作,则会填提示框询问用户是否需要继续停留在该页面,该提示框会等待三分钟,如果三分钟没有任何操作或者点击了取消,则前端会进行token 的清除,让用户回到登录页面。如果点击了确定,则会发起refresh token请求,刷新所有的token。
实现步骤
- 用户点击登录,前端携带用户名密码发起请求,后端返回access token和refresh token
- 前端保存token信息到local storage
- 将access token放到请求头发起访问数据请求
- 后端校验access token是否过期,过期则返回401和token过期信息
- 前端通过请求拦截,拦截到401 和token过期信息。再拦截请求里面再次发送refresh token请求刷新,这里面可能会存在其他携带旧的token请求,这时候可以放这些失败请求放到队列中,保证只有一个请求去请求刷新就好。这时候,会将refresh token放到请求头中发起刷新token的请求。
- 后端返回全新的refresh token和access token,我们保证了refresh token过期时间一定会比access token时间长。同时,如果用户一直操作,就不存在token过期就被弹出页面的问题。
- 前端接收到新的refresh token和access token后,就可以替代浏览器本地的token,同时原来因token过期不成功的请求可以再次发送。
- refresh token过期,如果用户长时间不操作,就会直接回到登录页面。
热门推荐
韩剧剧情深度剖析:揭示故事背后的社会与文化意义
一张千年的古方,祛湿堪比“烘干机”,从头祛到脚,无湿一身轻!
必读!胃病患者的早餐秘诀:早晨的好时光,四类食物助你“养胃”
阴阳师胧车高分阵容打法解析:从基础到进阶的完整攻略
历史上真实的宋慈:南宋杰出的法医学家
沧海桑田,碣石之雄:探寻诗歌背后的历史与文化
脉搏血氧饱和度在评估氧合方面优于 ABG 的 10 大原因
从风帆到火炮:西方船炮技术如何在乾隆时期全面超越清朝
草籽是什么颜色的
冬天如何洗车才能不伤车,这些洗车常识你知道吗?
中医养生秘诀:咳嗽日常调理与预防
温度高达上千度的气态巨行星,出现在不该在的位置,神奇的热木星
滕泰:家庭消费占比低于美国30个百分点,中国应加快向消费型社会转型
外贸客户管理:必要性与实施方法
家乡的小河
女人海中金命好不好
新书推荐:《西风东渐中的上海营造》
从纪实到艺术:贾樟柯电影《天注定》的失衡之道
王家卫谈《花样年华》:一部值得反复品味的电影杰作
全球最佳大学排名发布,中国大陆25所高校进入TOP200(附榜单)
增值税发票OCR识别与大数据分析结合:提升财务管理效率的创新途径
基于大型语言模型的游戏智能体
王莽改制有多超前?王莽改制的内容和失败原因详解
阿拉伯数字书写布局的标准有哪些?
筛窦炎症用什么药物治疗好
DNF首选!如何挑选适用电脑主机配置?
如何选择适合地下城游戏的电脑主机?性能、配置、价格及品牌声誉全方位分析与建议
中国电磁发射多管火箭炮技术解析:能否命中千米外目标?
如何打造好团队发型
2024 年有多少只神奇宝贝?所有类型和世代