掌桥专利:专业的专利平台
掌桥专利
首页

权限认证方法、装置、计算机设备和存储介质

文献发布时间:2023-06-19 16:04:54



技术领域

本申请涉及云计算安全服务技术领域,特别是涉及一种权限认证方法、装置、计算机设备、存储介质和计算机程序产品。

背景技术

随着金融服务数字化转型,金融服务企业与各类企业平台的合作深入发展,逐渐出现了金融服务生态链。金融服务企业在将金融服务和产品快速发布并部署到不同的合作平台时,金融服务端对不同平台客户端的金融服务访问需要进行权限认证。

在传统技术中通常使用shiro(Apache Shiro)或spring security框架。

但上述spring security框架由于框架繁重,不适用于敏捷开发的项目,而上述shiro(Apache Shiro)框架仅面向个体用户,无法面向平台。

发明内容

基于此,有必要针对上述技术问题,提供一种能够面向平台,以产品为粒度控制接口权限的权限认证方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。

第一方面,本申请提供了一种权限认证方法。所述方法包括:

接收请求端发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端身份验证;

当请求端身份验证成功时,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端;

接收请求端发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。

在其中一个实施例中,初始化请求还携带时间戳标识;根据请求端标识进行请求端身份验证之前,还包括:

根据时间戳对初始化请求的时效进行验证,当初始化请求的时效验证通过,则获取与请求端标识对应的公钥,基于公钥对初始化请求进行解密得到目标产品标识,当初始化请求的时效验证失败,反馈请求失败的信息。

在其中一个实施例中,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,包括:

获取请求端标识对应的产品信息;

通过预设产品授权数据库,查询产品信息对应的授权产品标识,得到请求端标识对应的多个授权产品标识,将授权产品标识对应的产品接口作为请求端标识和目标产品标识对应的以产品为粒度的第一权限信息。

在其中一个实施例中,第二权限信息携带目标授权产品标识,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证,包括:

将第二访问令牌与存储的第一访问令牌进行比对;

当存储的第一访问令牌与第二访问令牌比对成功时,基于关联存储的第一访问令牌与第一权限信息,获取第一访问令牌对应的第一权限信息;

获取第二权限信息,当第二权限信息包含于第一权限信息时,将第一权限信息中与第二权限信息对应的产品接口的接口权限开放给请求端。

在其中一个实施例中,将第一访问令牌与第一权限信息关联存储,包括:

将第一访问令牌、第一权限信息关联存储至共享缓存。

在其中一个实施例中,上述方法还包括:

对共享缓存中存储的数据按照预设存储时间进行删除。

第二方面,本申请还提供了一种权限认证装置。所述装置包括:

初始化模块,用于接收请求端发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端身份验证;

令牌与权限关联模块,用于当请求端身份验证成功时,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端;

权限认证模块,用于接收请求端发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。

在其中一个实施例中,初始化请求还携带时间戳标识;初始化模块还包括:

时效验证子模块,用于根据时间戳对初始化请求的时效进行验证,当初始化请求的时效验证通过,则获取与请求端标识对应的公钥,基于公钥对初始化请求进行解密得到目标产品标识,当初始化请求的时效验证失败,反馈请求失败的信息。

在其中一个实施例中,令牌与权限关联模块包括:

产品信息获取子模块,用于获取请求端标识对应的产品信息;

授权产品标识获取子模块,用于通过预设产品授权数据库,查询产品信息对应的授权产品标识,得到请求端标识对应的多个授权产品标识,将授权产品标识对应的产品接口作为请求端标识和目标产品标识对应的以产品为粒度的第一权限信息。

在其中一个实施例中,第二权限信息携带目标授权产品标识;权限认证模块包括:

令牌比对子模块,用于将第二访问令牌与存储的第一访问令牌进行比对;

权限信息获取子模块,用于当存储的第一访问令牌与第二访问令牌比对成功时,基于关联存储的第一访问令牌与第一权限信息,获取第一访问令牌对应的第一权限信息;

权限开放子模块,用于获取第二权限信息,当第二权限信息包含于第一权限信息时,将第一权限信息中与第二权限信息对应的产品接口的接口权限开放给请求端。

在其中一个实施例中,令牌与权限关联模块包括:

共享缓存子模块,用于将第一访问令牌、第一权限信息关联存储至共享缓存。

在其中一个实施例中,上述装置还包括:

缓存删除模块,用于对共享缓存中存储的数据按照预设存储时间进行删除。

第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一实施例所述的方法的步骤。

第四方面,本申请还提供了一种计算机设备可读存储介质。所述计算机设备可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的方法的步骤。

第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述的方法的步骤。

上述权限认证方法、装置、计算机设备、存储介质和计算机程序产品,首先接收请求端发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端身份验证,便于向请求端定向释放对应的访问权限。进一步,当请求端身份验证成功时,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端。本申请基于请求端的身份验证成功后再对请求段对应的产品进行权限验证,能够实现以产品为粒度控制接口权限的认证与开放,可以单独产品授权。基于产品的单独授权,即使产品更新,则直接添加该产品的权限信息即可,不需要重新研发。进一步,接收请求端发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。本申请通过将第一访问令牌与第一权限信息关联存储,当获取到平台的业务请求时,可以直接基于令牌获取对应的关联信息,比基于令牌去数据库中重新查找要更便捷,提高了效率。

附图说明

图1为一个实施例中权限认证方法的应用环境图;

图2为一个实施例中权限认证方法的流程示意图;

图3为一个实施例中初始化请求的携带信息的示意图;

图4为另一个实施例中第一权限信息的示意图;

图5为另一个实施例中金融服务端对多个请求端的权限认证的流程示意图;

图6为另一个实施例中金融服务端与多个请求端的业务处理的处理结构示意图;

图7为一个实施例中权限认证装置的结构框图;

图8为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请实施例提供的权限认证方法,可以应用于服务器或终端单侧实现,也可以应用于包括终端和服务器的系统,通过终端和服务器的交互实现。

本申请实施例提供的权限认证方法,可以应用于如图1所示的应用环境中。其中,请求端102通过网络与服务端104进行通信。数据存储系统可以存储服务端104需要处理的数据。数据存储系统可以集成在服务端104上,也可以放在云上或其他网络服务器上。服务端104可以给设备提供一个权限认证的环境,服务端104与请求端102进行通信交互,从而进入权限认证的环境,服务端104接收请求端102发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端102的身份验证。进一步,当请求端身份验证成功时,服务端104获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端102。进一步,服务端104接收请求端102发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息。服务端104可以基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。

其中,请求端102可以但不限于是各种个人计算机、笔记本电脑、智能手机和平板电脑等。服务端104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一个实施例中,如图2所示,提供了一种权限认证方法,以该方法应用于包括请求端和金融服务端的系统实现为例进行说明,包括以下步骤:

步骤202,接收请求端发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端身份验证。

在本实施例中,请求端是以平台身份向金融服务端请求调用产品接口的平台对象。可以理解的是,请求端可以使用服务器、前端浏览器或移动端等方式向金融服务端请求调用产品接口。

在本实施例中,如图3所示,初始化请求中可以同时携带多个目标产品标识。

在本实施例中,请求端标识与请求端存在一一对应关系,金融服务端可以基于合作平台列表,对请求端发送的请求端标识进行身份验证。其中,合作平台列表为金融服务端允许业务访问的多个请求端的请求端身份标识的合集。

步骤204,当请求端身份验证成功时,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端。

在本实施例中,第一权限信息是请求端标识和目标产品标识对应的产品的产品接口。

在本实施例中,产品接口可以是产品接口代码、产品接口标识等表现形式。

在本实施例中,当请求端身份验证成功时,基于请求端标识,金融服务端可以查询该请求端标识对应的授权产品标识的集合。进一步,金融服务端可以基于该授权产品标识的集合,查询目标产品标识。

在本实施例中,当请求端标识对应的授权产品标识的集合中存在目标产品标识时,金融服务端可以生成对应请求端标识的第一访问令牌。

在本实施例中,当请求端标识对应的授权产品标识的集合中不存在目标产品标识时,金融服务端可以向请求端反馈产品验证失败的信息。

步骤206,接收请求端发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。

在本实施例中,金融服务端接收请求端发送的业务处理请求后,基于第二令牌与第一令牌的比对,验证请求端身份。

在本实施例中,验证请求端身份成功后,金融服务端可以基于第一权限信息与第二权限信息的比对,验证请求端请求权限的产品是否在该请求端标识对应的授权产品集合中。

在本实施例中,当请求端请求权限的产品在该请求端标识对应的授权产品集合中时,将请求端请求权限的产品的产品接口权限开放给请求端;当请求端请求权限的产品不在该请求端标识对应的授权产品集合中时,金融服务端可以向请求端反馈权限认证失败的信息。

上述权限认证方法中,首先接收请求端发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端身份验证,便于向请求端定向释放对应的访问权限。进一步,当请求端身份验证成功时,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端。进一步,接收请求端发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证,实现以产品为粒度控制接口权限的认证与开放。

在其中一个实施例中,初始化请求还携带时间戳标识。

在本实施例中,根据请求端标识进行请求端身份验证之前,还包括:根据时间戳对初始化请求的时效进行验证,当初始化请求的时效验证通过,则获取与请求端标识对应的公钥,基于公钥对初始化请求进行解密得到目标产品标识,当初始化请求的时效验证失败,反馈请求失败的信息。

在本实施例中,请求端可以初始化请求加密后发送给金融服务端。具体的,请求端可以将包括目标产品标识、请求端身份标识、时间戳等参数的初始化请求,通过RSA(RSAalgorithm)私钥进行加密、签名,再将加密、签名后的初始化请求发送至金融服务端。可以理解的是,请求端可以生成非对称RSA钥对。

在本实施例中,基于合作平台列表,金融服务端可以获取其允许业务访问的多个请求端的非对称RSA钥对中的公钥,用于对加密、签名后的初始化请求进行解密。

在本实施例中,金融服务端基于时间戳对初始化请求的时效进行验证,可以避免非法渠道截获请求端的初始化请求,利用请求端的历史签名向金融服务端重复请求获取第一访问令牌,从而造成金融信息泄露和金融财产损失的风险。

在其中一个实施例中,如图4所示,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,包括:获取请求端标识对应的产品信息;通过预设产品授权数据库,查询产品信息对应的授权产品标识,得到请求端标识对应的多个授权产品标识,将授权产品标识对应的产品接口作为请求端标识和目标产品标识对应的以产品为粒度的第一权限信息。

在本实施例中,产品信息可以包括但不限于产品名称、产品类别等。

在本实施例中,预设产品授权数据库中为金融服务端允许业务授权的多个产品的授权产品信息及授权产品标识。

在本实施例中,金融服务端可以通过预设产品授权数据库,查询请求端标识对应的产品信息所对应的授权产品标识,得到请求端标识对应的多个授权产品标识,从而得到该请求端标识对应的多个授权产品标识的集合,即第一权限信息。

在其中一个实施例中,第二权限信息携带目标授权产品标识。

在本实施例中,如图5所示,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证,包括:将第二访问令牌与存储的第一访问令牌进行比对;当存储的第一访问令牌与第二访问令牌比对成功时,基于关联存储的第一访问令牌与第一权限信息,获取第一访问令牌对应的第一权限信息;获取第二权限信息,当第二权限信息包含于第一权限信息时,将第一权限信息中与第二权限信息对应的产品接口的接口权限开放给请求端。

在本实施例中,金融服务端存储的第一访问令牌,是金融服务端向其允许业务访问的多个合作平台发送过的合作平台对应的第一访问令牌。

在本实施例中,如图6所示,基于请求端可以向金融服务端发送初始化请求,也可以向金融服务端发送业务处理请求,金融服务端可以通过设置拦截器,对请求端发送的信息进行拦截与分析。

在本实施例中,拦截器可以动态拦截在金融服务端与请求端之间产品权限开放的过程中的调用对象,它提供一种机制可以使开发者在产品权限开放动作执行的前后执行一段代码,也可以在产品权限开放动作执行前阻止其执行,同时也提供了一种可以提取产品权限开放动作中可重用部分代码的方式。

在本实施例中,当请求端向金融服务端发送业务处理请求时,金融服务端可以获取业务处理请求中的第二访问令牌,将第二访问令牌与多个合作平台对应的第一访问令牌进行比对,即,对发送该业务处理请求的请求端进行身份验证。

在本实施例中,当金融服务端存储的多个第一访问令牌中个存在与第二访问令牌一致的第一访问令牌时,请求端身份验证成功,金融服务端可以基于关联存储的第一访问令牌与第一权限信息,获取该请求端对应的第一访问令牌对应的第一权限信息。

在本实施例中,第一权限信息为该请求端对应的多个授权产品标识的集合,当第二权限信息包含于第一权限信息时,即第二权限信息中携带的目标授权产品标识所对应的产品,是经过了金融服务端允许业务授权的产品。进一步,如图6所示,金融服务端可以将业务参数转发给服务器,通过服务器将该产品的产品接口的接口权限开放给请求端。

在其中一个实施例中,将第一访问令牌与第一权限信息关联存储,包括:将第一访问令牌、第一权限信息关联存储至共享缓存。

在本实施例中,共享缓存可以是高速存储层,当再次请求共享缓存中的数据时,速度要比访问数据的住存储位置更快。通过将数据存储至共享缓存,当金融服务端需要获取第一访问令牌与第二访问令牌对比对时,金融服务端可以直接从共享缓存中获取第一访问令牌、与第一访问令牌关联存储的第一权限信息,能够高效地重用之前的检索或计算的数据。

在其中一个实施例中,上述方法还包括:对共享缓存中存储的数据按照预设存储时间进行删除。

在本实施例中,金融服务端在对第一访问令牌、第一权限信息进行关联存储时,可以设定存储数据的失效时间,以降低数据的冗余。

在其中一个实施例中,金融服务端接收请求端发送的初始化请求,初始化请求可以携带有请求端标识、目标产品标识,以及时间戳标识。

在本实施例中,金融服务端可以基于初始化请求中的时间戳标识进行时效验证,确认该初始化请求为请求端实时发送,而非非法渠道截获并利用请求端的初始化请求向金融服务端重复请求获取第一访问令牌,可以有效避免金融信息泄露和金融财产损失的风险。

在本实施例中,当时效验证成功后,金融服务端可以基于初始化请求中的请求端标识对该请求端进行身份验证。进一步,在身份验证成功后,金融服务端可以获取该请求端对应的授权产品标识的集合,再基于目标产品标识对该授权产品标识的集合进行查找,得到请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端。

在本实施例中,一个初始化请求中可以包括多个目标产品标识。

在本实施例中,金融服务端在处理一个请求端发送的初始化请求时,还可以同时处理其他请求端发送的初始化请求和/或业务处理请求。

在本实施例中,业务处理请求携带有第二访问令牌与第二权限信息。当金融服务端接收到一请求端发送的业务处理请求时,金融服务端可以基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。

在本实施例中,请求端可以通过前端或服务器作为调用方,向金融服务端发起业务处理请求。

在另一个实施例中,请求端每一次向金融服务端发送业务处理请求之前,接都可以向金融服务端发送初始化请求,以便于金融服务端验证该请求端身份,有利于后续的产品访问权限的定向释放。

应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的权限认证方法的权限认证装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个权限认证装置实施例中的具体限定可以参见上文中对于权限认证方法的限定,在此不再赘述。

在一个实施例中,如图7所示,提供了一种权限认证装置,包括:初始化模块702、令牌与权限关联模块704和权限认证模块706,其中:

初始化模块702,用于接收请求端发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端身份验证。

令牌与权限关联模块704,用于当请求端身份验证成功时,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端。

权限认证模块706,用于接收请求端发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。

在其中一个实施例中,初始化请求还携带时间戳标识。

在本实施例中,初始化模块702还可以包括:

时效验证子模块,用于根据时间戳对初始化请求的时效进行验证,当初始化请求的时效验证通过,则获取与请求端标识对应的公钥,基于公钥对初始化请求进行解密得到目标产品标识,当初始化请求的时效验证失败,反馈请求失败的信息。

在其中一个实施例中,令牌与权限关联模块704可以包括:

产品信息获取子模块,用于获取请求端标识对应的产品信息。

授权产品标识获取子模块,用于通过预设产品授权数据库,查询产品信息对应的授权产品标识,得到请求端标识对应的多个授权产品标识,将授权产品标识对应的产品接口作为请求端标识和目标产品标识对应的以产品为粒度的第一权限信息。

在其中一个实施例中,第二权限信息携带目标授权产品标识。

在本实施例中,权限认证模块706可以包括:

令牌比对子模块,用于将第二访问令牌与存储的第一访问令牌进行比对。

权限信息获取子模块,用于当存储的第一访问令牌与第二访问令牌比对成功时,基于关联存储的第一访问令牌与第一权限信息,获取第一访问令牌对应的第一权限信息。

权限开放子模块,用于获取第二权限信息,当第二权限信息包含于第一权限信息时,将第一权限信息中与第二权限信息对应的产品接口的接口权限开放给请求端。

在其中一个实施例中,令牌与权限关联模块704可以包括:

共享缓存子模块,用于将第一访问令牌、第一权限信息关联存储至共享缓存。

在其中一个实施例中,上述装置还包括:

缓存删除模块,用于对共享缓存中存储的数据按照预设存储时间进行删除。上述权限认证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储第一令牌、第一权限信息、产品接口等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种权限认证方法。

本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收请求端发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端身份验证;当请求端身份验证成功时,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端;接收请求端发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。

在其中一个实施例中,处理器执行计算机程序时还实现初始化请求还携带时间戳标识。

在本实施例中,处理器执行计算机程序时实现根据请求端标识进行请求端身份验证之前,还可以包括:根据时间戳对初始化请求的时效进行验证,当初始化请求的时效验证通过,则获取与请求端标识对应的公钥,基于公钥对初始化请求进行解密得到目标产品标识,当初始化请求的时效验证失败,反馈请求失败的信息。

在其中一个实施例中,处理器执行计算机程序时实现获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,可以包括:获取请求端标识对应的产品信息;通过预设产品授权数据库,查询产品信息对应的授权产品标识,得到请求端标识对应的多个授权产品标识,将授权产品标识对应的产品接口作为请求端标识和目标产品标识对应的以产品为粒度的第一权限信息。

在其中一个实施例中,第二权限信息携带目标授权产品标识。

在本实施例中,处理器执行计算机程序时实现基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证,可以包括:将第二访问令牌与存储的第一访问令牌进行比对;当存储的第一访问令牌与第二访问令牌比对成功时,基于关联存储的第一访问令牌与第一权限信息,获取第一访问令牌对应的第一权限信息;获取第二权限信息,当第二权限信息包含于第一权限信息时,将第一权限信息中与第二权限信息对应的产品接口的接口权限开放给请求端。

在其中一个实施例中,处理器执行计算机程序时实现将第一访问令牌与第一权限信息关联存储,可以包括:将第一访问令牌、第一权限信息关联存储至共享缓存。

在其中一个实施例中,处理器执行计算机程序时还可以实现:对共享缓存中存储的数据按照预设存储时间进行删除。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收请求端发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端身份验证;当请求端身份验证成功时,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端;接收请求端发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。

在其中一个实施例中,计算机程序被处理器执行时还实现初始化请求还携带时间戳标识。

在本实施例中,计算机程序被处理器执行时实现根据请求端标识进行请求端身份验证之前,还可以包括:根据时间戳对初始化请求的时效进行验证,当初始化请求的时效验证通过,则获取与请求端标识对应的公钥,基于公钥对初始化请求进行解密得到目标产品标识,当初始化请求的时效验证失败,反馈请求失败的信息。

在其中一个实施例中,计算机程序被处理器执行时实现获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,可以包括:获取请求端标识对应的产品信息;通过预设产品授权数据库,查询产品信息对应的授权产品标识,得到请求端标识对应的多个授权产品标识,将授权产品标识对应的产品接口作为请求端标识和目标产品标识对应的以产品为粒度的第一权限信息。

在其中一个实施例中,第二权限信息携带目标授权产品标识。

在本实施例中,计算机程序被处理器执行时实现基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证,可以包括:将第二访问令牌与存储的第一访问令牌进行比对;当存储的第一访问令牌与第二访问令牌比对成功时,基于关联存储的第一访问令牌与第一权限信息,获取第一访问令牌对应的第一权限信息;获取第二权限信息,当第二权限信息包含于第一权限信息时,将第一权限信息中与第二权限信息对应的产品接口的接口权限开放给请求端。

在其中一个实施例中,计算机程序被处理器执行时实现将第一访问令牌与第一权限信息关联存储,可以包括:将第一访问令牌、第一权限信息关联存储至共享缓存。

在其中一个实施例中,计算机程序被处理器执行时还可以实现:对共享缓存中存储的数据按照预设存储时间进行删除。

在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:接收请求端发送的初始化请求,初始化请求携带有请求端标识和目标产品标识,根据请求端标识进行请求端身份验证;当请求端身份验证成功时,获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,并生成对应请求端标识的第一访问令牌,将第一访问令牌与第一权限信息关联存储,并将第一访问令牌发送给请求端;接收请求端发送的业务处理请求,业务处理请求携带有第二访问令牌与第二权限信息,基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证。

在其中一个实施例中,计算机程序被处理器执行时实现初始化请求还携带时间戳标识。

在本实施例中,计算机程序被处理器执行时实现根据请求端标识进行请求端身份验证之前,还可以包括:根据时间戳对初始化请求的时效进行验证,当初始化请求的时效验证通过,则获取与请求端标识对应的公钥,基于公钥对初始化请求进行解密得到目标产品标识,当初始化请求的时效验证失败,反馈请求失败的信息。

在其中一个实施例中,计算机程序被处理器执行时实现获取请求端标识和目标产品标识对应的以产品为粒度的第一权限信息,可以包括:获取请求端标识对应的产品信息;通过预设产品授权数据库,查询产品信息对应的授权产品标识,得到请求端标识对应的多个授权产品标识,将授权产品标识对应的产品接口作为请求端标识和目标产品标识对应的以产品为粒度的第一权限信息。

在其中一个实施例中,第二权限信息携带目标授权产品标识。

在本实施例中,计算机程序被处理器执行时实现基于第二访问令牌、第一访问令牌、第一权限信息和与第二权限信息进行权限认证,可以包括:将第二访问令牌与存储的第一访问令牌进行比对;当存储的第一访问令牌与第二访问令牌比对成功时,基于关联存储的第一访问令牌与第一权限信息,获取第一访问令牌对应的第一权限信息;获取第二权限信息,当第二权限信息包含于第一权限信息时,将第一权限信息中与第二权限信息对应的产品接口的接口权限开放给请求端。

在其中一个实施例中,计算机程序被处理器执行时实现将第一访问令牌与第一权限信息关联存储,可以包括:将第一访问令牌、第一权限信息关联存储至共享缓存。

在其中一个实施例中,计算机程序被处理器执行时还可以实现:对共享缓存中存储的数据按照预设存储时间进行删除。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

技术分类

06120114692947