[发明专利]一种基于JWT的自动续签认证方法有效
申请号: | 202011103322.0 | 申请日: | 2020-10-15 |
公开(公告)号: | CN112260838B | 公开(公告)日: | 2022-02-22 |
发明(设计)人: | 鲁享琳 | 申请(专利权)人: | 四川长虹电器股份有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/40 |
代理公司: | 四川省成都市天策商标专利事务所(有限合伙) 51213 | 代理人: | 郭会 |
地址: | 621000 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 jwt 自动 续签 认证 方法 | ||
本发明公开了一种基于JWT的自动续签认证方法,利用数据库添加、修改和查找唯一有效token的方法来验证JWT,并达到给JWT自动续签的目的;只有在需要添加JWT以及JWT超时和即将超时的时候签发新的token,并同步更新数据库和客户端的token,保证针对每个用户只存储一份最新的JWT;认证过程中,在传统单次验证token签名的流程上增加了与数据库token签名对比的二次验证,过滤掉未过期的失效JWT,有效解决了JWT无法自动续签的问题。本发明的方法可有效解决传统JWT续签方案服务器压力大、内存占用率高、刷新令牌过期和不能过滤未过期失效JWT的问题。
技术领域
本发明涉及JWT认证技术领域,特别涉及一种基于JWT的自动续签认证方法。
背景技术
JWT是json web token缩写。它将用户信息加密到token里,服务器不保存任何用户信息。服务器通过使用保存的密钥验证token的正确性,只要正确即通过验证。服务器不保存任何用户信息,即JWT是无状态的。一旦签发一个JWT,在到期之前就会始终有效,无法中途废弃。要改变JWT的有效时间,就要签发新的JWT。但是如果存在已经发布且还没过期的JWT,由于旧的JWT还没过期,拿着这个旧的JWT依旧可以登录,那登录后服务端从JWT中拿到的信息就是过时的。所以,JWT不支持自动续签。
目前,针对上述问题现有技术中大致有以下三类处理方式:
1.每次请求都返回一个新的JWT给客户端。每次收到请求都要重新运算出新的JWT,加大了服务器的处理压力。
2.在redis中单独为每个JWT设置了过期时间,每次访问时刷新JWT的过期时间,若JWT不存在于redis中则认为过期。这会占用大量内存空间,大大提高了redis缓存的故障概率。
3.同时签发两个token:access_token和refresh_token。refresh_token的有效时间比access_token长,专门用于access_token续签的时候刷新token。但是refresh_token过期后,就无法续签了。
因此,在JWT标准下,token都是无状态的,所以上述三种方式都不能过滤未过期的失效JWT。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种基于JWT的自动续签认证方法,利用数据库添加、修改和查找唯一有效token的方法来验证JWT,并达到给JWT自动续签的目的;只有在需要添加JWT以及JWT超时和即将超时的时候签发新的token,并同步更新数据库和客户端的token,保证针对每个用户只存储一份最新的JWT;认证过程中,在传统单次验证token签名的流程上增加了与数据库token签名对比的二次验证,过滤掉未过期的失效JWT,有效解决了JWT无法自动续签的问题。
为了达到上述的技术效果,本发明采取以下技术方案:
一种基于JWT的自动续签认证方法,包括以下步骤:
A.建立token的数据库存储表用于存储token信息;包括:主键、用户id、token值、认证状态;其中,用户id用于存储用户的唯一标识,token值用于存储最新有效的JWT,认证状态用于记录该用户是否正在进行身份认证流程;
B.生成新的JWT;所述JWT由三部分组成:用于存放签名采用的加密方式的头部header、存放有效信息的载荷payload、签名signature;
C.截取token中的payload载荷部分,获取用户id和过期时间;
D.根据获取的过期时间,在JWT过期或即将过期时生成新token并传给客户端;
E.对每一次认证流程进行防重复认证检测,保证每个用户同时只能触发一个认证;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川长虹电器股份有限公司,未经四川长虹电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011103322.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种自动刨坑造壤机
- 下一篇:一种面向高度集成化的拉曼高阶拓扑激光源设计方法