CN112995166B - 资源访问的鉴权方法及装置、存储介质、电子设备 - Google Patents

资源访问的鉴权方法及装置、存储介质、电子设备 Download PDF

Info

Publication number
CN112995166B
CN112995166B CN202110184953.8A CN202110184953A CN112995166B CN 112995166 B CN112995166 B CN 112995166B CN 202110184953 A CN202110184953 A CN 202110184953A CN 112995166 B CN112995166 B CN 112995166B
Authority
CN
China
Prior art keywords
resource
tag
authentication
information
api
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.)
Active
Application number
CN202110184953.8A
Other languages
English (en)
Other versions
CN112995166A (zh
Inventor
李严
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202110184953.8A priority Critical patent/CN112995166B/zh
Publication of CN112995166A publication Critical patent/CN112995166A/zh
Application granted granted Critical
Publication of CN112995166B publication Critical patent/CN112995166B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种资源访问的鉴权方法及装置、存储介质、电子设备,属于云服务领域。其中,该方法包括:接收客户端发送的业务请求,并解析所述业务请求中的入参信息,其中,所述业务请求用于请求调用应用程序接口AP I访问目标云业务中的目标资源;基于所述入参信息获取所述目标资源的资源标签,其中,所述资源标签用于表征所述目标资源在所述云业务中的资源用途和归属对象;根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权。通过本发明,解决了相关技术中鉴权效率低的技术问题,提高了鉴权效率,进而提高了鉴权服务器的鉴权速度和响应速度,从鉴权维度提高了云服务资源的安全性和易用性。

Description

资源访问的鉴权方法及装置、存储介质、电子设备
技术领域
本发明涉及云服务领域,具体而言,涉及一种资源访问的鉴权方法及装置、存储介质、电子设备。
背景技术
相关技术中的云服务是基于互联网的相关服务的增加、使用和交互模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云服务指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。
相关技术中的,用户在使用云服务或访问云服务提供的资源时首先需要进行鉴权。然后各个业务线自己进行鉴权,在业务线的控制台配置某个子用户能够访问哪些资源。而使用某个云业务的用户是海量的,配置资源标签的成本非常大,而且有些用户可能使用多个业务线的资源,业务线独立维护自己资源的访问控制成本高。同时,各个业务线提供的产品/服务不同,访问控制逻辑不统一,用户的学习成本高,鉴权效率低。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
发明内容
本发明实施例提供了一种资源访问的鉴权方法及装置、存储介质、电子设备。
根据本申请实施例的一个方面,提供了一种资源访问的鉴权方法,包括:接收客户端发送的业务请求,并解析所述业务请求中的入参信息,其中,所述业务请求用于请求调用应用程序接口API访问目标云业务中的目标资源;基于所述入参信息获取所述目标资源的资源标签,其中,所述资源标签用于表征所述目标资源在所述云业务中的资源用途和归属对象;根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权。
进一步,基于所述入参信息获取所述目标资源的资源标签包括:根据所述入参信息解析所述API的接口标识,其中,所述接口标识用于指示所述API的接口类型;通过所述接口标识确定所述目标资源的资源标识;在预设标签库中查找与所述资源标识绑定的资源标签。
进一步,通过所述接口标识确定所述目标资源的资源标识包括:根据所述API的接口标识定位指定参数,其中,所述指定参数的参数属性为资源ID;从所述入参信息中读取所述指定参数;将所述指定参数确定为所述目标资源的资源标识。
进一步,在根据所述入参信息解析所述API的接口标识之后,所述方法还包括:根据所述API的配置信息确定所述API的鉴权规则;若所述鉴权规则为标签鉴权,确定在预设标签库中查找与所述资源标识绑定的资源标签。
进一步,根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权包括:获取云账号的权限策略信息,其中,所述权限策略信息包括所述云账号允许访问的资源的标签白名单;判断所述资源标签是否命中所述标签白名单;若所述资源标签命中所述标签白名单,确定鉴权通过,并向所述目标云业务的云服务器转发所述业务请求;若所述资源标签未命中所述标签白名单,确定鉴权失败。
进一步,在基于所述入参信息获取所述目标资源的资源标签之前,所述方法还包括:在云账号的权限策略信息中配置所述目标资源的资源标签;将所述资源标签与所述目标资源的标签信息绑定后,存储在鉴权服务器的第一缓存空间。
进一步,在基于所述入参信息获取所述目标资源的资源标签之前,所述方法还包括:配置所述API的API参数信息,其中,所述API参数信息用于指示所述业务请求的鉴权类型和所述入参信息的解析规则;将所述API参数信息存储在鉴权服务器的第二缓存空间。
根据本申请实施例的另一个方面,还提供了一种资源访问的鉴权装置,包括:解析模块,用于接收客户端发送的业务请求,并解析所述业务请求中的入参信息,其中,所述业务请求用于请求调用应用程序接口API访问目标云业务中的目标资源;获取模块,用于基于所述入参信息获取所述目标资源的资源标签,其中,所述资源标签用于表征所述目标资源在所述云业务中的资源用途和归属对象;鉴权模块,用于根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权。
进一步,所述获取模块包括:解析单元,用于根据所述入参信息解析所述API的接口标识,其中,所述接口标识用于指示所述API的接口类型;确定单元,用于通过所述接口标识确定所述目标资源的资源标识;查找单元,用于在预设标签库中查找与所述资源标识绑定的资源标签。
进一步,所述确定单元包括:定位子单元,用于根据所述API的接口标识定位指定参数,其中,所述指定参数的参数属性为资源ID;读取子单元,用于从所述入参信息中读取所述指定参数;确定子单元,用于将所述指定参数确定为所述目标资源的资源标识。
进一步,所述装置还包括:第一确定模块,用于在所述获取模块根据所述入参信息解析所述API的接口标识之后,根据所述API的配置信息确定所述API的鉴权规则;第二确定模块,用于若所述鉴权规则为标签鉴权,确定在预设标签库中查找与所述资源标识绑定的资源标签。
进一步,所述鉴权模块包括:获取单元,用于获取云账号的权限策略信息,其中,所述权限策略信息包括所述云账号允许访问的资源的标签白名单;判断单元,用于判断所述资源标签是否命中所述标签白名单;鉴权单元,用于若所述资源标签命中所述标签白名单,确定鉴权通过,并向所述目标云业务的云服务器转发所述业务请求;若所述资源标签未命中所述标签白名单,确定鉴权失败。
进一步,所述装置还包括:第一配置模块,用于在所述获取模块基于所述入参信息获取所述目标资源的资源标签之前,在云账号的权限策略信息中配置所述目标资源的资源标签;第一存储模块,用于将所述资源标签与所述目标资源的标签信息绑定后,存储在鉴权服务器的第一缓存空间。
进一步,所述装置还包括:第二配置模块,用于在所述获取模块基于所述入参信息获取所述目标资源的资源标签之前,配置所述API的API参数信息,其中,所述API参数信息用于指示所述业务请求的鉴权类型和所述入参信息的解析规则;第二存储模块,用于将所述API参数信息存储在鉴权服务器的第二缓存空间。
根据本申请实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的步骤。
根据本申请实施例的另一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:存储器,用于存放计算机程序;处理器,用于通过运行存储器上所存放的程序来执行上述方法中的步骤。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法中的步骤。
通过本发明,接收客户端发送的业务请求,并解析所述业务请求中的入参信息,基于所述入参信息获取所述目标资源的资源标签,根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权,通过采用API的入参信息解析目标资源的资源标签,通过资源标签进行多个业务线的统一鉴权,解决了相关技术中鉴权效率低的技术问题,提高了鉴权效率,进而提高了鉴权服务器的鉴权速度和响应速度,从鉴权维度提高了云服务资源的安全性和易用性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种服务器的硬件结构框图;
图2是根据本发明实施例的一种资源访问的鉴权方法的流程图;
图3是本发明实施例的构架示意图;
图4是根据本发明实施例的一种资源访问的鉴权装置的结构框图;
图5是实施本发明实施例的一种电子设备的结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个类似的实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
实施例1
本申请实施例一所提供的方法实施例可以在服务器(如鉴权服务器、接入服务器、网络服务器、云服务器等)、计算机或者类似的运算装置中执行。以运行在服务器上为例,图1是本发明实施例的一种服务器的硬件结构框图。如图1所示,服务器可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述服务器还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述服务器的结构造成限定。例如,服务器还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储服务器程序,例如,应用软件的软件程序以及模块,如本发明实施例中的一种资源访问的鉴权方法对应的服务器程序,处理器102通过运行存储在存储器104内的服务器程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种资源访问的鉴权方法,图2是根据本发明实施例的一种资源访问的鉴权方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,接收客户端发送的业务请求,并解析业务请求中的入参信息,其中,业务请求用于请求调用应用程序接口API访问目标云业务中的目标资源;
本实施例的云业务也可以是云主机,IP,云存储等,以云主机为例,包括多个实例,主机实例也叫云服务器实例,是一个独立的虚拟机,计算环境可以包含CPU、内存、操作系统、带宽、磁盘等基础的计算组件。
在本实施例中,用户使用云账号作为用户账号登录在客户端上,客户端是在本地运行云服务实例的终端。在一些场景中,云账号分为主账号和子账号,其中主账号是用户在云服务厂商注册的账号,可以创建多个子账号,每个子账号对应一个子用户,子用户也可称为IAM(Identity and Access Management,身份与访问控制)用户,IAM用户是IAM的一种实体身份类型,有确定的身份ID和身份凭证,可以与某个确定的人或应用程序一一对应,是最小单位的鉴权对象,一个用户账号(主账号)下可以创建多个IAM用户账号,对应企业内的员工、系统或应用程序,IAM用户不拥有资源,IAM用户必须在获得云账号的授权后才能登录控制台或使用API操作云账号下的资源。当企业有多种云资源时,使用IAM的授权管理功能,可以实现用户分权及资源统一管理。
步骤S204,基于入参信息获取目标资源的资源标签,其中,资源标签用于表征目标资源在云业务中的资源用途和归属对象;
可选的,本实施例的资源标签是自定义标签,如“压测”,“配置”,“部门”等,用于对云资源按照资源用途或归属对象(如归属的部门,归属的用户,归属的设备等)进行分类。
步骤S206,根据资源标签和云账号的权限策略信息对业务请求进行鉴权。
可选的,该云账号是登录在客户端上的账号,也可以是登录账号的主账号(登录账号是子账号),主账号配置所辖子账号的权限策略信息。
本实施例对业务请求进行鉴权,用于确定业务请求是否具备权限(Permission),从而决定是否允许用户对目标资源执行某种操作,权限分为:允许(Allow)或拒绝(Deny)。
通过上述步骤,接收客户端发送的业务请求,并解析所述业务请求中的入参信息,基于所述入参信息获取所述目标资源的资源标签,根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权,通过采用API的入参信息解析目标资源的资源标签,通过资源标签进行多个业务线的统一鉴权,解决了相关技术中鉴权效率低的技术问题,提高了鉴权效率,进而提高了鉴权服务器的鉴权速度和响应速度,从鉴权维度提高了云服务资源的安全性和易用性。
在本实施例的一个实施方式中,基于入参信息获取目标资源的资源标签包括:
S11,根据入参信息解析API的接口标识,其中,接口标识用于指示API的接口类型;
API的接口类型可以通过API的接口标识解析得到,接口标识携带在入参信息中。如,接口标识为delEip的接口类型为eip。
S12,通过接口标识确定目标资源的资源标识;
在一个示例中,通过接口标识确定目标资源的资源标识包括:根据API的接口标识定位指定参数,其中,指定参数的参数属性为资源ID;从入参信息中读取指定参数;将指定参数确定为目标资源的资源标识。
在本实施例中,通过配置接口字段,每一个接口对应一套接口规则,进而使用该接口规则解析入参信息,定位到其中携带的资源ID,并将该资源ID作为目标资源的资源标识。
S13,在预设标签库中查找与资源标识绑定的资源标签。
在本实施例的一个实施方式中,在根据入参信息解析API的接口标识之后,还包括:根据API的配置信息确定API的鉴权规则;若鉴权规则为标签鉴权,确定在预设标签库中查找与资源标识绑定的资源标签。
在本实施例的一个实施方式中,根据资源标签和云账号的权限策略信息对业务请求进行鉴权包括:获取云账号的权限策略信息,其中,权限策略信息包括云账号允许访问的资源的标签白名单;判断资源标签是否命中标签白名单;若资源标签命中标签白名单,确定鉴权通过,并向目标云业务的云服务器转发业务请求;若资源标签未命中标签白名单,确定鉴权失败。
在一个示例中,权限策略信息中,资源的标签白名单为"压测&配置","压测&高配","color&red","部门&",资源标签为"压测&高配",命中该标签白名单,鉴权通过。
除了采用黑名单鉴权之外,也可以采用黑名单进行鉴权,或者采用白名单与黑名单结合的方式,只有资源标签命中标签白名单,且未命中标签黑名单的情况下,确定鉴权通过,否则确定鉴权失败。
可选的,在基于入参信息获取目标资源的资源标签之前,还包括:在云账号的权限策略信息中配置目标资源的资源标签;将资源标签与目标资源的标签信息绑定后,存储在鉴权服务器的第一缓存空间。
本实施例的权限策略信息(Policy)是用语法结构描述的一组权限的集合,可以精确地描述被授权的资源集、操作集以及授权条件。权限策略信息是描述权限集的一种简单语言规范。一个角色(账号)可以绑定一组权限策略。没有绑定权限策略的角色也可以存在,但不能访问资源。Policy包括多个字段,如Version,Statement,SID等,每个字段对应Policy中的一个策略元素,在此对字段进行解释和说明:
Version:可选策略元素(string),形如"Version":"2015-11-01",用于说明策略文档的版本,云服务厂商的策略文档版本可以只有一个取值,2015-11-01,如果策略中没有Version元素,其默认值为2015-11-01;
Statement:必选策略元素(array),形如"Statement":[{...},{...},{...}],策略的主元素,用于说明具体授权规则,每个Statement元素可以包含多条语句,每条语句用{}括起来说明;
SID:可选元素(string),形如"SID":"1",Statement的语句标识符,可被省略,在一个策略中需要保持唯一性;
Effect:必选元素(string),形如"Effect":"Allow",Statement的授权规则的组成元素,每条授权规则必须包括该元素,只有两种取值Allow或者Deny,分别表示“显示授权”和“显示拒绝”;
Action:必选元素(String),形如"Action":"IAM:CreateUser",Statement的授权规则的组成元素,每条授权规则必须包括该元素,取值包括两个部分的内容:service-name和action-name,其中service-name是云服务的命名空间(IAM,ks3,kec等),而action-name则是各产品的操作名称,service-name和action-name的值不区分大小写,操作名称可以包含通配符*;
Resource:必选元素(String),可以使用*来表示全体资源对象,本实施例还包括用于限制资源范围的资源标签。
可选的,在基于入参信息获取目标资源的资源标签之前,还包括:配置API的API参数信息,其中,API参数信息用于指示业务请求的鉴权类型和入参信息的解析规则;将API参数信息存储在鉴权服务器的第二缓存空间。
可选的,除了配置API的API参数信息之外,还可以在API配置中心配置API的属性信息等。定义API的基本信息,如:名称,是否读写,鉴权方式,流控方式,参数信息,参数信息是否敏感等。基于API参数信息可以解析出入参信息中的参数名称,参数描述,是否必填,类型,是否代表资源ID,如果是资源ID是哪种资源等信息。
图3是本发明实施例的构架示意图,包括业务线2、业务线1、业务线3,每个业务线对应一种云业务,如云主机、IP,云存储等,客户端是请求云业务的终端,登录云账号,鉴权服务器用于对来自客户端的请求进行鉴权,验证请求签名,身份确定,并将合法的请求转发至业务线的云服务器,控制台提供标签服务,包括标签授权的设置界面,便于给子用户进行标签的授权,主账号也可以给子用户设置该子用户能够访问带有哪些标签的资源,在子用户访问时校验逻辑。在此以目标资源的资源标签为“压测&高配”为例,下面对其流程进行说明,包括:
第一步,业务线在API配置中心,配置自己的open-API是资源标签鉴权。明确哪个参数是资源ID,指定是哪种资源类型。API配置中心把配置好的API信息保存到缓存cache内。
第二步,用户配置权限policy信息,用户在访问控制的控制台配置权限策略。例如:
Figure BDA0002942723360000111
Figure BDA0002942723360000121
其中,effect是allow代表允许action代表调用的接口名称,*代表所有,这里是可以访问所有的open-API,Resource字段说明可以访问的资源白名单,*代表所有,这里是可以访问所有资源Condition字段说明的是条件的意思,满足下面的条件才行。具体条件如下:ForAnyValue:StringEquals,指下面列表内的值,匹配一个就满足条件。ksc:Tag,标签服务,下面的是标签的列表,标签包括标键和标签值,键值之间用&连接。
综上,被授权的实体可以调用所有接口,管控所有资源,条件是该资源必须带有下面标签中的一个或多个。标签列表如下:
"压测&配置",
"压测&高配",
"color&red",
"部门&"。
第三步,用户通过标签管理服务给资源打标签。资源就是用户在云服务商购买的云资源,例如云服务器,负载均衡,弹性ip等。在标签管理服务可以创建标签,给资源打标签,即建立标签和资源的绑定关系。例如有两个eip类型的资源,ID分别是resource_ID_1,resource_ID_2,其中,
resource_ID_1,打了标签:压测&高配;
resource_ID_2,打了标签:压测&低配。
第四步,鉴权服务器进行标签鉴权。当用户访问open-API时,鉴权服务器通过cache中的API配置信息确定该API是否是标签鉴权,以及参数名称是什么,该参数代表的资源类型是什么。例如:API叫delEip,该API进行标签鉴权,参数名称是eip_ID,参数代表的资源类型是eip。如果这时用户调用这个接口参数eip_ID的值是resource_ID_1,鉴权服务器会去标签服务获取该资源打的标签,本例中,resource_ID_1,打了标签:压测&高配。接下来会和调用该接口的子用户绑定的权限策略做对比。见第二步,权限策略可以访问的标签列表是:"压测&配置","压测&高配","color&red","部门&",包含压测&高配。由此可以判断,允许该子用户访问资源resource_ID_1。同样的场景下,如果参数eip_ID的值是resource_ID_2,resource_ID_2,打了标签:压测&低配。这个标签“压测&低配”,不在权限策略标签列表内,则拒绝该子用户访问资源resource_ID_2。
采用本实施例的方案,通过在权限策略里配置标签列表,鉴权服务器通过API参数的设置信息获取资源对应的标签信息,实现鉴权。通过API参数信息,权限策略policy信息,资源绑定的标签信息完成了API的标签鉴权,通过统一的管理,减少了业务线的维护工作量。业务线只需要简单配置,用户只需要在控制台的一个地方配置就可以实现全公司,全产品的标签访问控制管理。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
在本实施例中还提供了一种资源访问的鉴权装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本发明实施例的一种资源访问的鉴权装置的结构框图,如图4所示,该装置包括:解析模块40,获取模块42,鉴权模块44,其中,
解析模块40,用于接收客户端发送的业务请求,并解析所述业务请求中的入参信息,其中,所述业务请求用于请求调用应用程序接口API访问目标云业务中的目标资源;
获取模块42,用于基于所述入参信息获取所述目标资源的资源标签,其中,所述资源标签用于表征所述目标资源在所述云业务中的资源用途和归属对象;
鉴权模块44,用于根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权。
可选的,所述获取模块包括:解析单元,用于根据所述入参信息解析所述API的接口标识,其中,所述接口标识用于指示所述API的接口类型;确定单元,用于通过所述接口标识确定所述目标资源的资源标识;查找单元,用于在预设标签库中查找与所述资源标识绑定的资源标签。
可选的,所述确定单元包括:定位子单元,用于根据所述API的接口标识定位指定参数,其中,所述指定参数的参数属性为资源ID;读取子单元,用于从所述入参信息中读取所述指定参数;确定子单元,用于将所述指定参数确定为所述目标资源的资源标识。
可选的,所述装置还包括:第一确定模块,用于在所述获取模块根据所述入参信息解析所述API的接口标识之后,根据所述API的配置信息确定所述API的鉴权规则;第二确定模块,用于若所述鉴权规则为标签鉴权,确定在预设标签库中查找与所述资源标识绑定的资源标签。
可选的,所述鉴权模块包括:获取单元,用于获取云账号的权限策略信息,其中,所述权限策略信息包括所述云账号允许访问的资源的标签白名单;判断单元,用于判断所述资源标签是否命中所述标签白名单;鉴权单元,用于若所述资源标签命中所述标签白名单,确定鉴权通过,并向所述目标云业务的云服务器转发所述业务请求;若所述资源标签未命中所述标签白名单,确定鉴权失败。
可选的,所述装置还包括:第一配置模块,用于在所述获取模块基于所述入参信息获取所述目标资源的资源标签之前,在云账号的权限策略信息中配置所述目标资源的资源标签;第一存储模块,用于将所述资源标签与所述目标资源的标签信息绑定后,存储在鉴权服务器的第一缓存空间。
可选的,所述装置还包括:第二配置模块,用于在所述获取模块基于所述入参信息获取所述目标资源的资源标签之前,配置所述API的API参数信息,其中,所述API参数信息用于指示所述业务请求的鉴权类型和所述入参信息的解析规则;第二存储模块,用于将所述API参数信息存储在鉴权服务器的第二缓存空间。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本申请实施例还提供了一种电子设备,图5是本发明实施例的一种电子设备的结构图,如图5所示,包括处理器51、通信接口52、存储器53和通信总线54,其中,处理器51,通信接口52,存储器53通过通信总线54完成相互间的通信,存储器53,用于存放计算机程序;处理器51,用于执行存储器53上所存放的程序时,实现如下步骤:接收客户端发送的业务请求,并解析所述业务请求中的入参信息,其中,所述业务请求用于请求调用应用程序接口API访问目标云业务中的目标资源;基于所述入参信息获取所述目标资源的资源标签,其中,所述资源标签用于表征所述目标资源在所述云业务中的资源用途和归属对象;根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权。
进一步,基于所述入参信息获取所述目标资源的资源标签包括:根据所述入参信息解析所述API的接口标识,其中,所述接口标识用于指示所述API的接口类型;通过所述接口标识确定所述目标资源的资源标识;在预设标签库中查找与所述资源标识绑定的资源标签。
进一步,通过所述接口标识确定所述目标资源的资源标识包括:根据所述API的接口标识定位指定参数,其中,所述指定参数的参数属性为资源ID;从所述入参信息中读取所述指定参数;将所述指定参数确定为所述目标资源的资源标识。
进一步,在根据所述入参信息解析所述API的接口标识之后,所述方法还包括:根据所述API的配置信息确定所述API的鉴权规则;若所述鉴权规则为标签鉴权,确定在预设标签库中查找与所述资源标识绑定的资源标签。
进一步,根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权包括:获取云账号的权限策略信息,其中,所述权限策略信息包括所述云账号允许访问的资源的标签白名单;判断所述资源标签是否命中所述标签白名单;若所述资源标签命中所述标签白名单,确定鉴权通过,并向所述目标云业务的云服务器转发所述业务请求;若所述资源标签未命中所述标签白名单,确定鉴权失败。
进一步,在基于所述入参信息获取所述目标资源的资源标签之前,所述方法还包括:在云账号的权限策略信息中配置所述目标资源的资源标签;将所述资源标签与所述目标资源的标签信息绑定后,存储在鉴权服务器的第一缓存空间。
进一步,在基于所述入参信息获取所述目标资源的资源标签之前,所述方法还包括:配置所述API的API参数信息,其中,所述API参数信息用于指示所述业务请求的鉴权类型和所述入参信息的解析规则;将所述API参数信息存储在鉴权服务器的第二缓存空间。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的资源访问的鉴权方法。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的资源访问的鉴权方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

Claims (9)

1.一种资源访问的鉴权方法,其特征在于,包括:
接收客户端发送的业务请求,并解析所述业务请求中的入参信息,其中,所述业务请求用于请求调用应用程序接口API访问目标云业务中的目标资源;
基于所述入参信息获取所述目标资源的资源标签,其中,所述资源标签用于表征所述目标资源在所述云业务中的资源用途和归属对象,其中,所述归属对象包括以下至少之一:归属的部门,归属的用户,归属的设备;
根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权,其中,所述云账号用于登录所述客户端;
其中,基于所述入参信息获取所述目标资源的资源标签包括:
根据所述入参信息解析所述API的接口标识,其中,所述接口标识用于指示所述API的接口类型;
通过所述接口标识确定所述目标资源的资源标识;
在预设标签库中查找与所述资源标识绑定的资源标签。
2.根据权利要求1所述的方法,其特征在于,通过所述接口标识确定所述目标资源的资源标识包括:
根据所述API的接口标识定位指定参数,其中,所述指定参数的参数属性为资源ID;
从所述入参信息中读取所述指定参数;
将所述指定参数确定为所述目标资源的资源标识。
3.根据权利要求1所述的方法,其特征在于,在根据所述入参信息解析所述API的接口标识之后,所述方法还包括:
根据所述API的配置信息确定所述API的鉴权规则;
若所述鉴权规则为标签鉴权,确定在预设标签库中查找与所述资源标识绑定的资源标签。
4.根据权利要求1所述的方法,其特征在于,根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权包括:
获取云账号的权限策略信息,其中,所述权限策略信息包括所述云账号允许访问的资源的标签白名单;
判断所述资源标签是否命中所述标签白名单;
若所述资源标签命中所述标签白名单,确定鉴权通过,并向所述目标云业务的云服务器转发所述业务请求;若所述资源标签未命中所述标签白名单,确定鉴权失败。
5.根据权利要求1所述的方法,其特征在于,在基于所述入参信息获取所述目标资源的资源标签之前,所述方法还包括:
在云账号的权限策略信息中配置所述目标资源的资源标签;
将所述资源标签与所述目标资源的标签信息绑定后,存储在鉴权服务器的第一缓存空间。
6.根据权利要求1所述的方法,其特征在于,在基于所述入参信息获取所述目标资源的资源标签之前,所述方法还包括:
配置所述API的API参数信息,其中,所述API参数信息用于指示所述业务请求的鉴权类型和所述入参信息的解析规则;
将所述API参数信息存储在鉴权服务器的第二缓存空间。
7.一种资源访问的鉴权装置,其特征在于,包括:
解析模块,用于接收客户端发送的业务请求,并解析所述业务请求中的入参信息,其中,所述业务请求用于请求调用应用程序接口API访问目标云业务中的目标资源;
获取模块,用于基于所述入参信息获取所述目标资源的资源标签,其中,所述资源标签用于表征所述目标资源在所述云业务中的资源用途和归属对象,其中,所述归属对象包括以下至少之一:归属的部门,归属的用户,归属的设备;
鉴权模块,用于根据所述资源标签和云账号的权限策略信息对所述业务请求进行鉴权,其中,所述云账号用于登录所述客户端;
其中,获取模块包括:解析单元,用于根据所述入参信息解析所述API的接口标识,其中,所述接口标识用于指示所述API的接口类型;确定单元,用于通过所述接口标识确定所述目标资源的资源标识;查找单元,用于在预设标签库中查找与所述资源标识绑定的资源标签。
8.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至6中任一项所述的方法步骤。
9.一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:
存储器,用于存放计算机程序;
处理器,用于通过运行存储器上所存放的程序来执行权利要求1至6中任一项所述的方法步骤。
CN202110184953.8A 2021-02-10 2021-02-10 资源访问的鉴权方法及装置、存储介质、电子设备 Active CN112995166B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110184953.8A CN112995166B (zh) 2021-02-10 2021-02-10 资源访问的鉴权方法及装置、存储介质、电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110184953.8A CN112995166B (zh) 2021-02-10 2021-02-10 资源访问的鉴权方法及装置、存储介质、电子设备

Publications (2)

Publication Number Publication Date
CN112995166A CN112995166A (zh) 2021-06-18
CN112995166B true CN112995166B (zh) 2023-05-05

Family

ID=76393123

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110184953.8A Active CN112995166B (zh) 2021-02-10 2021-02-10 资源访问的鉴权方法及装置、存储介质、电子设备

Country Status (1)

Country Link
CN (1) CN112995166B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113660203B (zh) * 2021-07-09 2023-03-24 北京达佳互联信息技术有限公司 主播账号处理方法、装置、系统、电子设备及存储介质
CN113784354B (zh) * 2021-09-17 2024-04-09 城云科技(中国)有限公司 基于网关的请求转换方法和装置
CN113992412B (zh) * 2021-10-28 2023-06-16 唯品会(广州)软件有限公司 一种云原生防火墙的实现方法及相关设备
CN114979273B (zh) * 2022-04-11 2024-03-29 中国人民财产保险股份有限公司 请求的限流方法、装置、存储介质及电子设备
CN116320015B (zh) * 2023-03-28 2023-11-03 上海数禾信息科技有限公司 数据请求处理方法、装置、计算机设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109510849A (zh) * 2017-09-14 2019-03-22 腾讯科技(深圳)有限公司 云存储的帐号鉴权方法和装置
CN109976914A (zh) * 2019-04-01 2019-07-05 北京百度网讯科技有限公司 用于控制资源访问的方法和装置
CN110909373A (zh) * 2018-09-18 2020-03-24 阿里巴巴集团控股有限公司 一种访问控制方法、设备、系统及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10819652B2 (en) * 2018-07-02 2020-10-27 Amazon Technologies, Inc. Access management tags

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109510849A (zh) * 2017-09-14 2019-03-22 腾讯科技(深圳)有限公司 云存储的帐号鉴权方法和装置
CN110909373A (zh) * 2018-09-18 2020-03-24 阿里巴巴集团控股有限公司 一种访问控制方法、设备、系统及存储介质
CN109976914A (zh) * 2019-04-01 2019-07-05 北京百度网讯科技有限公司 用于控制资源访问的方法和装置

Also Published As

Publication number Publication date
CN112995166A (zh) 2021-06-18

Similar Documents

Publication Publication Date Title
CN112995166B (zh) 资源访问的鉴权方法及装置、存储介质、电子设备
CN112995163B (zh) 资源访问的鉴权方法及装置、存储介质、电子设备
CN112995165B (zh) 资源访问的鉴权方法及装置、存储介质、电子设备
EP3342125B1 (en) Service layer dynamic authorization
US8713646B2 (en) Controlling access to resources on a network
US10484385B2 (en) Accessing an application through application clients and web browsers
JP5961638B2 (ja) アプリケーション証明のためのシステムおよび方法
US9507927B2 (en) Dynamic identity switching
CN109889517B (zh) 数据处理方法、权限数据集创建方法、装置及电子设备
CN113014593B (zh) 访问请求的鉴权方法及装置、存储介质、电子设备
CN111104675A (zh) 系统安全漏洞的检测方法和装置
US11870873B2 (en) Service layer-based methods to enable efficient analytics of IoT data
US9237156B2 (en) Systems and methods for administrating access in an on-demand computing environment
CN106713315B (zh) 插件应用程序的登录方法和装置
US20230354039A1 (en) Network cyber-security platform
CN112887260A (zh) 授权方法及装置
CN112995164B (zh) 资源访问的鉴权方法及装置、存储介质、电子设备
CN110636038A (zh) 账号解析方法、装置、安全网关及系统
US10798120B2 (en) Dynamic detection of firewall misconfigurations
CN110049106B (zh) 业务请求处理系统及方法
CN117093977A (zh) 用户认证方法、系统、装置、存储介质以及电子设备
CN115412294A (zh) 基于平台服务的访问方法及装置、存储介质、电子设备
CN114091077A (zh) 一种鉴权方法、装置、设备及存储介质
WO2015149530A1 (zh) M2m应用服务方法、装置及系统
KR20150109233A (ko) 애플리케이션에 대한 로그인을 수행하는 방법 및 이를 위한 서버

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