CN114637969A - 目标对象的鉴权方法及装置 - Google Patents
目标对象的鉴权方法及装置 Download PDFInfo
- Publication number
- CN114637969A CN114637969A CN202210317291.1A CN202210317291A CN114637969A CN 114637969 A CN114637969 A CN 114637969A CN 202210317291 A CN202210317291 A CN 202210317291A CN 114637969 A CN114637969 A CN 114637969A
- Authority
- CN
- China
- Prior art keywords
- target object
- authentication
- tag
- label
- authentication service
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000015654 memory Effects 0.000 claims description 18
- 238000012986 modification Methods 0.000 abstract description 17
- 230000004048 modification Effects 0.000 abstract description 17
- 238000004590 computer program Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000007726 management method Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Abstract
本申请提供一种目标对象的鉴权方法及装置,该方法包括:在接收用户对目标对象的操作请求时触发鉴权请求,鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,鉴权服务用于确定用户是否具有操作目标对象的权限;根据目标对象的标签的依赖模式,控制鉴权服务获取目标对象的标签,依赖模式用于表征目标对象所依赖的标签的存储方式;根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。由于目标对象的标签的获取通过调用鉴权服务实现,从而使得在为目标服务添加标签时只需修改鉴权服务对应的软件开发工具包,而无需修改目标对象本身,提高了目标对象的标签的修改效率,避免了因标签修改导致的鉴权二义性的问题。
Description
技术领域
本发明涉及信息处理技术领域,尤其涉及一种目标对象的鉴权方法及装置。
背景技术
随着云技术的发展,越来越多的云资源实例被用户使用。由于不同用途的云资源需要被拆分管理,并且在不同场景下的云资源也存在不同的管理方式,从而导致了对于云资源实例的运维管理等操作变得越来越困难。
相关技术中,可以使用标签来对云资源进行分类,并在用户使用云资源实例时进行标签鉴权,从而简化云资源实例的运维管理难度。相应的,在云资源的产品接入包含标签鉴权服务的软件开发工具包(Software Development Kit,SDK)版本时,可以通过修改云资源中调用鉴权服务的代码,新增云资源的标签作为鉴权条件。
然而,现有的在云资源上添加标签的方式,需要对每个云资源调用鉴权服务的代码进行逐一修改,容易遗漏个别云资源,从而导致出现鉴权二义性。
发明内容
本申请实施例提供一种目标对象的鉴权方法及装置,以解决现有技术中因标签修改导致的鉴权二义性的问题。
第一方面,本申请实施例提供一种目标对象的鉴权方法,所述方法包括:
在接收用户对目标对象的操作请求时触发鉴权请求,所述鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,所述鉴权服务用于确定所述用户是否具有操作所述目标对象的权限;
根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签,所述依赖模式用于表征所述目标对象所依赖的标签的存储方式;
根据所述目标对象的标签,控制所述鉴权服务确定所述目标对象的鉴权结果。
一种可选的实施方式中,所述依赖模式包括第一模式和第二模式,所述第一模式的目标对象依赖标签服务器存储所述目标对象的标签,所述第二模式的目标对象依赖所述目标对象所在的资源服务器储所述目标对象的标签。
一种可选的实施方式中,所述根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签,包括:
若所述目标对象为所述第一模式,则控制所述鉴权服务向所述标签服务器发送查询请求,所述查询请求用于请求在所述标签服务器的缓存或标签数据库中查询所述目标对象的标签;
接收所述标签服务器发送的所述目标对象的标签。
一种可选的实施方式中,所述根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签,包括:
若所述目标对象为所述第二模式,则控制所述鉴权服务通过回调所述目标对象在初始化时配置的接口获取所述目标对象的标签。
一种可选的实施方式中,所述根据所述目标对象的标签,控制所述鉴权服务确定所述目标对象的鉴权结果,包括:
控制所述鉴权服务查询所述目标对象的标签对应的白名单;
若所述用户在所述目标对象的标签对应的白名单中,则确定所述鉴权结果为具备操作权限。
一种可选的实施方式中,在所述根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签之后,所述方法还包括:
将所述目标对象的标签的依赖模式和/或所述目标对象所在的资源服务器的本地缓存中。
一种可选的实施方式中,所述目标对象包括云资源。
第二方面,本申请实施例提供一种目标对象的鉴权装置,所述装置包括:
触发模块,用于在接收用户对目标对象的操作请求时触发鉴权请求,所述鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,所述鉴权服务用于确定所述用户是否具有操作所述目标对象的权限;
获取模块,用于根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签,所述依赖模式用于表征所述目标对象所依赖的标签的存储方式;
鉴权模块,用于根据所述目标对象的标签,控制所述鉴权服务确定所述目标对象的鉴权结果。
一种可选的实施方式中,所述依赖模式包括第一模式和第二模式,所述第一模式的目标对象依赖标签服务器存储所述目标对象的标签,所述第二模式的目标对象依赖所述目标对象所在的资源服务器储所述目标对象的标签。
一种可选的实施方式中,所述获取模块,具体用于若所述目标对象为所述第一模式,则控制所述鉴权服务向所述标签服务器发送查询请求,所述查询请求用于请求在所述标签服务器的缓存或标签数据库中查询所述目标对象的标签;接收所述标签服务器发送的所述目标对象的标签。
一种可选的实施方式中,所述获取模块,具体用于若所述目标对象为所述第二模式,则控制所述鉴权服务通过回调所述目标对象在初始化时配置的接口获取所述目标对象的标签。
一种可选的实施方式中,所述鉴权模块,具体用于控制所述鉴权服务查询所述目标对象的标签对应的白名单;若所述用户在所述目标对象的标签对应的白名单中,则确定所述鉴权结果为具备操作权限。
一种可选的实施方式中,所述装置还包括:
缓存模块,用于将所述目标对象的标签的依赖模式和/或所述目标对象所在的资源服务器的本地缓存中。
一种可选的实施方式中,所述目标对象包括云资源。
第三方面,本申请还提供一种电子设备,包括:处理器,以及存储器;所述存储器用于存储所述处理器的计算机程序;所述处理器被配置为通过执行所述计算机程序来实现第一方面中任意一种可能的方法。
第四方面,本发明还提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行第一方面中任意一种可能的方法。
第五方面,本公开实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计中所述的方法。
本申请实施例提供的一种目标对象的鉴权方法及装置,首先在接收用户对目标对象的操作请求时触发鉴权请求,该鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,该鉴权服务用于确定用户是否具有操作目标对象的权限。随后,根据目标对象的标签的依赖模式,控制鉴权服务获取目标对象的标签,该依赖模式用于表征目标对象所依赖的标签的存储方式。最后,根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。通过该方式,调用鉴权服务基于目标对象的标签的依赖模式获取目标对象的标签,从而确定目标对象的鉴权结果。由于目标对象的标签的获取通过调用鉴权服务实现,从而使得在为目标服务添加标签时只需修改鉴权服务对应的软件开发工具包,而无需修改目标对象本身,提高了目标对象的标签的修改效率,避免了因标签修改导致的鉴权二义性的问题。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种目标对象的鉴权方法的应用场景示意图;
图2为本申请实施例提供的一种目标对象的鉴权方法的流程示意图;
图3为本申请实施例提供的一种目标对象的鉴权方法的信令交互图;
图4为本申请实施例提供的另一种目标对象的鉴权方法的流程示意图;
图5为本申请实施例提供的再一种目标对象的鉴权方法的流程示意图;
图6为本申请实施例提供的一种鉴权系统的示意图;
图7为本申请实施例提供的一种目标对象的鉴权装置的结构示意图;
图8为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
下面首先对本申请涉及的技术名词进行说明。
鉴权:用于鉴别用户是否具有对某个资源发起某个操作的权限。
标签:为一种标记资源的方式,是一种资源上轻量级关键字取值(key-value)形式存在的元数据(meta)信息,用于对资源进行标记从而简化资源的管理过程。
软件开发工具包(Software Development Kit,SDK):用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合。需要说明的是,本申请涉及的SDK为鉴权SDK。
随着云技术的发展,越来越多的云资源实例被用户使用。由于不同用途的云资源需要被拆分管理,并且在不同场景下的云资源也存在不同的管理方式,从而导致了对于云资源实例的运维管理等操作变得越来越困难。相关技术中,可以使用标签来对云资源进行分类,并在用户使用云资源实例时进行标签鉴权,从而简化云资源实例的运维管理难度。相应的,在云资源的产品接入包含标签鉴权服务的软件开发工具包(Software DevelopmentKit,SDK)版本时,可以通过云资源中修改调用鉴权服务的代码,新增云资源的标签作为鉴权条件。
然而,现有的在云资源上添加标签的方式,不同云资源需要自行制定添加标签的方案,然后自行开发标签查询服务,针对每一处鉴权调用的代码进行修改并查询标签,再将标签添加到鉴权参数中。同时,测试阶段也需要进行全面回归,以防止遗漏。
因此,现有的在云资源上添加标签的方式,需要对每个云资源调用鉴权的代码进行逐一修改,容易遗漏个别云资源,从而导致出现鉴权二义性。
为解决上述问题,本申请实施例提供一种目标对象的鉴权方法及装置,调用鉴权服务基于目标对象的标签的依赖模式获取目标对象的标签,从而确定目标对象的鉴权结果。由于目标对象的标签的获取通过调用鉴权服务实现,从而使得在为目标服务添加标签时只需修改鉴权服务对应的软件开发工具包,而无需修改目标对象本身,提高了目标对象的标签的修改效率,避免了因标签修改导致的鉴权二义性的问题。
下面对本申请实施例涉及的目标对象的鉴权方法的应用场景进行说明。
图1为本申请实施例提供的一种目标对象的鉴权方法的应用场景示意图。如图1所示,用户可以使用终端设备101,并通过应用程序接口(Application ProgrammingInterface,API)网关102向云资源所在的资源服务器103发送操作请求。资源服务器103接收到用户发生的操作请求后,可以通过云资源的标签进行鉴权,来判断用户是否具有操作云资源的权限。其中,云资源的标签可以通过回调初始化时配置的接口获取,也可以通过访问标签服务器104获取。
其中,资源服务器103可以是但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算的由大量计算机或网络服务器构成的云。其中,云计算是分布式计算的一种,由一群松散耦合的计算机组成的一个超级虚拟计算机。
其中,终端设备101可以为平板电脑(pad)、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、智慧家庭(smart home)中的无线终端等。
可以理解,上述目标对象的鉴权方法可以通过本申请实施例提供的目标对象的鉴权装置实现,目标对象的鉴权装置可以是某个设备的部分或全部,例如上述资源服务器,该资源服务器上包括有提供鉴权服务的鉴权SDK。
下面以集成或安装有相关执行代码的鉴权服务器为例,以具体地实施例对本申请实施例的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图2为本申请实施例提供的一种目标对象的鉴权方法的流程示意图。本实施例涉及的是资源服务器如何在接收到用户对目标对象的操作请求时进行鉴权的具体过程。如图2所示,该目标对象的鉴权方法包括:
S201、在接收用户对目标对象的操作请求时触发鉴权请求,鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,鉴权服务用于确定用户是否具有操作目标对象的权限。
在本申请实施例中,当资源服务器接收到用户发起的操作请求后,可以触发鉴权请求来调用鉴权服务,从而对用户是否具有操作目标对象的权限进行确定。
其中,目标对象可以为任意类型的云资源。资源服务器可以理解为具有云资源的服务器。
在一些实施例中,资源服务器上包含有鉴权SDK,该鉴权SDK用于提供资源服务器。
应理解,本申请实施例对于目标对象所在的鉴权服务器如何向调用鉴权服务不作限制,在一些实施例中,鉴权服务器可以通过鉴权API调用鉴权服务。相应的,鉴权服务在被调用后,可以解析接入点名称(Access Point Name,APN),获取APN参数,并将APN参数缓存。
其中,APN参数可以包括名称、移动设备国家代码(MCC)、移动国家代码(MNC)、接入点、类型等。
S202、根据目标对象的标签的依赖模式,控制鉴权服务获取目标对象的标签,依赖模式用于表征目标对象所依赖的标签的存储方式。
在本步骤中,在资源服务器接收用户对目标对象的操作请求时触发鉴权请求后,可以根据目标对象的标签的依赖模式,控制鉴权服务获取目标对象的标签。
应理解,本申请实施例对于鉴权服务如何确定目标对象的标签的依赖模式不作限制,在一些实施例中,鉴权服务可以通过标签服务器的资源依赖模式接口,从标签服务器查询目标对象的标签的依赖模式。
应理解,本申请实施例对于依赖模式的分类不作限制,在一些实施例中,依赖模式包括第一模式和第二模式。第一模式的目标对象依赖标签服务器存储目标对象的标签,也可以理解为强依赖;第二模式的目标对象依赖目标对象所在的资源服务器存储标签,也可以理解为弱依赖。
针对第一模型的目标对象,目标对象所在的资源服务器侧无标签数据。相应的,若目标对象为第一模式,则资源服务器控制鉴权服务可以向标签服务器发送查询请求,从而使标签服务器查询目标对象的标签,并将目标对象的标签发送给资源服务器。
在一些实施例中,标签服务器可以在标签服务器的缓存或标签数据库中查询目标对象的标签。相应的,资源服务器可以将查询到的目标对象的标签存储在缓存中。
需要说明的是,本申请实施例对于资源服务器如何控制鉴权服务向标签服务器发送查询请求也不作限制,在一些实施例中,鉴权服务可以通过标签服务器的标签接口,查询目标对象的标签。
针对第二模型的目标对象,目标对象所在的资源服务器侧存在标签数据。相应的,若目标对象为第二模式,资源服务器可以通过控制鉴权服务回调目标对象在初始化时配置的接口获取目标对象的标签。
在另一些实施例中,资源服务器还可以将目标对象的标签的依赖模式和/或目标对象的标签存储在本地缓存中,从而在后续的重复查询中直接从本地缓存中获取目标对象的标签的依赖模式和/或目标对象的标签,从而减少标签服务器不必要的返回数据。
S203、根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。
在本步骤中,当鉴权服务器获取到目标对象的标签后,可以根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。
应理解,本申请实施例对于如何根据目标对象的标签确定目标对象的鉴权结果不作限制,在一些实施例中,可以通过调用鉴权服务的策略引擎确定目标对象的鉴权。
示例性的,策略引擎中的鉴权策略可以通过白名单实现。资源服务器可以控制鉴权服务查询策略引擎中目标对象的标签对应的白名单。若用户在目标对象的标签对应的白名单中,则资源服务器可以确定鉴权结果为具备操作权限。
在一些实施例中,当资源服务器获取到目标对象的标签后,还可以通过一系列灰度或降级开关决策确定是否将标签添加到鉴权服务的策略引擎的鉴权参数(Request Map)中,再调用鉴权服务的策略引擎确定鉴权结果。
其中,灰度或降级开关决策用于配置用户和标签之间的对应关系。
本申请实施例提供的目标对象的鉴权方法,目标对象仅需要升级SDK,再配置相应的初始化参数以及灰度降级开关即可进行测试上线,显著降低了标签修改的成本,避免出现标签修改遗漏导致的鉴权二义性导致的鉴权二义性。
本申请实施例提供的目标对象的鉴权方法,首先在接收用户对目标对象的操作请求时触发鉴权请求,该鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,该鉴权服务用于确定用户是否具有操作目标对象的权限。随后,根据目标对象的标签的依赖模式,控制鉴权服务获取目标对象的标签,该依赖模式用于表征目标对象所依赖的标签的存储方式。最后,根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。通过该方式,调用鉴权服务基于目标对象的标签的依赖模式获取目标对象的标签,从而确定目标对象的鉴权结果。由于目标对象的标签的获取通过调用鉴权服务实现,从而使得在为目标服务添加标签时只需修改鉴权服务对应的软件开发工具包,而无需修改目标对象本身,提高了目标对象的标签的修改效率,避免了因标签修改导致的鉴权二义性的问题。
在上述实施例的基础上,下面对于目标对象的依赖模式为第一模式时如何获取目标对象的标签进行说明。图3为本申请实施例提供的一种目标对象的鉴权方法的信令交互图。如图3所示,该目标对象的鉴权方法包括:
S301、资源服务器在接收用户对目标对象的操作请求时触发鉴权请求。
其中,鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,鉴权服务用于确定用户是否具有操作目标对象的权限。
S302、若目标对象为第一模式,资源服务器则控制鉴权服务向标签服务器发送查询请求。
其中,第一模式的目标对象依赖标签服务器存储目标对象的标签。
S303、标签服务器在标签服务器的缓存或标签数据库中查询目标对象的标签。
S304、标签服务器向资源服务器发送目标对象的标签。
S305、资源服务器根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。
步骤S301至步骤S305的技术名词、技术效果、技术特征,以及可选实施方式,可参照图2所示的步骤S201至S203理解,对于重复的信息,在此不再累述。
在上述实施例的基础上,下面对于目标对象的依赖模式为第二模式时如何获取目标对象的标签进行说明。图4为本申请实施例提供的另一种目标对象的鉴权方法的流程示意图。如图4所示,其执行主体为资源服务器,该目标对象的鉴权方法包括:
S401、在接收用户对目标对象的操作请求时触发鉴权请求。
其中,鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,鉴权服务用于确定用户是否具有操作目标对象的权限。
S402、若目标对象为第二模式,通过控制鉴权服务回调目标对象在初始化时配置的接口获取目标对象的标签。
S403、根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。
步骤S401至步骤S403的技术名词、技术效果、技术特征,以及可选实施方式,可参照图2所示的步骤S201至S203理解,对于重复的信息,在此不再累述。
在上述实施例的基础上,资源服务器和标签服务器还可以对鉴权中的信息进行缓存,从而减少访问标签服务器进行查询的次数。图5为本申请实施例提供的再一种目标对象的鉴权方法的流程示意图。图6为本申请实施例提供的一种鉴权系统的示意图。如图5和图6所示,其执行主体为资源服务器,该目标对象的鉴权方法包括:
S501、在接收用户对目标对象的操作请求时触发鉴权请求。
其中,鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,鉴权服务用于确定用户是否具有操作目标对象的权限;
S502、根据目标对象的标签的依赖模式,控制鉴权服务获取目标对象的标签,依赖模式用于表征目标对象所依赖的标签的存储方式。
S503、将目标对象的标签的依赖模式和/或目标对象的标签存储在本地缓存中。
应理解,本申请实施例对于目标对象的标签的依赖模式和/或目标对象的缓存时间不做限制,示例性的,可以为1小时、1天、5天期等。
在一些实施例中,资源服务器还可以将APN参数也存储在本地缓存中。
在另一些实施例中,标签服务器也可以将查询到的目标对象的依赖模式和目标对象的标签存储在本地缓存中。
在本申请中,由于云资源每天有上亿万次的调用,SDK必须具备高并发的能力,针对资源类型和ARN解析多读少写的数据,通过进行较长时间的本地缓存,可以有效减少访问标签服务器进行查询的次数,支持云资源的高并发的标签鉴权调用。此外,还可以对多写多读的标签服务器的标签查询接口进行性能优化,通过增加查询缓存减少不必要的返回数据。
本申请中,针对不同云资源的不同使用场景,提供了缓存对应的配置的指导参数,更便于云资源针对自己的场景进行做优化配置。
S504、根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。
步骤S501至步骤S504的技术名词、技术效果、技术特征,以及可选实施方式,可参照图2所示的步骤S201至S203理解,对于重复的信息,在此不再累述。
本申请实施例提供的目标对象的鉴权方法,首先在接收用户对目标对象的操作请求时触发鉴权请求,该鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,该鉴权服务用于确定用户是否具有操作目标对象的权限。随后,根据目标对象的标签的依赖模式,控制鉴权服务获取目标对象的标签,该依赖模式用于表征目标对象所依赖的标签的存储方式。最后,根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。通过该方式,调用鉴权服务基于目标对象的标签的依赖模式获取目标对象的标签,从而确定目标对象的鉴权结果。由于目标对象的标签的获取通过调用鉴权服务实现,从而使得在为目标服务添加标签时只需修改鉴权服务对应的软件开发工具包,而无需修改目标对象本身,提高了目标对象的标签的修改效率,避免了因标签修改导致的鉴权二义性的问题。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图7为本申请实施例提供的一种目标对象的鉴权装置的结构示意图。该目标对象的鉴权装置可以通过软件、硬件或者两者的结合实现,以执行上述实施例中目标对象的鉴权方法。如图7所示,该目标对象的鉴权装置600包括:触发模块601、获取模块602、鉴权模块603和缓存模块。
触发模块601,用于在接收用户对目标对象的操作请求时触发鉴权请求,鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,鉴权服务用于确定用户是否具有操作目标对象的权限;
获取模块602,用于根据目标对象的标签的依赖模式,控制鉴权服务获取目标对象的标签,依赖模式用于表征目标对象所依赖的标签的存储方式;
鉴权模块603,用于根据目标对象的标签,控制鉴权服务确定目标对象的鉴权结果。
一种可选的实施方式中,依赖模式包括第一模式和第二模式,第一模式的目标对象依赖标签服务器存储目标对象的标签,第二模式的目标对象依赖目标对象所在的资源服务器储目标对象的标签。
一种可选的实施方式中,获取模块602,具体用于若目标对象为第一模式,则控制鉴权服务向标签服务器发送查询请求,查询请求用于请求在标签服务器的缓存或标签数据库中查询目标对象的标签;接收标签服务器发送的目标对象的标签。
一种可选的实施方式中,获取模块602,具体用于若目标对象为第二模式,则控制鉴权服务通过回调目标对象在初始化时配置的接口获取目标对象的标签。
一种可选的实施方式中,鉴权模块603,具体用于控制鉴权服务查询目标对象的标签对应的白名单;若用户在目标对象的标签对应的白名单中,则确定鉴权结果为具备操作权限。
一种可选的实施方式中,目标对象的鉴权装置600还包括:
缓存模块604,用于将目标对象的标签的依赖模式和/或目标对象所在的资源服务器的本地缓存中。
一种可选的实施方式中,目标对象包括云资源。
需要说明的,图7示实施例提供的目标对象的鉴权装置,可用于执行上述任意实施例所提供的目标对象的鉴权方法,具体实现方式和技术效果类似,这里不再进行赘述。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定,例如,接收模块还可以被描述为“接收目标对象发送的鉴权请求的单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
图8为本申请实施例提供的一种电子设备的结构示意图。如图8示,该电子设备可以包括:多个处理器701和存储器702。图8的是以一个处理器为例的电子设备。
存储器702,用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。
存储器702可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如多个磁盘存储器。
处理器701用于执行存储器702存储的计算机执行指令,以实现上述目标对象的鉴权方法;
其中,处理器701可能是一个处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
可选的,在具体实现上,如果通信接口、存储器702和处理器701独立实现,则通信接口、存储器702和处理器701可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended IndustryStandard Architecture,简称为EISA)总线等。总线可以分为地址总线、数据总线、控制总线等,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果通信接口、存储器702和处理器701集成在一块芯片上实现,则通信接口、存储器702和处理器701可以通过内部接口完成通信。
本申请实施例还提供了一种芯片,包括处理器和接口。其中接口用于输入输出处理器所处理的数据或指令。处理器用于执行以上方法实施例中提供的方法。该芯片可以应用于目标对象的鉴权装置中。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁盘或者光盘等各种可以存储程序代码的介质,具体的,该计算机可读存储介质中存储有程序信息,程序信息用于上述目标对象的鉴权方法。
本申请还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上述的目标对象的鉴权方法。
本申请还提供了一种计算机程序,计算机程序使得计算机执行上述的目标对象的鉴权方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network,简称LAN)或广域网(Wide Area Network,简称WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种目标对象的鉴权方法,其特征在于,所述方法包括:
在接收用户对目标对象的操作请求时触发鉴权请求,所述鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,所述鉴权服务用于确定所述用户是否具有操作所述目标对象的权限;
根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签,所述依赖模式用于表征所述目标对象所依赖的标签的存储方式;
根据所述目标对象的标签,控制所述鉴权服务确定所述目标对象的鉴权结果。
2.根据权利要求1所述的方法,其特征在于,所述依赖模式包括第一模式和第二模式,所述第一模式的目标对象依赖标签服务器存储所述目标对象的标签,所述第二模式的目标对象依赖所述目标对象所在的资源服务器储所述目标对象的标签。
3.根据权利要求2所述的方法,其特征在于,所述根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签,包括:
若所述目标对象为所述第一模式,则控制所述鉴权服务向所述标签服务器发送查询请求,所述查询请求用于请求在所述标签服务器的缓存或标签数据库中查询所述目标对象的标签;
接收所述标签服务器发送的所述目标对象的标签。
4.根据权利要求2所述的方法,其特征在于,所述根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签,包括:
若所述目标对象为所述第二模式,则控制所述鉴权服务通过回调所述目标对象在初始化时配置的接口获取所述目标对象的标签。
5.根据权利要求1所述的方法,其特征在于,所述根据所述目标对象的标签,控制所述鉴权服务确定所述目标对象的鉴权结果,包括:
控制所述鉴权服务查询所述目标对象的标签对应的白名单;
若所述用户在所述目标对象的标签对应的白名单中,则确定所述鉴权结果为具备操作权限。
6.根据权利要求1所述的方法,其特征在于,在所述根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签之后,所述方法还包括:
将所述目标对象的标签的依赖模式和/或所述目标对象所在的资源服务器的本地缓存中。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述目标对象包括云资源。
8.一种目标对象的鉴权装置,其特征在于,所述装置包括:
触发模块,用于在接收用户对目标对象的操作请求时触发鉴权请求,所述鉴权请求用于调用鉴权软件开发包SDK中的鉴权服务,所述鉴权服务用于确定所述用户是否具有操作所述目标对象的权限;
获取模块,用于根据所述目标对象的标签的依赖模式,控制所述鉴权服务获取所述目标对象的标签,所述依赖模式用于表征所述目标对象所依赖的标签的存储方式;
鉴权模块,用于根据所述目标对象的标签,控制所述鉴权服务确定所述目标对象的鉴权结果。
9.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210317291.1A CN114637969A (zh) | 2022-03-28 | 2022-03-28 | 目标对象的鉴权方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210317291.1A CN114637969A (zh) | 2022-03-28 | 2022-03-28 | 目标对象的鉴权方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114637969A true CN114637969A (zh) | 2022-06-17 |
Family
ID=81951596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210317291.1A Pending CN114637969A (zh) | 2022-03-28 | 2022-03-28 | 目标对象的鉴权方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114637969A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115422526A (zh) * | 2022-10-31 | 2022-12-02 | 平安银行股份有限公司 | 角色权限管理方法、设备及存储介质 |
-
2022
- 2022-03-28 CN CN202210317291.1A patent/CN114637969A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115422526A (zh) * | 2022-10-31 | 2022-12-02 | 平安银行股份有限公司 | 角色权限管理方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109976667B (zh) | 一种镜像管理方法、装置及系统 | |
CN107832100B (zh) | 一种apk插件的加载方法及其终端 | |
CN109829287A (zh) | Api接口权限访问方法、设备、存储介质及装置 | |
CN113010818A (zh) | 访问限流方法、装置、电子设备及存储介质 | |
US20170153909A1 (en) | Methods and Devices for Acquiring Data Using Virtual Machine and Host Machine | |
CN110365724B (zh) | 任务处理方法、装置及电子设备 | |
CN113010224B (zh) | 前端微服务化方法、装置、计算机设备和存储介质 | |
CN109032693B (zh) | 一种加载展示信息方法、装置、电子设备及可读存储介质 | |
CN114637969A (zh) | 目标对象的鉴权方法及装置 | |
US11394748B2 (en) | Authentication method for anonymous account and server | |
CN110222046B (zh) | 列表数据的处理方法、装置、服务器和存储介质 | |
CN111885184A (zh) | 高并发场景下热点访问关键字处理方法和装置 | |
CN116151631A (zh) | 一种业务决策处理系统、一种业务决策处理方法和装置 | |
CN115714706A (zh) | 基于内嵌h5的访问加速系统、方法、存储介质及电子设备 | |
US20180131756A1 (en) | Method and system for affinity load balancing | |
CN112612530B (zh) | 类查询方法及装置 | |
CN113342270A (zh) | 卷卸载方法、装置和电子设备 | |
CN112988604A (zh) | 对象测试方法、测试系统、电子设备及可读存储介质 | |
US10120897B2 (en) | Interception of database queries for delegation to an in memory data grid | |
CN112579282A (zh) | 数据处理方法、装置、系统、计算机可读存储介质 | |
CN111078736A (zh) | 一种数据聚合处理方法、装置、终端及存储介质 | |
CN113282391B (zh) | 集群切换方法、集群切换装置、电子设备及可读存储介质 | |
CN114363172B (zh) | 用于容器组的解耦管理方法、装置、设备、介质 | |
CN113840020B (zh) | 基于ip地址信息的定位方法、装置、电子设备和存储介质 | |
CN113568657A (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 |