CN116566656A - 资源访问方法、装置、设备及计算机存储介质 - Google Patents
资源访问方法、装置、设备及计算机存储介质 Download PDFInfo
- Publication number
- CN116566656A CN116566656A CN202310411290.8A CN202310411290A CN116566656A CN 116566656 A CN116566656 A CN 116566656A CN 202310411290 A CN202310411290 A CN 202310411290A CN 116566656 A CN116566656 A CN 116566656A
- Authority
- CN
- China
- Prior art keywords
- target
- resource
- target resource
- cloud platform
- access request
- 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 54
- 230000015654 memory Effects 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 6
- 238000007726 management method Methods 0.000 description 18
- 239000000306 component Substances 0.000 description 17
- 230000006870 function Effects 0.000 description 13
- 238000012545 processing Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 238000013475 authorization Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000001914 filtration Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000005435 mesosphere Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种资源访问方法、装置、设备及计算机存储介质,涉及容器云技术领域,该方法中网关设备在根据目标对象发送的目标资源访问请求,确定目标对象需访问容器云平台中的多个资源空间时,根据该目标资源访问请求携带的对象权限信息,向容器云平台请求获取目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,并对资源访问请求进行更新处理,将更新后的目标资源访问请求发送至容器云平台,以使得容器云平台根据管理员权限信息获取多个目标资源空间中的目标资源后,将获得的目标资源返回给目标对象,以满足目标对象对多个资源空间的访问需求,保证容器云平台的项目正常为用户提供应用服务,提升容器云平台的可用性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及容器云技术领域,提供一种资源访问方法、装置、设备及计算机存储介质。
背景技术
随着云原生技术的不断发展,传统业务不断通过云服务的形式进行,整体业务环境变得越来越复杂,用户对容器云平台中资源的获取需求愈加普遍。相关技术中,用户通常通过容器云平台提供的服务账号或数字证书,来访问容器云平台内特定资源空间下的资源信息,而为了保证资源安全,每个服务账号或数字证书的访问权限被固定在单一的资源空间下,而无权限访问容器云平台中其他资源空间的资源信息。
以kubernetes平台为例,其通常采用基于角色的访问控制(Role-Based AccessControl,RBAC),将被授予了特定命名空间的访问权限的角色,绑定至各个用户以及服务进程等主体上,来限制用户以及服务进程的访问权限范围,使其只能访问某一特定的单一资源空间下的资源信息,而无权限访问其他资源空间中的资源信息。
但是,目前容器云平台中引入了项目,每个项目可以包含多个资源空间,当一个用户关联至一个项目时,则该项目下的多个资源空间可以被该用户访问,而按照目前的访问控制策略,一个用户只能够访问特定资源空间,则每次访问时只会返回一个资源空间的资源,导致项目无法正常为用户提供应用服务,降低了容器云平台的可用性。
发明内容
本申请实施例提供一种资源访问方法、装置、设备及计算机存储介质,用于使得容器云平台的项目正常为用户提供应用服务,提升容器云平台的可用性。
一方面,提供一种资源访问方法,应用于网关设备,所述方法包括:
基于目标对象发送的目标资源访问请求,确定所述目标对象需访问容器云平台中的多个资源空间;
基于所述目标资源访问请求携带的对象权限信息,向容器云平台请求获取所述目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,所述目标资源空间标识集合指示所述目标项目中所述目标对象有权限访问的至少一个目标资源空间;
基于所述管理员权限信息和所述目标资源空间标识集合,对所述资源访问请求进行更新处理;
将更新后的目标资源访问请求发送至所述容器云平台,以使得所述容器云平台基于所述管理员权限信息获取所述至少一个目标资源空间中的目标资源后,将获得的目标资源返回给所述目标对象。
一方面,提供一种资源访问方法,应用于容器云平台,所述方法包括:
接收网关设备发送的参数获取请求,所述参数获取请求携带有目标对象的对象权限信息,所述参数获取请求是所述网关设备响应于所述目标对象发送的目标资源访问请求发送的,所述目标资源访问请求指示所述目标对象需访问容器云平台中的多个资源空间;
基于所述对象权限信息,确定所述目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,并将所述管理员权限信息和所述目标资源空间标识集合返回给所述网关设备,所述目标资源空间标识集合指示所述目标项目中所述目标对象有权限访问的至少一个目标资源空间;
接收所述网关设备发送的更新后的目标资源访问请求,所述更新后的目标资源访问请求携带有所述管理员权限信息和所述目标资源空间标识集合;
基于所述管理员权限信息和所述目标资源空间标识集合,获取所述至少一个目标资源空间中的目标资源,并将所述目标资源返回给所述目标对象。
一方面,提供一种资源访问装置,应用于网关设备,所述装置包括:
确定单元,用于基于目标对象发送的目标资源访问请求,确定所述目标对象需访问容器云平台中的多个资源空间;
获取单元,用于基于所述目标资源访问请求携带的对象权限信息,向容器云平台请求获取所述目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,所述目标资源空间标识集合指示所述目标项目中所述目标对象有权限访问的至少一个目标资源空间;
更新单元,用于基于所述管理员权限信息和所述目标资源空间标识集合,对所述资源访问请求进行更新处理;
发送单元,用于将更新后的目标资源访问请求发送至所述容器云平台,以使得所述容器云平台基于所述管理员权限信息获取所述至少一个目标资源空间中的目标资源后,将获得的目标资源返回给所述目标对象。
可选的,所述更新单元,具体用于:
基于所述至少一个目标资源空间各自的资源空间标识,按照预设请求参数规则生成目标请求参数;
基于所述目标请求参数,对所述目标资源访问请求中的请求参数字段进行填充;
基于所述管理员权限信息,替换所述目标资源访问请求携带的所述对象权限信息。
可选的,所述确定单元,具体用于:
接收所述目标对象发送的资源访问请求,所述资源访问请求携带请求参数信息;
基于所述请求参数信息,确定所述目标对象所需访问的资源空间的数量;
若确定所述需访问的资源空间的数量不是一个时,则确定所述目标对象需访问容器云平台中的多个资源空间。
可选的,所述确定单元,具体用于:
若确定所述需访问的资源空间的数量为一个时,则将所述资源访问请求发送至所述容器云平台。
一方面,提供一种资源访问装置,应用于容器云平台,所述装置包括:
第一接收单元,用于接收网关设备发送的参数获取请求,所述参数获取请求携带有目标对象的对象权限信息,所述参数获取请求是所述网关设备响应于所述目标对象发送的目标资源访问请求发送的,所述目标资源访问请求指示所述目标对象需访问容器云平台中的多个资源空间;
第一返回单元,用于基于所述对象权限信息,确定所述目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,并将所述管理员权限信息和所述目标资源空间标识集合返回给所述网关设备,所述目标资源空间标识集合指示所述目标项目中所述目标对象有权限访问的至少一个目标资源空间;
第二接收单元,接收所述网关设备发送的更新后的目标资源访问请求,所述更新后的目标资源访问请求携带有所述管理员权限信息和所述目标资源空间标识集合;
第二返回单元,用于基于所述管理员权限信息和所述目标资源空间标识集合,获取所述至少一个目标资源空间中的目标资源,并将所述目标资源返回给所述目标对象。
具体的,所述第一返回单元,具体用于:
基于所述对象权限信息,确定所述参数获取请求是否通过合法性校验;
若通过所述合法性校验,则基于所述对象权限信息,确定所述目标对象关联的目标项目,以及与所述目标项目对应的管理员权限信息;
基于所述对象权限信息,从所述目标项目中,确定所述目标对象有权限访问的所述至少一个目标资源空间;
基于所述至少一个目标资源空间各自的目标资源空间标识,确定所述目标资源空间标识集合。
具体的,所述第二返回单元,具体用于:
基于所述目标请求参数指示的请求类型,从预设的资源查询策略集合中确定对应的目标资源查询策略;其中,所述资源查询策略集合中各个资源查询策略与各请求类型一一对应;
基于所述目标资源查询策略,根据所述目标请求参数指示的目标资源空间标识集合,获取对应的至少一个目标资源空间中的目标资源。
一方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种方法的步骤。
一方面,提供一种计算机存储介质,其上存储有计算机程序指令,该计算机程序指令被处理器执行时实现上述任一种方法的步骤。
一方面,提供一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述任一种方法的步骤。
本申请实施例的有益效果如下:
本申请实施例中,网关设备根据目标对象发送的目标资源访问请求,确定目标对象需访问容器云平台中的多个资源空间,并根据该目标资源访问请求携带的对象权限信息,向容器云平台请求获取目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,并对资源访问请求进行更新处理,将更新后的目标资源访问请求发送至容器云平台,以使得容器云平台根据管理员权限信息获取多个目标资源空间中的目标资源后,将获得的目标资源返回给目标对象。在该方法中,由网关设备确定需要访问多个资源空间时,根据目标对象发起的资源访问请求,从容器云平台获取目标项目中目标对象有权限访问的多个目标资源空间的目标资源空间标识集合以及目标项目的管理员权限信息,并基于上述信息对该资源访问请求进行更新,进而使得目标对象能够访问容器云平台多个资源空间的资源,满足目标对象对多个资源空间的访问需求,保证容器云平台的项目正常为用户提供应用服务,提升容器云平台的可用性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种应用场景示意图;
图2为本申请实施例提供的一种资源访问方法的交互示意图;
图3为本申请实施例提供的一种容器云平台处理参数获取请求的示意图;
图4为本申请实施例提供的一种客户端通过网关设备与容器云平台交互的结构示意图;
图5为本申请实施例提供的另一种资源访问方法的流程示意图;
图6为本申请实施例提供的一种资源访问装置的结构示意图;
图7为本申请实施例提供的另一种资源访问装置的结构示意图;
图8为本申请实施例提供的一种计算机设备的组成结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
为便于理解本申请实施例提供的技术方案,这里先对本申请实施例使用的一些关键名词进行解释:
容器集群管理系统:一种开源的容器编排管理工具,支持自动化部署、大规模可伸缩、应用容器化管理,例如容器集群管理系统为Kubernetes(K8s)。在部署一个应用程序时,通常要部署该应用的多个实例以便对应用请求进行负载均衡,通过K8s可创建多个容器,每个容器里面运行一个应用实例,通过内置的负载均衡策略,实现对这一组应用实例的管理、发现、访问,而无需运维人员进行复杂的手工配置和处理。
容器技术:一种通过隔离不同的应用程序或服务所需的运行环境来实现应用程序的部署和运行的虚拟化技术。容器技术通过将应用程序及其依赖的软件和库打包在一起,形成一个可以在任何环境中运行的独立的软件单元,目前常见的容器引擎有Docker和K8s。
基于角色的访问控制策略(Role-Based Access Control,RBAC):每个角色具有不同权限,通过用户关联角色,角色关联权限的方式间接赋予用户不同的权限,简化了权限的管理。
资源空间:又称命名空间、名称空间,通过定义一个范围来提供一个作用域,具有隔离资源的作用,在该作用域的作用下任何对资源的操作都是在一个资源空间下进行的,而不是针对于全局。命名空间之间不可以重叠,不同命名空间下的资源即使同名也是不同的资源信息。
项目:容器云平台中的一种自定义资源定义(Custom Resource Definition,CRD),用于隔离不同资源空间之间的资源以及控制容器云平台外用户访问。容器云平台中每个项目由多个资源空间组成并与对象相关联,项目通过结合多个资源空间下的资源信息,为其关联的对象提供相应的应用与资源服务,且根据对象所需使用的项目服务不同,在项目中对象有权限访问的资源空间也不同。为了保证资源安全性,容器云平台往往通过RBAC等策略限制对象的访问权限,使得对象只能访问特定的一个资源空间下的资源信息,项目的管理员才有权限访问项目中所有的资源空间,在以使项目无法正常结合多个资源空间下的资源信息为对象提供资源与服务。
account-service组件:一种容器云平台的组件,用于为容器云平台提供权限管理、用户管理、项目管理、资源空间管理等管理功能,保证容器云平台的安全性、可靠性和可管理性,为用户提供高效、安全、可控的云平台服务。可通过将用户进行分类和分组,为不同的用户提供不同的权限,保证用户只能访问到其被授权的资源和服务,实现权限管理功能;将不同用户的账户进行添加新账户、删除账户、修改账户信息等实现用户管理等;将不同资源空间划分给不同的项目并将项目与用户关联,使得项目能通过多个资源空间下的资源为用户提供对应的资源服务。
apiserver组件:容器云平台核心组件之一,负责提供容器集群管理的REST API接口,是容器集群中数据交互和通信的枢纽。apiserver组件还为容器集群提供认证授权、数据校验、安全管理以及管理集群状态等功能,包括管理和监控集群中的各种状态信息,例如节点状态、容器状态、资源使用情况等;控制和调整容器集群中各种中央处理器(CentralProcessing Unit,CPU)、内存、磁盘空间等资源的分配和使用情况,保证集群中的资源分配合理,提高资源的利用率;对集群中的各种资源进行权限控制和访问控制,保证只有授权的用户和应用程序可以访问和管理集群中的资源和服务,实现安全管理功能,提高集群的安全性。
下面对本申请实施例的设计思想进行简要介绍:
容器技术作为云原生技术领域衍生的一门新兴的虚拟化技术,在云计算和容器云领域发挥重要的作用,容器技术的兴起衍生了K8s、Docker swarm及Mesosphere等一系列的应用编排管理系统,其中K8s凭借自身强大的应用编排能力和智能化调度算法,成为容器编排领域的领导者。而随着云原生技术的不断发展,传统业务不断通过云服务的形式进行,整体业务环境变得越来越复杂,用户对容器云平台中资源的获取需求愈加普遍。相关技术中,用户通常通过容器云平台提供的服务账号或数字证书,来访问容器云平台内特定资源空间下的资源信息,而为了保证资源安全,每个服务账号或数字证书的访问权限被固定在单一的资源空间下,而无权限访问容器云平台中其他资源空间的资源信息。
以K8s容器云平台为例,其通常采用基于角色的权限访问控制,将被授予了特定命名空间的访问权限的角色,绑定至各个用户以及服务进程等主体上,来限制用户以及服务进程的访问权限范围,使其只能访问某一特定的单一资源空间下的资源信息,而无权限访问其他资源空间中的资源信息。
但是,目前容器云平台中引入了项目,每个项目可以包含多个资源空间,当一个用户关联至一个项目时,则该项目下的多个资源空间可以被该用户访问,而按照目前的访问控制策略,一个用户只能够访问特定资源空间,则每次访问时只会返回一个资源空间的资源,导致项目无法正常为用户提供应用服务,而直接将用户的权限范围扩大至管理员等可访问K8s容器云平台内所有资源空间的访问权限,又会对K8s容器云平台的资源安全带来风险。
鉴于上述问题,本申请实施例提供了一种资源访问方法,由网关设备根据目标对象发起的资源访问请求,从容器云平台获取目标项目中目标对象有权限访问的多个目标资源空间的目标资源空间标识集合以及目标项目的管理员权限信息,并基于上述信息对该资源访问请求进行更新,实现在不修改目标对象的请求行为的前提下,使目标对象能够访问容器云平台多个资源空间的资源,满足目标对象对多个资源空间的访问需求,保证容器云平台的项目正常为用户提供应用服务,同时容器云平台只返回给目标对象有权限访问的目标资源空间的资源信息,精准控制目标对象在容器云平台的访问权限范围,避免直接将目标对象的权限范围扩大至可访问容器云平台内所有资源空间的管理员权限,对容器云平台的资源安全带来风险,保障了容器云平台的资源安全。
为了进一步保障容器云平台的资源安全,本申请实施例中容器云平台需根据参数获取请求携带的对象权限信息,进行确定目标对象是否属于容器云平台的合法用户,是否有权限对容器云平台的资源进行访问等合法性校验操作,在确定该参数获取请求合法后,才将管理员权限信息和目标资源空间标识集合返回给网关设备,从根本上避免非法用户获取到容器云平台资源的可能性,提高了容器云平台的资源安全性。
下面对本申请实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本申请实施例而非限定。在具体实施过程中,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
本申请实施例提供的技术方案可以适用于针对任意容器云平台的资源访问场景中,例如基于K8s框架的容器云平台,在此不再一一进行例举。如图1所示,为本申请实施例提供的一种应用场景示意图,在该场景中,可以包括网关设备101、容器云平台102、终端设备103。
网关设备101是连接终端设备103和容器云平台102,为终端设备103访问容器云平台提供统一的访问入口,以实现用户设备与容器云平台之间通信的设备,可用于终端设备103的本地存储系统与容器云平台的云存储服务之间传递数据,并进行不同协议的转换和协议的过滤,提供网络隔离、IP地址转换、负载均衡、访问控制等功能。网关设备可以是硬件设备、软件设备或者是虚拟设备,常包括但不限于路由器、防火墙、虚拟专用网络(VirtualPrivate Network,VPN)网关等。
容器云平台102是一种基于容器技术的云计算平台,通过统一的平台来用于部署、管理和运行容器化的应用程序,并具有自动化部署、负载均衡、容器编排等功能,容器云平台的类型包括但不限于kubernetes、Docker swarm、Mesosphere、Rancher、OpenShift或者Cloud Foundry等。容器云平台可以运行在服务器、虚拟机等多种设备上,其中服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、即内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
终端设备103可以为手机、个人计算机(Personal Computer,PC)、平板电脑(PAD)、笔记本电脑、台式电脑、移动互联网设备(Mobile Internet Device,MID)等任意能通过网关设备与容器云平台进行连接,为用户提供本地服务的设备,本实施例不作具体限定。终端设备103可通过网关设备访问容器云平台提供的应用程序编程接口(ApplicationProgramming Interface,API),来获取容器云平台提供各种的应用服务和资源。
网关设备101、容器云平台102以及终端设备103之间可以通过网络140连接,该网络140可以是无线网络,例如移动蜂窝网络,例如第四代移动通信(4generation,4G)网络、第五代移动通信(5generation,5G)网络或新无线(New Radio,NR)网络,或者可以是无线保真(Wireless-Fidelity,WIFI)网络,当然还可以是其他可能的网络,本发明实施例对此不做限制。
需要说明的是,图1所示只是举例说明,实际上网关设备101、容器云平台102以及终端设备103的数量均不受限制,在本申请实施例中不做具体限定。且图1所示的组件和结构只是示例性的,而非限制性的,在实际场景中根据需要,还可以具有其他组件和结构。
当然,本申请实施例提供的方法并不限用于图1所示的应用场景中,还可以用于其它可能的应用场景,本申请实施例并不进行限制。对于图1所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。
下面结合上述描述的应用场景,参考附图来描述本申请示例性实施方式提供的资源访问方法,需要注意的是,上述应用场景仅是为了便于理解本申请的精神和原理而示出,本申请的实施方式在此方面不受任何限制。
参见图2所示,为本申请实施例提供的资源访问方法的交互示意图,该方法的具体实施流程如下:
步骤201:目标对象发起目标资源访问请求。
本申请实施例中,目标对象可通过终端设备向容器云平台发起目标资源访问请求,来与容器云平台进行通信和交互。目标资源访问请求中携带有目标对象需访问的容器云平台的资源空间信息,用于从容器云平台获取存储于资源空间中的数据或其他服务资源,例如终端设备可以向容器云平台发起超文本传输协议(Hyper Text TransferProtocol,HTTP)请求,从对应的资源空间中获取全球广域网(World Wide Web,Web)应用程序的服务资源。
在一种可能的实施方式中,以K8s为例,目标对象可以通过操作终端设备,使用命令行工具(如kubectl),API客户端(如Kubernetes API Python客户端)或Kubernetes Web控制台等方式来发起资源访问请求,通过Kubernetes API访问K8s集群获取目标资源。而为了保证容器云平台的资源安全,容器云平台通常会提供安全机制来保护其中的容器和数据资源,如基于角色的访问控制(RBAC)、网络隔离和加密等,终端设备需要经过身份验证、授权等认证才能获取到其有权限访问的资源信息。
步骤202:网关设备基于目标对象发送的目标资源访问请求,确定目标对象需访问容器云平台中的多个资源空间。
本申请实施例中,终端设备发送的资源访问请求将经过网关设备转发至容器云平台,但容器云平台限制了对象的访问权限范围,每个对象只能访问特定的一个资源空间下的资源信息,使得目标对象访问容器云平台中多个资源空间下资源信息的请求无法得到容器云平台的正常响应。本申请实施例中网关设备接收到终端设备发送的资源访问请求,不会直接转发至容器云平台,而是通过判断目标对象是否需访问多个资源空间,从而确定是否执行后续的更新处理等流程,以保证目标对象可正常访问容器云平台中多个资源空间的资源信息。
在一种可能的实施方式中,网关设备接收到目标对象发送的资源访问请求,根据该资源访问请求携带的请求参数信息,确定目标对象所需访问的资源空间的数量,若确定其需访问的资源空间的数量不是一个时,则确定目标对象需访问容器云平台中的多个资源空间,并执行后续的处理流程。当确定目标对象所需访问的资源空间的数量为一个时,网关设备无需对该资源访问请求做进一步处理,可将资源访问请求直接发送至容器云平台。
具体的,以K8s容器云平台为例,请求参数信息可以为资源访问请求携带的资源空间名称信息。当网关设备接收到目标对象发送的资源访问请求时,根据路由匹配规则确定该请求是针对K8s集群的资源访问请求,并解析该资源访问请求,获得与该资源访问请求对应的统一资源定位符(Uniform Resource Locator,URL),通过URL中的namespace=、namespace!=等表征资源空间名称的请求参数信息,来确定该资源访问请求携带的资源空间名称的数量,从而确定目标对象需访问的资源空间的数量。
步骤203:网关设备基于目标资源访问请求携带的对象权限信息,向容器云平台发送参数获取请求。
本申请实施例中,目标资源访问请求还携带有可表征目标对象的身份信息以及权限信息的对象权限信息,网关设备在确定目标对象需访问容器云平台中的多个资源空间之后,将根据该对象权限信息向容器云平台发送参数获取请求,用于通过参数获取请求携带的对象权限信息,从容器云平台获取目标对象关联的目标项目的管理员权限信息,以及指示目标项目中目标对象有权限访问的至少一个目标资源空间的目标资源空间标识集合。
在一种可能的实施方式中,以K8s容器云平台为例,目标资源访问请求携带的对象权限信息可以是目标对象用于访问容器云平台资源的数字凭证、API密钥或其他形式的安全令牌,例如资源访问请求中的X-Remote-User或Authorization等参数,容器云平台可通过身份验证服务识别X-Remote-User或Authorization参数对应的用户身份信息。
步骤204:容器云平台基于对象权限信息,确定目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合。
步骤205:容器云平台返回目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合至网关设备。
本申请实施例中,容器云平台接收到网关设备发送的参数获取请求,根据其携带的对象权限信息确定目标对象的身份信息,从预先存储的项目与关联对象的映射关系中确定出目标对象关联的目标项目、目标项目的管理员权限信息以及目标项目中目标对象有权限访问的多个目标资源空间标识,并将上述信息返回给网关设备。
在一种可能的实施方式中,为了进一步保证容器云平台的资源安全,容器云平台将先根据对象权限信息,确定参数获取请求是否通过合法性校验,在定获取请求合法后,根据对象权限信息确定目标对象关联的目标项目,以及与目标项目对应的管理员权限信息,从目标项目中确定所目标对象有权限访问的多个目标资源空间,并根据多个目标资源空间各自的目标资源空间标识,确定目标资源空间标识集合,并将上述信息返回给网关设备。
具体的,以K8s容器云平台为例,可由K8s容器云平台中的Account-service组件来处理网关设备发送的参数获取请求。参考图3所示,Account-service服务组件解析其接收到的参数获取请求,获取该参数获取请求携带的X-Remote-User或Authorization等对象权限信息,并根据上述对象权限信息,对参数获取请求进行合法性校验,包括对对象权限信息进行格式验证,判断该对象权限信息是否正确;根据对象权项信息判断对应的目标对象是否属于K8s集群的合法用户,是否有权限对集群中资源进行访问等。在确定参数获取请求通过合法性校验后,从预先存储的项目与关联对象的映射关系中,确定目标对象关联的目标项目、目标项目的管理员权限信息,以及目标对象有权限访问的多个目标资源空间对应的资源空间标识,并将上述信息返回给网关设备。
步骤206:网关设备基于管理员权限信息和目标资源空间标识集合,对目标资源访问请求进行更新处理。
步骤207:网关设备将更新后的目标资源访问请求发送至容器云平台。
本申请实施例中,网关设备根据接收到容器云平台返回的目标对象关联的管理员权限信息和目标资源空间标识集合,对目标对象发送的用于访问容器云平台中的多个资源空间的目标资源访问请求进行更新,并将更新后的目标资源访问请求转发至容器云平台。
在一种可能的实施方式中,网关设备可按照预先设置的请求参数规则,通过容器云平台返回的与各个目标资源空间一一对应的资源空间标识生成目标请求参数,并利用该目标请求参数,对目标资源访问请求中的请求参数字段进行填充,根据容器云平台返回的管理员权限信息替换目标资源访问请求携带的对象权限信息,来完成对目标资源访问请求的更新处理。
具体的,网关设备可通过URL重写技术对目标资源访问请求对应的URL进行更新处理,包括利用容器云平台返回的管理员权限信息替换目标资源访问请求携带的Authorization或X-Remote-User等对象权限信息,按照预设请求参数规则生成fieldSelector=metadata.namespace=目标请求参数,并将容器云平台返回的目标对象有权限访问的各个资源空间对应的各个目标资源空间标识,添加进该目标请求参数中,使得最终重写后的URL携带有目标对象需访问的目标项目中多个目标资源空间的资源空间标识信息以及目标项目的管理员权限信息,在扩大目标对象的访问权限的同时,控制目标对象只能获取到其有权限访问的目标资源空间下的资源信息。
步骤208:容器云平台根据更新后的目标资源访问请求,获取至少一个目标资源空间中的目标资源。
步骤209:容器云平台将目标资源返回给目标对象。
本申请实施例中,容器云平台接收到网关设备转发的更新后的目标资源访问请求,将通过其携带的管理员权限信息以及目标资源空间标识集合,从其内部众多资源空间中筛选出目标对象有权限访问的各个目标资源空间中的目标资源,并发送给目标对象,以满足目标对象访问容器云平台中的多个资源空间的需求。
在一种可能的实施方式中,以K8s容器云平台为例,容器云平台接收到网关设备转发的更新后的目标资源访问请求,其apiserver组件将根据更新后的目标资源访问请求,进行对应的资源过滤处理来获取目标资源,并返回给目标对象。
具体的,apiserver组件解析更新后的目标资源访问请求,获取到其携带的管理员权限信息以及目标资源空间标识集合,对管理员权限信息进行合法性验证,确定该管理员权限信息正确且有权限访问目标项目后,通过资源过滤器逐一查询各个目标资源空间标识对应的目标资源空间,并整合获取到的各个目标资源空间的资源信息,统一返回给目标对象。
在一种可能的实施方式中,更新后的目标资源访问请求携带有代表目标资源空间标识集合的目标请求参数。容器云平台接收到网关设备转发的目标资源请求后,可先根据目标请求参数指示的请求类型,从预设的资源查询策略集合中确定对应的目标资源查询策略,然后通过目标资源查询策略,按照目标请求参数指示的各个目标资源空间标识,获取对应的各个目标资源空间中的目标资源。
具体的,以K8s容器云平台为例,K8s容器云平台中Apiserver组件使用的fieldSelector等资源过滤器,只支持根据namespace=、namespace!=类型的请求参数进行资源过滤,而更新后的目标资源访问请求携带的目标请求参数为fieldSelector=metadata.namespace=类型。因此本申请对Apiserver组件进行了资源过滤功能扩展,为apiserver组件扩展了多个与请求参数类型一一对应的资源查询策略,包括支持namespace=、namespace!=请求参数以及支持fieldSelector=metadata.namespace=请求参数的多个资源查询策略。因此,K8s容器云平台接收到网关设备转发的资源访问请求后,可由apiserver组件先根据该资源访问请求携带的请求参数,选择与其请求类型对应的资源查询策略,通过资源查询策略以及各个目标资源空间标识,获取对应的各个目标资源空间中的目标资源。
下面,结合具体的例子对本申请实施例的方案进行介绍,参见图4以及图5所示,图4为本申请实施例提供的一种客户端通过网关设备与容器云平台交互的结构示意图,图5为本申请实施例提供的另一种资源访问方法的流程示意图,该方法的具体实施流程如下:
步骤501:目标对象通过客户端发起访问apiserver的目标资源访问请求。
步骤502:网关设备接收客户端发起的目标资源访问请求,判断该目标对象是否需要访问多个资源空间,若是则跳转执行步骤504,若否则跳转执行步骤503。
步骤503:网关设备直接将目标资源访问请求转发给apiserver。
需要说明的是,在网关设备确定该目标对象需要访问多个资源空间的情况下,网关设备不会直接将目标资源访问请求转发给apiserver,即不执行步骤503,步骤503为可选的步骤。
步骤504:网关设备根据目标资源访问请求携带的对象权限信息(X-Remote-User或Authorization参数),向account-service组件发起参数获取请求。
步骤505:account-service组件根据参数获取请求携带的对象权限信息,确定目标对象关联的目标项目的管理员权限信息和目标对象有权限访问的目标资源空间对应的目标资源空间标识集合,并返回给网关设备。
步骤506:网关设备根据管理员权限信息和目标资源空间标识集合,对目标资源访问请求进行url重写,获得更新后的目标资源访问请求。
步骤507:网关设备将更新后的目标资源访问请求转发给apiserver。
步骤508:apiserver判断接收到的目标资源访问请求中是否包含目标请求参数(fieldSelector=metadata.namespace=),若是则执行步骤510,若否则执行步骤509。
步骤509:根据目标资源访问请求携带的代表资源空间名称的请求参数信息(namespace=、namespace!=),将目标对象所需访问的单一资源空间对应的资源信息返回给客户端。
步骤510:根据目标请求参数指示的多个目标资源空间标识进行逐一查询,整合多个目标资源空间对应的目标资源,统一返回给客户端。
请参见图6基于同一发明构思,本申请实施例还提供了一种资源访问装置60,应用于网关设备,该装置包括:
确定单元601,用于基于目标对象发送的目标资源访问请求,确定目标对象需访问容器云平台中的多个资源空间;
获取单元602,用于基于目标资源访问请求携带的对象权限信息,向容器云平台请求获取目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,目标资源空间标识集合指示目标项目中目标对象有权限访问的至少一个目标资源空间;
更新单元603,用于基于管理员权限信息和目标资源空间标识集合,对资源访问请求进行更新处理;
发送单元604,用于将更新后的目标资源访问请求发送至容器云平台,以使得容器云平台基于管理员权限信息获取至少一个目标资源空间中的目标资源后,将获得的目标资源返回给目标对象。
可选的,更新单元603,具体用于:
基于至少一个目标资源空间各自的资源空间标识,按照预设请求参数规则生成目标请求参数;
基于目标请求参数,对目标资源访问请求中的请求参数字段进行填充;
基于管理员权限信息,替换目标资源访问请求携带的对象权限信息。
可选的,确定单元601,具体用于:
接收目标对象发送的资源访问请求,资源访问请求携带请求参数信息;
基于请求参数信息,确定目标对象所需访问的资源空间的数量;
若确定需访问的资源空间的数量不是一个时,则确定目标对象需访问容器云平台中的多个资源空间。
可选的,确定单元601,具体用于:
若确定需访问的资源空间的数量为一个时,则将资源访问请求发送至容器云平台。
请参见图7,基于同一发明构思,本申请实施例还提供了一种资源访问装置70,应用于容器云平台,该装置包括:
第一接收单元701,用于接收网关设备发送的参数获取请求,参数获取请求携带有目标对象的对象权限信息,参数获取请求是网关设备响应于目标对象发送的目标资源访问请求发送的,目标资源访问请求指示目标对象需访问容器云平台中的多个资源空间;
第一返回单元702,用于基于对象权限信息,确定目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,并将管理员权限信息和目标资源空间标识集合返回给网关设备,目标资源空间标识集合指示目标项目中目标对象有权限访问的至少一个目标资源空间;
第二接收单元703,接收网关设备发送的更新后的目标资源访问请求,更新后的目标资源访问请求携带有管理员权限信息和目标资源空间标识集合;
第二返回单元704,用于基于管理员权限信息和目标资源空间标识集合,获取至少一个目标资源空间中的目标资源,并将目标资源返回给目标对象。
具体的,第一返回单元702,具体用于:
基于对象权限信息,确定参数获取请求是否通过合法性校验;
若通过合法性校验,则基于对象权限信息,确定目标对象关联的目标项目,以及与目标项目对应的管理员权限信息;
基于对象权限信息,从目标项目中,确定目标对象有权限访问的至少一个目标资源空间;
基于至少一个目标资源空间各自的目标资源空间标识,确定目标资源空间标识集合。
具体的,第二返回单元704,具体用于:
基于目标请求参数指示的请求类型,从预设的资源查询策略集合中确定对应的目标资源查询策略;其中,资源查询策略集合中各个资源查询策略与各请求类型一一对应;
基于目标资源查询策略,根据目标请求参数指示的目标资源空间标识集合,获取对应的至少一个目标资源空间中的目标资源。
为了描述的方便,以上各部分按照功能划分为各单元模块(或模块)分别描述。当然,在实施本申请时可以把各单元(或模块)的功能在同一个或多个软件或硬件中实现。该装置可以用于执行本申请各实施例中所示的方法,因此,对于该装置的各功能模块所能够实现的功能等可参考前述实施例的描述,不多赘述。
请参见图8,基于同一技术构思,本申请实施例还提供了一种计算机设备,该计算机设备例如可以为图1所示的网关设备或者容器云平台。在一种实施例中,该计算机设备如图所示可以包括存储器801,通讯模块803以及一个或多个处理器802。
存储器801,用于存储处理器802执行的计算机程序。存储器801可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统;存储数据区可存储各种操作指令集等。
存储器801可以是易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写为RAM);存储器801也可以是非易失性存储器(英文:non-volatile memory),例如只读存储器,快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写为HDD)或固态硬盘(英文:solid-state drive,缩写为SSD);或者存储器801是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器801可以是上述存储器的组合。
处理器802,可以包括一个或多个中央处理单元(英文:central processingunit,缩写为CPU)或者为数字处理单元等等。处理器802,用于调用存储器801中存储的计算机程序时实现上述资源访问方法。
通讯模块803用于与其他网络设备进行通信。
本申请实施例中不限定上述存储器801、通讯模块803和处理器802之间的具体连接介质。本申请实施例在图8中以存储器801和处理器802之间通过总线804连接,总线804在图8中以粗线描述,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线804可以分为地址总线、数据总线、控制总线等。为便于描述,图8中仅用一条粗线描述,但并不描述仅有一根总线或一种类型的总线。
存储器801中存储有计算机存储介质,计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于实现本申请实施例的资源访问方法,处理器802用于执行上述各实施例的资源访问方法。
基于同一发明构思,本申请实施例还提供一种存储介质,该存储介质上存储有计算机程序,当该计算机程序指令在计算机上运行时,使得计算机处理器执行本说明书上述描述的根据本申请各种实施例的资源访问方法中的步骤。
在一些可能的实施方式中,本申请提供的资源访问方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机设备上运行时,程序代码用于使计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的资源访问方法中的步骤,例如,计算机设备可以执行各实施例的步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请的实施方式的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在计算装置上运行。然而,本申请的程序产品不限于此,在本申请件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被命令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算装置上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算装置上部分在远程计算装置上执行、或者完全在远程计算装置或服务器上执行。在涉及远程计算装置的情形中,远程计算装置可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户计算装置,或者,可以连接到外部计算装置(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种资源访问方法,其特征在于,应用于网关设备,所述方法包括:
基于目标对象发送的目标资源访问请求,确定所述目标对象需访问容器云平台中的多个资源空间;
基于所述目标资源访问请求携带的对象权限信息,向容器云平台请求获取所述目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,所述目标资源空间标识集合指示所述目标项目中所述目标对象有权限访问的至少一个目标资源空间;
基于所述管理员权限信息和所述目标资源空间标识集合,对所述资源访问请求进行更新处理;
将更新后的目标资源访问请求发送至所述容器云平台,以使得所述容器云平台基于所述管理员权限信息获取所述至少一个目标资源空间中的目标资源后,将获得的目标资源返回给所述目标对象。
2.如权利要求1所述的方法,其特征在于,所述基于所述管理员权限信息和所述目标资源空间标识集合,对所述目标资源访问请求进行更新处理,包括:
基于所述至少一个目标资源空间各自的资源空间标识,按照预设请求参数规则生成目标请求参数;
基于所述目标请求参数,对所述目标资源访问请求中的请求参数字段进行填充;
基于所述管理员权限信息,替换所述目标资源访问请求携带的所述对象权限信息。
3.如权利要求1所述的方法,其特征在于,基于目标对象发送的目标资源访问请求,确定所述目标对象需访问容器云平台中的多个资源空间,包括:
接收所述目标对象发送的资源访问请求,所述资源访问请求携带请求参数信息;
基于所述请求参数信息,确定所述目标对象所需访问的资源空间的数量;
若确定所述需访问的资源空间的数量不是一个时,则确定所述目标对象需访问容器云平台中的多个资源空间。
4.如权利要求3所述的方法,其特征在于,在基于所述请求参数信息,确定所述目标对象所需访问的资源空间的数量之后,所述方法还包括:
若确定所述需访问的资源空间的数量为一个时,则将所述资源访问请求发送至所述容器云平台。
5.一种资源访问方法,其特征在于,应用于容器云平台,所述方法包括:
接收网关设备发送的参数获取请求,所述参数获取请求携带有目标对象的对象权限信息,所述参数获取请求是所述网关设备响应于所述目标对象发送的目标资源访问请求发送的,所述目标资源访问请求指示所述目标对象需访问容器云平台中的多个资源空间;
基于所述对象权限信息,确定所述目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,并将所述管理员权限信息和所述目标资源空间标识集合返回给所述网关设备,所述目标资源空间标识集合指示所述目标项目中所述目标对象有权限访问的至少一个目标资源空间;
接收所述网关设备发送的更新后的目标资源访问请求,所述更新后的目标资源访问请求携带有所述管理员权限信息和所述目标资源空间标识集合;
基于所述管理员权限信息和所述目标资源空间标识集合,获取所述至少一个目标资源空间中的目标资源,并将所述目标资源返回给所述目标对象。
6.如权利要求5所述的方法,其特征在于,基于所述对象权限信息,确定所述目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,包括:
基于所述对象权限信息,确定所述参数获取请求是否通过合法性校验;
若通过所述合法性校验,则基于所述对象权限信息,确定所述目标对象关联的目标项目,以及与所述目标项目对应的管理员权限信息;
基于所述对象权限信息,从所述目标项目中,确定所述目标对象有权限访问的所述至少一个目标资源空间;
基于所述至少一个目标资源空间各自的目标资源空间标识,确定所述目标资源空间标识集合。
7.如权利要求5所述的方法,其特征在于,所述目标资源访问请求中携带目标请求参数,所述目标请求参数表征所述目标资源空间标识集合;则在所述接收所述网关设备发送的更新后的目标资源访问请求之后,所述方法还包括:
基于所述目标请求参数指示的请求类型,从预设的资源查询策略集合中确定对应的目标资源查询策略;其中,所述资源查询策略集合中各个资源查询策略与各请求类型一一对应;
则所述基于所述管理员权限信息和所述目标资源空间标识集合,获取所述至少一个目标资源空间中的目标资源,包括:
基于所述目标资源查询策略,根据所述目标请求参数指示的目标资源空间标识集合,获取对应的至少一个目标资源空间中的目标资源。
8.一种资源访问方法装置,其特征在于,应用于网关设备,所述装置包括:
确定单元,用于基于目标对象发送的目标资源访问请求,确定所述目标对象需访问容器云平台中的多个资源空间;
获取单元,用于基于所述目标资源访问请求携带的对象权限信息,向容器云平台请求获取所述目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,所述目标资源空间标识集合指示所述目标项目中所述目标对象有权限访问的至少一个目标资源空间;
更新单元,用于基于所述管理员权限信息和所述目标资源空间标识集合,对所述资源访问请求进行更新处理;
发送单元,用于将更新后的目标资源访问请求发送至所述容器云平台,以使得所述容器云平台基于所述管理员权限信息获取所述至少一个目标资源空间中的目标资源后,将获得的目标资源返回给所述目标对象。
9.一种资源访问方法装置,其特征在于,应用于容器云平台,所述装置包括:
第一接收单元,用于接收网关设备发送的参数获取请求,所述参数获取请求携带有目标对象的对象权限信息,所述参数获取请求是所述网关设备响应于所述目标对象发送的目标资源访问请求发送的,所述目标资源访问请求指示所述目标对象需访问容器云平台中的多个资源空间;
第一返回单元,用于基于所述对象权限信息,确定所述目标对象关联的目标项目的管理员权限信息和目标资源空间标识集合,并将所述管理员权限信息和所述目标资源空间标识集合返回给所述网关设备,所述目标资源空间标识集合指示所述目标项目中所述目标对象有权限访问的至少一个目标资源空间;
第二接收单元,接收所述网关设备发送的更新后的目标资源访问请求,所述更新后的目标资源访问请求携带有所述管理员权限信息和所述目标资源空间标识集合;
第二返回单元,用于基于所述管理员权限信息和所述目标资源空间标识集合,获取所述至少一个目标资源空间中的目标资源,并将所述目标资源返回给所述目标对象。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,
所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310411290.8A CN116566656A (zh) | 2023-04-13 | 2023-04-13 | 资源访问方法、装置、设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310411290.8A CN116566656A (zh) | 2023-04-13 | 2023-04-13 | 资源访问方法、装置、设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116566656A true CN116566656A (zh) | 2023-08-08 |
Family
ID=87488936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310411290.8A Pending CN116566656A (zh) | 2023-04-13 | 2023-04-13 | 资源访问方法、装置、设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116566656A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117857217A (zh) * | 2024-03-01 | 2024-04-09 | 浙江网商银行股份有限公司 | 云原生平台资源校验方法、装置、存储介质以及电子设备 |
-
2023
- 2023-04-13 CN CN202310411290.8A patent/CN116566656A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117857217A (zh) * | 2024-03-01 | 2024-04-09 | 浙江网商银行股份有限公司 | 云原生平台资源校验方法、装置、存储介质以及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10827008B2 (en) | Integrated user interface for consuming services across different distributed networks | |
US11356440B2 (en) | Automated IoT device registration | |
CN111488595B (zh) | 用于实现权限控制的方法及相关设备 | |
US11750609B2 (en) | Dynamic computing resource access authorization | |
US9609023B2 (en) | System and method for software defined deployment of security appliances using policy templates | |
US20170208098A1 (en) | Managing access to resources | |
US11281621B2 (en) | Clientless active remote archive | |
US8813225B1 (en) | Provider-arbitrated mandatory access control policies in cloud computing environments | |
US8782748B2 (en) | Online service access controls using scale out directory features | |
WO2018053258A1 (en) | Tenant and service management for a multi-tenant identity and data security management cloud service | |
US20120066487A1 (en) | System and method for providing load balancer visibility in an intelligent workload management system | |
CN108289098B (zh) | 分布式文件系统的权限管理方法和装置、服务器、介质 | |
CN106844111B (zh) | 云存储网络文件系统的访问方法 | |
JP2011129117A (ja) | サービスとしてのクラウドフェデレーション | |
CN104769908A (zh) | 基于ldap的多租户云中身份管理系统 | |
US20130086234A1 (en) | Cloud management system and method | |
WO2021047227A1 (zh) | 跨区域共享服务的方法、装置、管理设备及存储介质 | |
CN113886794A (zh) | 计算集群系统、安全鉴权方法、节点设备及存储介质 | |
CN116566656A (zh) | 资源访问方法、装置、设备及计算机存储介质 | |
McCarthy et al. | Personal cloudlets: implementing a user-centric datastore with privacy aware access control for cloud-based data platforms | |
US10785056B1 (en) | Sharing a subnet of a logically isolated network between client accounts of a provider network | |
US20130086140A1 (en) | Cloud management system and method | |
CN115733666A (zh) | 一种密码管理方法、装置、电子设备及可读存储介质 | |
US11297065B2 (en) | Technology for computing resource liaison | |
US11416448B1 (en) | Asynchronous searching of protected areas of a provider network |
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 |