CN112671539A - 一种处理多请求令牌过期续签的方法、系统、介质及设备 - Google Patents
一种处理多请求令牌过期续签的方法、系统、介质及设备 Download PDFInfo
- Publication number
- CN112671539A CN112671539A CN202011319457.0A CN202011319457A CN112671539A CN 112671539 A CN112671539 A CN 112671539A CN 202011319457 A CN202011319457 A CN 202011319457A CN 112671539 A CN112671539 A CN 112671539A
- Authority
- CN
- China
- Prior art keywords
- token
- request
- service database
- user
- refreshing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000012545 processing Methods 0.000 title abstract description 10
- 238000012795 verification Methods 0.000 claims description 3
- 230000001960 triggered effect Effects 0.000 claims description 2
- 230000000977 initiatory effect Effects 0.000 abstract description 3
- 238000012423 maintenance Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种处理多请求令牌过期续签的方法,服务端设置远程字典服务数据库存储令牌,服务端判断远程字典服务数据库中是否有该令牌,用户端初始化请求缓存数组和标志位,通过对标志位赋值验证令牌是否正在刷新的操作,并对令牌进行刷新次数的初始化,服务端判断远程字典服务数据库中是否有该令牌并且判断该令牌是否为第一次刷新,本发明使用一个令牌结合远程字典服务数据库代替使用两个令牌进行访问和续期的方法,该方法可以在用户注销或者修改密码时减少一次令牌的维护;分别在客户端和服务端设置标记,可以防止令牌重复刷新的问题,实现了在同一个请求中判断令牌是否过期和刷新令牌,而不是在一次请求返回令牌过期后再发起刷新令牌请求。
Description
技术领域
本发明涉及互联网安全领域,特别是涉及一种处理多请求令牌过期续签的方法、系统、介质及设备。
背景技术
当前在前后端分离的开发模式下,服务端在用户登录成功后生成两个令牌,一个为访问的访问令牌,另一个为刷新续期的续期令牌,客户端接收两个令牌并储存在本地空间中,客户端在请求并接收到令牌过期的结果后,发起刷新请求,服务端校验续期令牌通过后,生成新的令牌和续期令牌存放到远程字典服务中并返回给客户端。在用户端添加一个与令牌配置匹配的网络请求缓存数组,将令牌过期的网络请求添加到这个数组中,再利用挑选算法定时挑选出一个发起令牌刷新请求并获取新令牌。
现有的技术方案有以下几个缺点:
1、服务端生成两个令牌就需要维护两个令牌,由于JSON Web令牌的无状态性,在用户注销和修改密码时,需要同时使这两个令牌失效。
2、客户端在令牌过期时需要携带续期令牌再次发起刷新请求,这样就比直接刷新多一次请求,而且客户端定期从待请求数组中挑选请求并发送刷新请求的方式有延时。
发明内容
本发明主要解决的技术问题是提供一种处理多请求令牌过期续签的方法、系统、设备及介质,能够解决用户频繁登录,用户端重复请求刷新,用户端在进行令牌刷新时减少令牌的维护次数,令牌在服务端远程字典服务数据库中需要定期进行维护的问题。
为解决上述技术问题,本发明采用的一个技术方案是:一种处理多请求令牌过期续签的方法,包括以下步骤:
服务端设置远程字典服务数据库,存储令牌,并记录令牌刷新次数;
用户端初始化请求缓存数组,初始化标志位,通过对标志位赋值验证令牌是否正在刷新;
当用户请求携带令牌访问服务端时,服务端根据远程字典服务数据库中是否有该令牌执行重新登录或者刷新操作;
服务端执行刷新操作时,用户的重复请求携带令牌发送到服务端,服务端判断令牌刷新次数,若此用户请求携带的令牌已经在刷新,返回待刷新指令和错误码;
返回错误码将用户端请求缓存数组标志位赋值;
刷新令牌请求携带刷新成功的令牌返回用户端后,对用户端请求缓存数组标志位赋值。
进一步,所述请求缓存数组用来存储用户请求,请求缓存数组标志位分为错误和正确;所述标志位赋值为错误表示没有令牌在刷新中;所述标志位赋值为正确表示有令牌正在刷新。
进一步,所述服务端判断远程字典服务数据库中是否有该令牌,若没有则重新登录或者显示没有鉴权,若有则将服务端的该令牌的刷新次数设置为1,并生成新的令牌,将新的令牌刷新进远程字典服务数据库中并返回用户端。
进一步,所述标志位赋值为正确时,刷新令牌请求与其他未发送的刷新请求一起被存储在缓存数组中;所述标志位赋值为错误时,表示令牌刷新完毕,触发缓存数组中的刷新请求,携带新令牌向服务端发起请求。
进一步,所述令牌本身带有失效时间,所述远程字典服务数据库失效时间设置为令牌本身失效时间的整数倍,在远程字典服务数据库中初始化该令牌的刷新次数为0次。
一种处理多请求令牌过期续签的系统,包括:用户端、服务端、请求缓存数组和远程字典服务数据库;
用户端分别与请求缓存数组和远程字典服务数据库相连,用户端用于发送用户请求和令牌以及接收刷新成功的令牌;
请求缓存数组与远程字典服务数据库相连,将用户请求缓存并发送到远程字典服务数据库,请求缓存数组进行是否有令牌正在刷新的校验,通过对请求缓存数组标志位赋值,对服务端与用户端是否进行过期令牌刷新过程进行判断;
远程字典服务数据库与服务端相连,远程字典服务数据库用来存储用户请求生成的令牌,远程字典服务数据库失效时间设置为令牌本身失效时间的整数倍;
服务端设有计数器,对过期令牌进行计数,并对远程字典服务数据库是否存在与过期令牌对应的令牌进行判断。
进一步,所述标志位赋值为正确时表示有过期令牌正在进行刷新,请求缓存数组将所有的用户请求缓存,等待过期令牌刷新成功,再将用户请求释放;标志位赋值为错误,表示没有过期令牌进行刷新,请求缓存数组将用户请求发送到远程字典服务数据库。
一种处理多请求令牌过期续签的介质,用于存储一种处理多请求令牌过期续签的方法所用到的计算机软件指令,其包括一种处理多请求令牌过期续签的方法所设计的程序。
一种处理多请求令牌过期续签的设备,包括:处理器、存储器,所述存储器用于存储处理令牌多请求续签的方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
本发明的有益效果是:本发明使用一个令牌结合远程字典服务数据库代替使用两个令牌进行访问和续期的方法,该方法可以在用户注销或者修改密码时减少一次令牌的维护;分别在客户端和服务端设置标记,可以防止令牌重复刷新的问题,并且实现了在同一个请求中判断令牌是否过期和刷新令牌,而不是在一次请求返回令牌过期后再发起刷新令牌请求。
附图说明
图1是本发明一种处理多请求令牌过期续签的方法流程图;
图2是本发明一种处理多请求令牌过期续签的系统的结构拓扑图。
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
请参阅图1,本发明实施例包括:一种处理多请求令牌过期续签的方法,包括:
在服务端,设置基于欧洲计算机制造商协会脚本设计语言6.0版本函数的远程字典服务数据库存储生成的令牌,服务端在接受用户登录请求时生成令牌存在远程字典服务数据库,并发送到用户端,服务端接收到用户注销密码和修改密码的请求,该请求携带令牌发送到服务端,服务端首先判断令牌过期是否是因为令牌本身过期,设置远程字典服务失效时间为令牌本身失效时间的两倍,在服务端设置临时计数器,对过期令牌进行计数,防止服务端重复刷新令牌,在远程字典服务数据库中初始化该令牌的刷新次数为0次,当过期请求已经进行刷新操作时,计数器将该令牌刷新次数更新为1次,此时,服务端对用户端其他刷新请求不进行执行;
在用户端,建立一个请求缓存数组,用来存储用户请求,初始化标志位记作正在更新中,标志位赋值错误表示没有令牌在刷新中,此时请求缓存数组将用户的请求发送到服务端,服务端对用户请求执行对应的操作;标志位赋值为正确表示有令牌正在刷新,将此后所有的用户请求缓存在请求缓存数组中;
当用户请求携带过期的令牌访问服务端,服务端先判断远程字典服务数据库中是否有该令牌,若没有则表示需要重新登录或者该用户请求没有鉴权,若有则表示当前的令牌已经过期,需要进行令牌刷新,将服务端的该令牌刷新次数更新为1,并生成新的令牌,将新的令牌刷新进远程字典服务数据库中并返回客户端;
在刷新当前令牌时,该用户的重复请求携带重复过期令牌发送到服务端时,远程字典服务数据库判断令牌过期后,判断该过期令牌刷新次数是否为1,若是则不再刷新,返回待刷新指令到用户端,返回错误码到请求缓存数组;
错误码返回到请求缓存数组,请求缓存数组根据错误码将标志位赋值为正确,并将此后的用户所有请求缓存在请求缓存数组中,等待过期令牌刷新完成;
第一次发起的刷新令牌请求携带刷新成功的令牌返回用户端后,用户端请求缓存数组标志位正在更新中赋值为错误,表示令牌刷新完毕,触发缓存数组中的刷新请求携带新令牌向服务端发起请求。
如图2,一种处理多请求令牌过期续签的系统,包括:用户端、服务端、请求缓存数组和远程字典服务数据库;
用户端分别与请求缓存数组和远程字典服务数据库相连,用于发送用户请求与令牌与接收刷新成功的令牌;
请求缓存数组与远程字典服务数据库相连,将用户请求缓存并发送到远程字典服务数据库,请求缓存数组具有验证功能,通过对请求缓存数组标志位赋值,对服务端与用户端是否进行过期令牌刷新过程进行判断;标志位赋值为正确时表示有过期令牌正在进行刷新,请求缓存数组将所有的用户请求缓存,等待过期令牌刷新成功,再将用户请求释放;标志位赋值为错误,表示没有过期令牌进行刷新,请求缓存数组将用户请求发送到远程字典服务数据库;
远程字典服务数据库与服务端相连,用来存储用户请求生成的令牌,并将远程字典服务数据库失效时间设置为令牌本身失效时间的两倍,因为JOSN Web令牌的无状态性导致令牌过期之前不能强制过期,使用存储的方式可以顺便解决用户注销和修改密码的问题,注销和修改密码后,远程字典服务数据库中不再保存之前的令牌,可以实现强制过期和修改。
服务端设有计数器,对过期令牌进行计数,并对过期令牌与远程字典服务数据库是否存在对应的令牌进行判断。
一种处理多请求令牌过期续签的介质,用于存储一种处理多请求令牌过期续签的方法所用到的计算机软件指令,其包括一种处理多请求令牌过期续签的方法所设计的程序。
一种处理多请求令牌过期续签的设备,包括:处理器、存储器,所述存储器用于存储处理多请求令牌续签的方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种处理多请求令牌过期续签的方法,其特征在于,包括以下步骤:
服务端设置远程字典服务数据库,存储令牌,并记录令牌刷新次数;
用户端初始化请求缓存数组,初始化标志位,通过对标志位赋值验证令牌是否正在刷新;
当用户请求携带令牌访问服务端时,服务端根据远程字典服务数据库中是否有该令牌执行重新登录或者刷新操作;
服务端执行刷新操作时,用户的重复请求携带令牌发送到服务端,服务端判断令牌刷新次数,若此用户请求携带的令牌已经在刷新,返回待刷新指令和错误码;
返回错误码将用户端请求缓存数组标志位赋值;
刷新令牌请求携带刷新成功的令牌返回用户端后,对用户端请求缓存数组标志位赋值。
2.根据权利要求1所述的一种处理多请求令牌过期续签的方法,其特征在于:所述请求缓存数组用来存储用户请求,请求缓存数组标志位分为错误和正确;所述标志位赋值为错误表示没有令牌在刷新中;所述标志位赋值为正确表示有令牌正在刷新。
3.根据权利要求1所述的一种处理多请求令牌过期续签的方法,其特征在于:所述服务端判断远程字典服务数据库中是否有该令牌,若没有则重新登录或者显示没有鉴权,若有则将服务端的该令牌的刷新次数设置为1,并生成新的令牌,将新的令牌刷新进远程字典服务数据库中并返回用户端。
4.根据权利要求2所述的一种处理多请求令牌过期续签的方法,其特征在于:所述标志位赋值为正确时,刷新令牌请求与其他未发送的刷新请求一起被存储在缓存数组中;所述标志位赋值为错误时,表示令牌刷新完毕,触发缓存数组中的刷新请求,携带新令牌向服务端发起请求。
5.根据权利要求1所述的一种处理多请求令牌过期续签的方法,其特征在于:所述令牌本身带有失效时间,所述远程字典服务数据库失效时间设置为令牌本身失效时间的整数倍,在远程字典服务数据库中初始化该令牌的刷新次数为0次。
6.一种处理多请求令牌过期续签的系统,其特征在于,包括:用户端、服务端、请求缓存数组和远程字典服务数据库;
用户端分别与请求缓存数组和远程字典服务数据库相连,用户端用于发送用户请求和令牌以及接收刷新成功的令牌;
请求缓存数组与远程字典服务数据库相连,将用户请求缓存并发送到远程字典服务数据库,请求缓存数组进行是否有令牌正在刷新的校验,通过对请求缓存数组标志位赋值,对服务端与用户端是否进行过期令牌刷新过程进行判断;
远程字典服务数据库与服务端相连,远程字典服务数据库用来存储用户请求生成的令牌,远程字典服务数据库失效时间设置为令牌本身失效时间的整数倍;
服务端设有计数器,对过期令牌进行计数,并对远程字典服务数据库是否存在与过期令牌对应的令牌进行判断。
7.根据权利要求6所述的一种处理令牌过期多请求续签的系统,其特征在于:所述标志位赋值为正确时表示有过期令牌正在进行刷新,请求缓存数组将所有的用户请求缓存,等待过期令牌刷新成功,再将用户请求释放;标志位赋值为错误,表示没有过期令牌进行刷新,请求缓存数组将用户请求发送到远程字典服务数据库。
8.一种处理令牌过期多请求续签的介质,其特征在于,用于存储上述权利要求1~5任一项所述一种处理令牌过期多请求续签的方法所用到的计算机软件指令,其包括一种处理令牌过期多请求续签的方法所设计的程序。
9.一种处理令牌过期多请求续签的设备,其特征在于,包括:处理器、存储器,所述存储器用于存储执行权利要求1~5中任一项所述处理令牌多请求续签的方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011319457.0A CN112671539B (zh) | 2020-11-23 | 2020-11-23 | 一种处理多请求令牌过期续签的方法、系统、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011319457.0A CN112671539B (zh) | 2020-11-23 | 2020-11-23 | 一种处理多请求令牌过期续签的方法、系统、介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112671539A true CN112671539A (zh) | 2021-04-16 |
CN112671539B CN112671539B (zh) | 2022-09-20 |
Family
ID=75403536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011319457.0A Active CN112671539B (zh) | 2020-11-23 | 2020-11-23 | 一种处理多请求令牌过期续签的方法、系统、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112671539B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114006698A (zh) * | 2021-12-31 | 2022-02-01 | 荣耀终端有限公司 | token刷新方法、装置、电子设备及可读存储介质 |
CN114422226A (zh) * | 2022-01-13 | 2022-04-29 | 企查查科技有限公司 | 令牌处理方法、装置、计算机设备、存储介质 |
CN114513313A (zh) * | 2022-04-20 | 2022-05-17 | 云账户技术(天津)有限公司 | 基于令牌的鉴权方法、装置、电子设备及可读存储介质 |
CN115442437A (zh) * | 2022-11-07 | 2022-12-06 | 北京智象信息技术有限公司 | 一种token过期自动续签认证方法、装置、设备和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104350501A (zh) * | 2012-05-25 | 2015-02-11 | 佳能株式会社 | 授权服务器和客户端设备、服务器协作系统和令牌管理方法 |
CN105577691A (zh) * | 2016-02-03 | 2016-05-11 | 飞天诚信科技股份有限公司 | 一种安全访问方法和服务器 |
CN109379192A (zh) * | 2018-09-21 | 2019-02-22 | 广州小鹏汽车科技有限公司 | 一种登录验证处理方法、系统及装置 |
CN110266703A (zh) * | 2019-06-25 | 2019-09-20 | 广州小鹏汽车科技有限公司 | token刷新方法、装置、存储介质及控制终端 |
CN110381078A (zh) * | 2019-07-29 | 2019-10-25 | 迈普通信技术股份有限公司 | 令牌续期的确定方法、装置、电子设备及存储介质 |
-
2020
- 2020-11-23 CN CN202011319457.0A patent/CN112671539B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104350501A (zh) * | 2012-05-25 | 2015-02-11 | 佳能株式会社 | 授权服务器和客户端设备、服务器协作系统和令牌管理方法 |
CN105577691A (zh) * | 2016-02-03 | 2016-05-11 | 飞天诚信科技股份有限公司 | 一种安全访问方法和服务器 |
CN109379192A (zh) * | 2018-09-21 | 2019-02-22 | 广州小鹏汽车科技有限公司 | 一种登录验证处理方法、系统及装置 |
CN110266703A (zh) * | 2019-06-25 | 2019-09-20 | 广州小鹏汽车科技有限公司 | token刷新方法、装置、存储介质及控制终端 |
CN110381078A (zh) * | 2019-07-29 | 2019-10-25 | 迈普通信技术股份有限公司 | 令牌续期的确定方法、装置、电子设备及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114006698A (zh) * | 2021-12-31 | 2022-02-01 | 荣耀终端有限公司 | token刷新方法、装置、电子设备及可读存储介质 |
CN114006698B (zh) * | 2021-12-31 | 2022-03-08 | 荣耀终端有限公司 | token刷新方法、装置、电子设备及可读存储介质 |
CN114422226A (zh) * | 2022-01-13 | 2022-04-29 | 企查查科技有限公司 | 令牌处理方法、装置、计算机设备、存储介质 |
CN114513313A (zh) * | 2022-04-20 | 2022-05-17 | 云账户技术(天津)有限公司 | 基于令牌的鉴权方法、装置、电子设备及可读存储介质 |
CN115442437A (zh) * | 2022-11-07 | 2022-12-06 | 北京智象信息技术有限公司 | 一种token过期自动续签认证方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112671539B (zh) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112671539B (zh) | 一种处理多请求令牌过期续签的方法、系统、介质及设备 | |
CN110381078B (zh) | 令牌续期的确定方法、装置、电子设备及存储介质 | |
CN109379192B (zh) | 一种登录验证处理方法、系统及装置 | |
US20160080383A1 (en) | Recovery from rolling security token loss | |
US10621651B2 (en) | Automatic recharge system and method, and server | |
CN109639730A (zh) | 基于令牌的http无状态协议下信息系统数据接口认证方法 | |
CN111464615A (zh) | 请求处理方法、装置、服务器及存储介质 | |
CN110995703B (zh) | 业务处理请求的处理方法、装置、电子设备 | |
US20170279706A1 (en) | Link processing method, apparatus, and system | |
WO2023045970A1 (zh) | 一种确定访问令牌的方法及装置 | |
US20220377556A1 (en) | Internet-of-things device registration method and apparatus, device, and storage medium | |
CN109992431A (zh) | 一种实现重试的方法及终端 | |
US9386114B2 (en) | Systems and methods for accessing an update server | |
CN114513313B (zh) | 基于令牌的鉴权方法、装置、电子设备及可读存储介质 | |
CN112861092B (zh) | 基于jwt认证应用实现单终端登录限制的方法及系统 | |
CN116010926A (zh) | 登陆认证方法、装置、计算机设备和存储介质 | |
US20210336887A1 (en) | Method, apparatus and central node server for managing traffic features | |
US20220358246A1 (en) | Systems and methods for local data storage | |
CN111935059B (zh) | 一种设备标识的处理方法、装置及系统 | |
WO2021077931A1 (zh) | 一种注册登录方法、设备和计算机可读存储介质 | |
US9210147B1 (en) | Method, apparatus and computer program product for assessing risk associated with authentication requests | |
CN106878247A (zh) | 一种攻击识别方法和装置 | |
US11044251B2 (en) | Method and system for authentication via audio transmission | |
CN115174142B (zh) | 一种网关统一认证管理方法、装置、存储介质和计算机 | |
CN114465785B (zh) | 服务器登录管理方法、系统、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |