一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于令牌的认证方法、装置、设备及存储介质与流程

2022-05-08 05:57:31 来源:中国专利 TAG:


1.本发明涉及认证鉴权技术领域,尤其涉及一种基于令牌的认证方法、装置、设备及存储介质。


背景技术:

2.随着互联网金融的日益发展,金融业务线上化产品覆盖度越来越高,其产品种类和数量也越来越多,传统的应用开发方式逐渐难以满足产品的开发需求。
3.为了解决产品种类繁多复杂的问题,金融业务提供商往往会在同一个应用程序中集成多个业务模块,并支持第三方业务功能的添加。然而每一业务模块都需要单独进行身份认证,效率低下,浪费了硬件和软件资源。


技术实现要素:

4.本发明提供了一种基于令牌的认证方法、装置、设备及存储介质,以实现请求方的统一认证和鉴权,提高认证效率。
5.根据本发明的一方面,提供了一种基于令牌的认证方法,包括:
6.从业务请求中获取业务类型和目标临时令牌;
7.从共享存储区域获取与所述目标临时令牌关联的目标复活令牌;
8.根据所述目标临时令牌和所述目标复活令牌,对所述业务请求进行认证;
9.在认证通过后,基于所述业务类型对所述业务请求进行处理。
10.根据本发明的另一方面,提供了一种基于令牌的认证装置,包括:
11.临时令牌获取模块,用于从业务请求中获取业务类型和目标临时令牌;
12.复活令牌获取模块,用于从共享存储区域获取与所述目标临时令牌关联的目标复活令牌;
13.业务认证模块,用于根据所述目标临时令牌和所述目标复活令牌,对所述业务请求进行认证;
14.业务处理模块,用于在认证通过后,基于所述业务类型对所述业务请求进行处理。
15.根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
16.至少一个处理器;以及
17.与所述至少一个处理器通信连接的存储器;其中,
18.所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的基于令牌的认证方法。
19.根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的基于令牌的认证方法。
20.本发明实施例通过从共享存储区域中获取目标复活令牌,而非是请求方提供,实
现了请求方的统一认证和鉴权,并支持各类异构前端应用对接,对前端应用的改造需求较小。
21.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
22.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1是根据本发明一实施例提供的一种基于令牌的认证方法的流程图;
24.图2是根据本发明又一实施例提供的一种基于令牌的认证方法的流程图;
25.图3是根据本发明又一实施例提供的一种基于令牌的认证装置的结构示意图;
26.图4是实现本发明实施例的电子设备的结构示意图。
具体实施方式
27.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
28.为了更清楚地明确本发明的技术方案和保护范围,首先对本发明的应用场景做出以下说明:
29.随着对前端应用的内部拆分、以及第三方web应用的集成,对于同一请求方在不同业务模块间的认证和验权的要求和需求则越来越重要,原有传统的请求方会话管理机制的方案慢慢遇到瓶颈无法满足需求,亟需设计一套可适应不同前端框架背景下的多个微前端请求方请求身份认证和鉴权的模式;即要满足可支持统一请求方认证的流程,避免多点重复认证互相冲突影响,同时也要支持请求方请求到不同前端应用后,可实时鉴权并动态刷新认证有效期,避免认证意外过期和失效,造成频繁登录,影响请求方体验;此外,更重要的是可支持各第三方web应用系统在不修改或者少量改造的情况下进行集成,实现即插即用,并有利于系统的管理和运营维护。
30.本发明提供了一种面向微前端设计模式下,实现请求方统一认证、动态刷新认证状态、以及验权的方法与装置,基于该方法和装置设计出一套一平台多频道模式的系统,其中平台和频道都可以理解为微前端,平台即主前端应用站点,频道即各个嵌入集成到主站点中的分站点,该系统主要包括一下几个组成部分:
31.平台主站点:即主前端应用或框架,作为请求方的访问入口,对接统一认证模块完成身份认证;并负责集成嵌入到主站点的各个分站点,通过权限配置,以业务功能菜单的形式对客户进行输出展示,当请求方点击分站点菜单时,负责进行统一认证、鉴权,并跳转至相应分站点。
32.微前端:即分站点,作为前端应用模块可独立开发、构建、部署,通过统一资源定位器(url)方式集成到平台主站点菜单,为请求方提供具体的业务功能。
33.图1为本发明一实施例提供的一种基于令牌的认证方法的流程图,本实施例可适用于通过令牌来对请求方进行身份认证的情况,该方法可以由基于令牌的认证装置来执行,该装置可以采用硬件和/或软件的形式实现,配置于具备相应数据处理能力的电子设备中,该设备可以是主站点服务器。如图1所示,该方法包括:
34.s110、从业务请求中获取业务类型和目标临时令牌。
35.其中,令牌(token)自带加密算法和请求方信息,使得令牌在被使用可以很容易的跨服务器,只要不同服务器实现相同解密算法即可支持令牌的使用。在本发明中,业务类型可以是主站点业务请求,也可以是分站点业务请求。目标临时令牌(access_token)为具备一定使用时间期限的临时令牌。
36.具体的,主站点服务器接收请求方发送的业务请求,业务请求中除了业务数据外,还携带有该业务请求的类型信息和用于进行身份认证的目标临时标牌。主站点服务器解析该业务请求,得到该请求的业务类型以及目标临时令牌。
37.s120、从共享存储区域获取与所述目标临时令牌关联的目标复活令牌。
38.其中,目标复活令牌(refresh_token)与目标临时令牌相关联,对于目标临时令牌,其存在着较短的使用期限,而目标复活令牌的有效时间更长,在目标临时令牌过期时,可以通过目标复活令牌对目标临时令牌进行刷新,无需重新登录。共享存储区域(redis)为主站点服务器和各个分站点服务器均可以直接访问的存储区域,站点服务器对业务请求进行身份认证时,均可以从共享存储区域中获取目标复活令牌。示例性的,可以将共享存储区域部署于在统一认证模块中,由统一认证模块来负责请求方信息的认证,如请求方名、密码、手机号、请求方id等、令牌生成、校验和刷新等。并在统一认证模块设置在令牌管理单元,来负责保存请求方的目标复活令牌,并对令牌的过期、废弃进行管理。
39.具体的,获取目标临时令牌之后,如果需要目标复活令牌来进行辅助认证,则从共享存储区域中获取与目标临时令牌关联的目标复活令牌。本发明中目标复活令牌来源于共享存储区域,而非由请求方提供,在处理主站点业务和分站点业务时,均可基于共享存储区域来辅助请求方的认证,实现了请求方统一认证和鉴权。
40.s130、根据所述目标临时令牌和所述目标复活令牌,对所述业务请求进行认证。
41.具体的,对于来自请求方的业务请求,除了要验证请求方的身份,还要对目标临时令牌的使用期限进行认证,判断临时令牌是否过期。如果临时令牌过期,则利用目标复活令牌对目标临时令牌进行刷新,并确定完成对业务请求的认证。
42.可选的,根据所述目标临时令牌和所述目标复活令牌,对所述业务请求进行认证,包括:
43.判断所述目标临时令牌是否过期,如果目标临时令牌过期,根据目标复活令牌生成新的目标临时令牌,并确定认证成功。
44.具体的,由主站点服务器对业务请求中的目标临时令牌进行认证。当目标临时令牌过期时,基于目标临时令牌向共享存储区域获取关联的目标复活令牌;如目标复活令牌未过期,则利用目标复活令牌刷新目标临时令牌,并动态刷新目标复活令牌的过期时间,确定认证成功;如目标临时令牌和目标复活令牌均过期,返回消息提示客户登录已过期请重
token是一个开放标准(rfc 7519),定义了一种用于简洁、自包含的用于通信双方之间以json对象的形式安全传递信息的方法。jwt可以使用hmac算法或者rsa的公钥密钥进行签名。jwt组成包括header、payload和signature三部分。
58.s220、从业务请求中获取业务类型和目标临时令牌。
59.s230、从共享存储区域获取与所述目标临时令牌关联的目标复活令牌;
60.s240、根据所述目标临时令牌和所述目标复活令牌,对所述业务请求进行认证;
61.s250、在认证通过后,基于所述业务类型对所述业务请求进行处理
62.s261、获取基于所述目标复活令牌生成新的目标临时令牌;在所述业务请求执行完成后,获取所述业务请求的执行结果;
63.s262、在所述执行结果中添加新的目标临时令牌,并向请求发发送经添加的执行结果。
64.具体的,在目标临时令牌由于过期而被刷新后,需要将新的目标临时令牌下发至请求方,以供请求方下次发送业务请求使用。本发明中,在生成新的目标临时令牌后,并没有直接下发,而是在业务数据处理完成后,将新的目标临时令牌与执行结果一并下发,减少了服务器与请求方之间的交互次数,优化了两者之间的通信效率。
65.本发明实施例通过为生成目标临时令牌和目标复活令牌之间的关联关系生成关联标识,提高了在共享存储区域中获取关联目标复活令牌的效率,并新的目标临时令牌与执行结果一并下发,减少了服务器与请求方之间的交互次数,优化了两者之间的通信效率。
66.图3为本发明又一实施例提供的一种基于令牌的认证装置的结构示意图。如图3所示,该装置包括:
67.临时令牌获取模块310,用于从业务请求中获取业务类型和目标临时令牌;
68.复活令牌获取模块320,用于从共享存储区域获取与所述目标临时令牌关联的目标复活令牌;
69.业务认证模块330,用于根据所述目标临时令牌和所述目标复活令牌,对所述业务请求进行认证;
70.业务处理模块340,用于在认证通过后,基于所述业务类型对所述业务请求进行处理。
71.本发明实施例所提供的基于令牌的认证装置可执行本发明任意实施例所提供的基于令牌的认证装置方法,具备执行方法相应的功能模块和有益效果。
72.可选的,所述装置还包括:
73.令牌获取模块,用于从请求方的登陆请求中获取登录令牌,根据所述登录令牌对请求方进行身份认证;
74.复活令牌生成模块,用于若所述身份认证通过,基于所述登录令牌生成目标临时令牌和目标复活令牌;
75.关联标识生成模块,用于为所述目标临时令牌和目标复活令牌之间的关联关系生成关联标识;
76.复活令牌存储模块,用于将所述关联标识和所述目标临时令牌,存储至所述共享存储区域;
77.可选的,在所述业务类型为分站点业务的情况下,所述共享存储区域还用于响应
于分站点的业务执行请求,向分站点发送所述目标复活令牌。
78.可选的,所述装置还包括:
79.目标令牌刷新模块,用于获取基于所述目标复活令牌生成新的目标临时令牌;
80.执行结果获取模块,用于在所述业务请求执行完成后,获取所述业务请求的执行结果;
81.执行结果下发模块,用于在所述执行结果中添加新的目标临时令牌,并向请求发发送经添加的执行结果。
82.可选的,所述业务认证模块330,具体用于:
83.判断所述目标临时令牌是否过期,如果目标临时令牌过期,根据目标复活令牌生成新的目标临时令牌,并确定认证成功。
84.进一步说明后的基于令牌的认证装置可执行本发明任意实施例所提供的基于令牌的认证装置方法,具备执行方法相应的功能模块和有益效果。
85.图4示出了可以用来实施本发明的实施例的电子设备40的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
86.如图4所示,电子设备40包括至少一个处理器41,以及与至少一个处理器41通信连接的存储器,如只读存储器(rom)42、随机访问存储器(ram)43等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器41可以根据存储在只读存储器(rom)42中的计算机程序或者从存储单元48加载到随机访问存储器(ram)43中的计算机程序,来执行各种适当的动作和处理。在ram 43中,还可存储电子设备40操作所需的各种程序和数据。处理器41、rom42以及ram 43通过总线44彼此相连。输入/输出(i/o)接口45也连接至总线44。
87.电子设备40中的多个部件连接至i/o接口45,包括:输入单元46,例如键盘、鼠标等;输出单元47,例如各种类型的显示器、扬声器等;存储单元48,例如磁盘、光盘等;以及通信单元49,例如网卡、调制解调器、无线通信收发机等。通信单元49允许电子设备40通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
88.处理器41可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器41的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器41执行上文所描述的各个方法和处理,例如基于令牌的认证方法。
89.在一些实施例中,基于令牌的认证方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元48。在一些实施例中,计算机程序的部分或者全部可以经由rom 42和/或通信单元49而被载入和/或安装到电子设备40上。当计算机程序加载到ram 43并由处理器41执行时,可以执行上文描述的基于令牌的认证方法的一个或多个步骤。备选地,在其他实施例中,处理器41可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于令牌的认证方法。
90.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
91.用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
92.在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
93.为了提供与请求方的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向请求方显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),请求方可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与请求方的交互;例如,提供给请求方的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自请求方的输入。
94.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形请求方界面或者网络浏览器的请求方计算机,请求方可以通过该图形请求方界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
95.计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的
管理难度大,业务扩展性弱的缺陷。
96.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
97.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献