CN115208686A - 一种web控制台及访问集群方法、系统、设备、介质 - Google Patents
一种web控制台及访问集群方法、系统、设备、介质 Download PDFInfo
- Publication number
- CN115208686A CN115208686A CN202210904978.5A CN202210904978A CN115208686A CN 115208686 A CN115208686 A CN 115208686A CN 202210904978 A CN202210904978 A CN 202210904978A CN 115208686 A CN115208686 A CN 115208686A
- Authority
- CN
- China
- Prior art keywords
- target
- user interface
- cluster
- command
- web console
- 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 78
- 238000001914 filtration Methods 0.000 claims abstract description 29
- 230000008569 process Effects 0.000 claims description 39
- 238000004590 computer program Methods 0.000 claims description 31
- 230000005540 biological transmission Effects 0.000 claims description 8
- 230000000875 corresponding effect Effects 0.000 description 37
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 238000012423 maintenance Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000008602 contraction Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009469 supplementation Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
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
- H04L63/105—Multiple levels of security
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种web控制台及访问集群方法、系统、设备、介质,应用于web控制台中的web服务端,接收web控制台中的用户界面发送的目标命令,目标命令包括用户界面对接收的初始命令进行过滤后得到的kubectl类命令;确定用户界面中的用户角色的目标集群访问权限;基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;返回目标资源至用户界面。本申请中,用户界面只将kubectl类的目标命令传输给web服务端,可以避免用户界面发送其他指令来恶意操作k8s集群,可以保证k8s集群的安全性;此外,可以避免用户界面获取自身权限之外的资源,能够保证集群资源的访问安全性。
Description
技术领域
本申请涉及容器技术领域,更具体地说,涉及一种web控制台及访问集群方法、系统、设备、介质。
背景技术
容器集群(k8s,kubernetes)是开源的容器集群管理系统。在Docker(应用容器引擎)技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。在容器集群底层,管理集群资源的唯一入口是通过相应的方法调用apiserver的接口。kubectl是Kubernetes官方的命令行工具(CLI),是Kubernetes用户和管理员必备的管理工具。kubectl提供了大量的子命令,方便用户管理Kubernetes集群中的各种功能。kubectl将用户在命令行输入的命令,组织并转化为apiserver能识别的信息,进而实现管理k8s各种资源的一种有效途径。
然而kubectl只是在集群底层使用的,对于运维管理员来说,拥有集群的root权限,能够直接访问集群的底层,其使用kubectl命令是正常的,但对于容器平台来说,普通用户不可能直接访问到底层,容器平台是通过界面对用户服务的。通过界面访问集群,就需要有一种能够查看集群资源的方法。通过界面,能够像在底层一样使用kubectl命令,为此,Web控制台应运而生。
目前业界内各个产品都有自己的Web控制台。这些Web控制台大同小异,基本上都是依赖kubectl工具,基于kubectl进行了各种封装及改造。但这些改造都较复杂,且其基于自身的逻辑增加了多重校验,比如在KubeSphere中,其Web控制台的pod会一直占用底层资源,会造成资源浪费,且由于其带有其他的各种linux命令,使得用户可以操作底层的非k8s的资源。此外,Web控制台的安全性问题是集群安全性的首要保证,对从用户角度而不是运维管理员角度操作集群来说,保证用户的操作安全就可以保证集群的安全。在此过程中,运维管理员通常具有较专业的知识,可以无差错执行各种命令,然而对于集群用户来说,用户只是使用集群资源,并不需要对集群及所在节点做其他操作。因此需要一种安全访问集群资源的方式。
综上所述,如何安全访问集群资源是目前本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种web控制台访问集群方法,其能在一定程度上解决如何安全访问集群资源的技术问题。本申请还提供了一种web控制台及访问集群系统、设备、计算机可读存储介质。
为了实现上述目的,本申请提供如下技术方案:
一种web控制台访问集群方法,应用于web控制台中的web服务端,包括:
接收所述web控制台中的用户界面发送的目标命令,所述目标命令包括所述用户界面对接收的初始命令进行过滤后得到的kubectl类命令;
确定所述用户界面中的用户角色的目标集群访问权限;
基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源;
返回所述目标资源至所述用户界面。
优选的,所述基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源,包括:
在相互隔离的多个kubectl进程中,确定所述目标kubectl命令的目标kubectl进程;
通过所述目标kubectl进程,基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源。
优选的,所述接收所述web控制台中的用户界面发送的目标命令之后,所述确定所述用户界面中的用户角色的目标集群访问权限之前,还包括:
对所述用户界面中的所述用户角色进行身份认证;
若认证通过,则执行所述确定所述用户界面中的所述用户角色的所述目标集群访问权限的步骤。
优选的,所述返回所述目标资源至所述用户界面,包括:
将所述目标资源格式化为目标json字符串;
传输所述目标json字符串至所述用户界面。
优选的,所述接收所述web控制台中的用户界面发送的目标命令,包括:
基于WebSocket协议,接收所述web控制台中的所述用户界面发送的所述目标命令;
所述返回所述目标资源至所述用户界面,包括:
基于所述WebSocket协议,返回所述目标资源至所述用户界面。
一种web控制台访问集群方法,应用于web控制台中的用户界面,包括:
接收初始命令;
对所述初始命令进行过滤,将过滤得到的knbectl类命令作为目标命令;
传输所述目标命令至所述web控制台中的web服务端,以使所述web服务端确定所述用户界面中的用户角色的目标集群访问权限、基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源;
接收所述web服务端返回的所述目标资源。
一种web控制台访问集群系统,应用于web控制台中的web服务端,包括:
第一接收模块,用于接收所述web控制台中的用户界面发送的目标命令,所述目标命令包括所述用户界面对接收的初始命令进行过滤后得到的kubectl类命令;
第一确定模块,用于确定所述用户界面中的用户角色的目标集群访问权限;
第一获取模块,用于基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源;
第一传输模块,用于返回所述目标资源至所述用户界面。
一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上任一所述web控制台访问集群方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述web控制台访问集群方法的步骤。
一种web控制台,包括:
用户界面,用于接收初始命令;对所述初始命令进行过滤,将过滤得到的knbectl类命令作为目标命令;传输所述目标命令至所述web控制台中的web服务端;
所述web服务端,用于确定所述用户界面中的用户角色的目标集群访问权限;基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源;返回所述目标资源至所述用户界面。
本申请提供的一种web控制台访问集群方法,应用于web控制台中的web服务端,接收web控制台中的用户界面发送的目标命令,目标命令包括用户界面对接收的初始命令进行过滤后得到的kubectl类命令;确定用户界面中的用户角色的目标集群访问权限;基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;返回目标资源至用户界面。本申请中,用户界面只将kubectl类的目标命令传输给web服务端,可以避免用户界面发送其他指令来恶意操作k8s集群,可以保证k8s集群的安全性;此外,web服务端可以基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源,可以避免用户界面获取自身权限之外的资源,能够保证集群资源的访问安全性。本申请提供的一种web控制台及访问集群系统、电子设备、计算机可读存储介质也解决了相应技术问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种web控制台访问集群方法的流程图;
图2为web控制台中的权限示意图;
图3为kubectl进程的示意图;
图4为WebSocket长连接的示意图;
图5为WebSocket长连接的另一示意图;
图6为kubectl进程通过spdy协议来与k8s集群中的apiserver进行信息交互的示意图;
图7为本申请实施例提供的一种web控制台访问集群方法的另一流程图;
图8为本申请实施例提供的一种web控制台访问集群系统的结构示意图;
图9为本申请实施例提供的一种电子设备的结构示意图;
图10为本申请实施例提供的一种电子设备的另一结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
容器集群(k8s,kubernetes)是开源的容器集群管理系统。在Docker(应用容器引擎)技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。在容器集群底层,管理集群资源的唯一入口是通过相应的方法调用apiserver的接口。kubectl是Kubernetes官方的命令行工具(CLI),是Kubernetes用户和管理员必备的管理工具。kubectl提供了大量的子命令,方便用户管理Kubernetes集群中的各种功能。kubectl将用户在命令行输入的命令,组织并转化为apiserver能识别的信息,进而实现管理k8s各种资源的一种有效途径。
然而kubectl只是在集群底层使用的,对于运维管理员来说,拥有集群的root权限,能够直接访问集群的底层,其使用kubectl命令是正常的,但对于容器平台来说,普通用户不可能直接访问到底层,容器平台是通过界面对用户服务的。通过界面访问集群,就需要有一种能够查看集群资源的方法。通过界面,能够像在底层一样使用kubectl命令,为此,Web控制台应运而生。
目前业界内各个产品都有自己的Web控制台。这些Web控制台大同小异,基本上都是依赖kubectl工具,基于kubectl进行了各种封装及改造。但这些改造都较复杂,且其基于自身的逻辑增加了多重校验,比如在KubeSphere中,其Web控制台的pod会一直占用底层资源,会造成资源浪费,且由于其带有其他的各种linux命令,使得用户可以操作底层的非k8s的资源。此外,Web控制台的安全性问题是集群安全性的首要保证,对从用户角度而不是运维管理员角度操作集群来说,保证用户的操作安全就可以保证集群的安全。在此过程中,运维管理员通常具有较专业的知识,可以无差错执行各种命令,然而对于集群用户来说,用户只是使用集群资源,并不需要对集群及所在节点做其他操作。因此需要一种安全访问集群资源的方式。而本申请提供的web控制台访问集群方法可以安全访问集群资源。
请参阅图1,图1为本申请实施例提供的一种web控制台访问集群方法的流程图。
本申请实施例提供的一种web控制台访问集群方法,应用于web控制台中的web服务端,可以包括以下步骤:
步骤S101:接收web控制台中的用户界面发送的目标命令,目标命令包括用户界面对接收的初始命令进行过滤后得到的kubectl类命令。
实际应用中,web控制台中的用户界面接收到用户输入的初始指令后,可以对初始指令进行过滤,得到kubectl类的目标命令,并只将目标命令发送给web服务端,相应的,web服务端可以接收用户界面发送的目标命令。
需要说明的是,用户通过Web控制台,实际操作的是集群所在的master节点,所有的命令都是在master节点上执行的,即用户命令最终会在master节点执行,而master节点本质上是一个操作系统,k8s是装在操作系统上的服务。理论上,用户可以在master节点上执行任何命令,不仅仅是kubectl命令,通过Web控制台,用户可以发送任意命令到master节点,这就会造成很大的安全隐患,非运维管理人员之外的其他用户,如果使用了不安全的命令,会对集群造成破坏,而本申请中,因为用户界面发送的目标命令只是kubectl类的命令,所以用户界面无法发送其他类命令给web服务端,且kubectl类命令属于web控制台中的安全命令,因此用户无法借助其他命令来攻击web控制台中的k8s集群,可以保证k8s集群的安全性。此外,在具体应用场景中,用户界面可以基于组件xterm.js来接收用户输入的初始命令,并可以介质命令过滤器来对初始命令进行过滤得到目标命令等,本申请在此不做具体限定。
步骤S102:确定用户界面中的用户角色的目标集群访问权限。
实际应用中,因为在k8s容器平台中,还有多级用户权限,比如用户权限包括超级管理员、域管理员、VDC管理员等,如图2所示,对集群来说,不同权限的用户能访问的资源应是受限的,越权访问必须受到控制。也即不同权限的用户通过Web控制台访问集群时,应该能进行相应级别的访问控制。为此,web服务端在接收web控制台中的用户界面发送的目标命令之后,还需确定用户界面中的用户角色的目标集群访问权限。具体的,web服务端可以先获取用户界面中的用户角色的身份信息,再基于该用户角色的身份信息来确定用户界面中的用户角色的目标集群访问权限等。
具体应用场景中,web服务端在接收web控制台中的用户界面发送的目标命令之后,确定用户界面中的用户角色的目标集群访问权限之前,还可以对用户界面中的用户角色进行身份认证;若认证通过,则执行确定用户界面中的用户角色的目标集群访问权限的步骤,若认证未通过,则可以不执行该目标命令并终止相应的资源获取请求等。在此过程中,web服务端可以基于token来对用户角色进行身份认证等,本申请在此不做具体限定。
步骤S103:基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源。
步骤S104:返回目标资源至用户界面。
实际应用中,web服务端在确定用户界面中的用户角色的目标集群访问权限之后,便可以基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源,并返回目标资源至用户界面,以便用户界面呈现目标资源给用户等。
具体应用场景中,web服务端在基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源的过程中,可以基于kubectl进程来从k8s集群中获取目标资源,为了避免多个用户使用一个kubectl进程而导致资源获取失败的情况,且一个kubectl无法实现多用户的命令执行,因此可以在web服务端中设置多个相互隔离的kubectl进程,且web服务端在相互隔离的多个kubectl进程中,确定目标kubectl命令一一对应的目标kubectl进程;并通过目标kubectl进程,基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源,如图3所示等。这样可以保证目标命令的安全性和持续性,此外,具体的,当用户退出或关闭Web控制台后,web服务端可以关闭属于这个用户的kubectl进程,释放资源,以此来保证多用户的kubectl访问等。
具体应用场景中,web服务端在返回目标资源至用户界面的过程中,考虑到目标资源在k8s集群中的格式可能无法满足用户界面的显示需求,为了使得用户界面能够正常显示目标资源,可以将目标资源格式化为目标json字符串;传输目标json字符串至用户界面。此外,需要说明的是,可以在web服务端中设置命令解析器,由该命令解析器执行将目标资源格式化为目标json字符串,并传输目标json字符串至用户界面的步骤,再者,当需要对用户界面传输的目标命令进行格式转换时,也可以由命令解析器对目标命令进行格式转换等,比如将目标命令转换为kubectl命令的相应格式并进行参数补充等,本申请在此不做具体限定。
具体应用场景中,web服务端在接收web控制台中的用户界面发送的目标命令的过程中,因为Web控制台是一个持续的交互过程,所以web服务端与用户界面间可以通过WebSocket协议来保持上时间的信息交互,也即web服务端可以基于WebSocket协议来快速接收web控制台中的用户界面发送的目标命令;相应的,在返回目标资源至用户界面的过程中,可以基于WebSocket协议来快速返回目标资源至用户界面。需要说明的是,WebSocket是一种双向通信协议,它实现了浏览器与服务器全双工通信,在建立连接后,WebSocket服务器端和客户端都能主动向对方发送或接收数据,客户端和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,WebSocket长连接可以如图4和图5所示等。
需要说的是,具体应用场景中,kubectl进程可以通过spdy协议来与k8s集群中的apiserver进行信息交互来获取目标资源,其过程可以如图6所示,其中,kubectl命令通过spdy协议发送给apiserver,apiserver将命令发送给kubelet,kubelet查找真实的目标资源,并将结果通过ProxyStream回传给apiserver,apiserver将结果返回给kubectl,以此完成从kubectl接收到回传命令执行结果的过程。
本申请提供的一种web控制台访问集群方法,应用于web控制台中的web服务端,接收web控制台中的用户界面发送的目标命令,目标命令包括用户界面对接收的初始命令进行过滤后得到的kubectl类命令;确定用户界面中的用户角色的目标集群访问权限;基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;返回目标资源至用户界面。本申请中,用户界面只将kubectl类的目标命令传输给web服务端,可以避免用户界面发送其他指令来恶意操作k8s集群,可以保证k8s集群的安全性;此外,web服务端可以基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源,可以避免用户界面获取自身权限之外的资源,能够保证集群资源的访问安全性。
请参阅图7,图7为本申请实施例提供的一种web控制台访问集群方法的另一流程图。
本申请实施例提供的一种web控制台访问集群方法,应用于web控制台中的用户界面,可以包括以下步骤:
步骤S201:接收初始命令。
步骤S202:对初始命令进行过滤,将过滤得到的knbectl类命令作为目标命令。
步骤S203:传输目标命令至web控制台中的web服务端,以使web服务端确定用户界面中的用户角色的目标集群访问权限、基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源。
步骤S204:接收web服务端返回的目标资源。
本申请实施例提供的一种web控制台访问集群方法中相应步骤的描述可以参阅上述实施例,在此不再赘述。
请参阅图8,图8为本申请实施例提供的一种web控制台访问集群系统的结构示意图。
本申请实施例提供的一种web控制台访问集群系统,应用于web控制台中的web服务端,可以包括:
第一接收模块101,用于接收web控制台中的用户界面发送的目标命令,目标命令包括用户界面对接收的初始命令进行过滤后得到的kubectl类命令;
第一确定模块102,用于确定用户界面中的用户角色的目标集群访问权限;
第一获取模块103,用于基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;
第一传输模块104,用于返回目标资源至用户界面。
本申请实施例提供的一种web控制台访问集群系统,应用于web控制台中的web服务端,第一获取模块可以包括:
第一确定单元,用于在相互隔离的多个kubectl进程中,确定目标kubectl命令的目标kubectl进程;
第一获取单元,用于通过目标kubectl进程,基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源。
本申请实施例提供的一种web控制台访问集群系统,应用于web控制台中的web服务端,还可以包括:
第一认证模块,用于第一接收模块接收web控制台中的用户界面发送的目标命令之后,第一确定模块确定用户界面中的用户角色的目标集群访问权限之前,对用户界面中的用户角色进行身份认证;若认证通过,则提示第一确定模块执行确定用户界面中的用户角色的目标集群访问权限的步骤。
本申请实施例提供的一种web控制台访问集群系统,应用于web控制台中的web服务端,第一传输模块可以包括:
第一格式化单元,用于将目标资源格式化为目标json字符串;
第一传输单元,用于传输目标json字符串至用户界面。
本申请实施例提供的一种web控制台访问集群系统,应用于web控制台中的web服务端,第一接收模块可以包括:
第一接收单元,用于基于WebSocket协议,接收web控制台中的用户界面发送的目标命令;
第一传输模块可以包括:
第二传输单元,用于基于WebSocket协议,返回目标资源至用户界面。
本申请实施例提供的一种web控制台访问集群系统,应用于web控制台中的web服务端,应用于web控制台中的用户界面,可以包括:
第二接收模块,用于接收初始命令;
第一过滤模块,用于对初始命令进行过滤,将过滤得到的knbectl类命令作为目标命令;
第二传输模块,用于传输目标命令至web控制台中的web服务端,以使web服务端确定用户界面中的用户角色的目标集群访问权限、基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;
第三接收模块,用于接收web服务端返回的目标资源。
本申请还提供了一种web控制台,包括:
用户界面,用于接收初始命令;对初始命令进行过滤,将过滤得到的knbectl类命令作为目标命令;传输目标命令至web控制台中的web服务端;
web服务端,用于确定用户界面中的用户角色的目标集群访问权限;基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;返回目标资源至用户界面。
本申请实施例提供的一种web控制台中相应器件的描述可以参阅上述实施例,在此不再赘述。
本申请还提供了一种电子设备及计算机可读存储介质,其均具有本申请实施例提供的一种web控制台访问集群方法具有的对应效果。请参阅图9,图9为本申请实施例提供的一种电子设备的结构示意图。
本申请实施例提供的一种电子设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:
接收web控制台中的用户界面发送的目标命令,目标命令包括用户界面对接收的初始命令进行过滤后得到的kubectl类命令;
确定用户界面中的用户角色的目标集群访问权限;
基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;
返回目标资源至用户界面。
本申请实施例提供的一种电子设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:在相互隔离的多个kubectl进程中,确定目标kubectl命令的目标kubectl进程;通过目标kubectl进程,基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源。
本申请实施例提供的一种电子设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:接收web控制台中的用户界面发送的目标命令之后,确定用户界面中的用户角色的目标集群访问权限之前,对用户界面中的用户角色进行身份认证;若认证通过,则执行确定用户界面中的用户角色的目标集群访问权限的步骤。
本申请实施例提供的一种电子设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:将目标资源格式化为目标json字符串;传输目标json字符串至用户界面。
本申请实施例提供的一种电子设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:基于WebSocket协议,接收web控制台中的用户界面发送的目标命令;基于WebSocket协议,返回目标资源至用户界面。
本申请实施例提供的一种电子设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如下步骤:接收初始命令;对初始命令进行过滤,将过滤得到的knbectl类命令作为目标命令;传输目标命令至web控制台中的web服务端,以使web服务端确定用户界面中的用户角色的目标集群访问权限、基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;接收web服务端返回的目标资源。
请参阅图10,本申请实施例提供的另一种电子设备中还可以包括:与处理器202连接的输入端口203,用于传输外界输入的命令至处理器202;与处理器202连接的显示单元204,用于显示处理器202的处理结果至外界;与处理器202连接的通信模块205,用于实现电子设备与外界的通信。显示单元204可以为显示面板、激光扫描使显示器等;通信模块205所采用的通信方式包括但不局限于移动高清链接技术(HML)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线连接:无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术。
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:
接收web控制台中的用户界面发送的目标命令,目标命令包括用户界面对接收的初始命令进行过滤后得到的kubectl类命令;
确定用户界面中的用户角色的目标集群访问权限;
基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;
返回目标资源至用户界面。
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:在相互隔离的多个kubectl进程中,确定目标kubectl命令的目标kubectl进程;通过目标kubectl进程,基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源。
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:接收web控制台中的用户界面发送的目标命令之后,确定用户界面中的用户角色的目标集群访问权限之前,对用户界面中的用户角色进行身份认证;若认证通过,则执行确定用户界面中的用户角色的目标集群访问权限的步骤。
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:将目标资源格式化为目标json字符串;传输目标json字符串至用户界面。
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:基于WebSocket协议,接收web控制台中的用户界面发送的目标命令;基于WebSocket协议,返回目标资源至用户界面。
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如下步骤:接收初始命令;对初始命令进行过滤,将过滤得到的knbectl类命令作为目标命令;传输目标命令至web控制台中的web服务端,以使web服务端确定用户界面中的用户角色的目标集群访问权限、基于目标命令及目标集群访问权限,在web控制台的k8s集群中获取对应的目标资源;接收web服务端返回的目标资源。
本申请所涉及的计算机可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
本申请实施例提供的web控制台及访问集群系统、电子设备、计算机可读存储介质中相关部分的说明请参见本申请实施例提供的web控制台访问集群方法中对应部分的详细说明,在此不再赘述。另外,本申请实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种web控制台访问集群方法,其特征在于,应用于web控制台中的web服务端,包括:
接收所述web控制台中的用户界面发送的目标命令,所述目标命令包括所述用户界面对接收的初始命令进行过滤后得到的kubectl类命令;
确定所述用户界面中的用户角色的目标集群访问权限;
基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源;
返回所述目标资源至所述用户界面。
2.根据权利要求1所述的方法,其特征在于,所述基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源,包括:
在相互隔离的多个kubectl进程中,确定所述目标kubectl命令的目标kubectl进程;
通过所述目标kubectl进程,基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源。
3.根据权利要求1所述的方法,其特征在于,所述接收所述web控制台中的用户界面发送的目标命令之后,所述确定所述用户界面中的用户角色的目标集群访问权限之前,还包括:
对所述用户界面中的所述用户角色进行身份认证;
若认证通过,则执行所述确定所述用户界面中的所述用户角色的所述目标集群访问权限的步骤。
4.根据权利要求1所述的方法,其特征在于,所述返回所述目标资源至所述用户界面,包括:
将所述目标资源格式化为目标json字符串;
传输所述目标json字符串至所述用户界面。
5.根据权利要求1所述的方法,其特征在于,所述接收所述web控制台中的用户界面发送的目标命令,包括:
基于WebSocket协议,接收所述web控制台中的所述用户界面发送的所述目标命令;
所述返回所述目标资源至所述用户界面,包括:
基于所述WebSocket协议,返回所述目标资源至所述用户界面。
6.一种web控制台访问集群方法,其特征在于,应用于web控制台中的用户界面,包括:
接收初始命令;
对所述初始命令进行过滤,将过滤得到的knbectl类命令作为目标命令;
传输所述目标命令至所述web控制台中的web服务端,以使所述web服务端确定所述用户界面中的用户角色的目标集群访问权限、基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源;
接收所述web服务端返回的所述目标资源。
7.一种web控制台访问集群系统,其特征在于,应用于web控制台中的web服务端,包括:
第一接收模块,用于接收所述web控制台中的用户界面发送的目标命令,所述目标命令包括所述用户界面对接收的初始命令进行过滤后得到的kubectl类命令;
第一确定模块,用于确定所述用户界面中的用户角色的目标集群访问权限;
第一获取模块,用于基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源;
第一传输模块,用于返回所述目标资源至所述用户界面。
8.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述web控制台访问集群方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述web控制台访问集群方法的步骤。
10.一种web控制台,其特征在于,包括:
用户界面,用于接收初始命令;对所述初始命令进行过滤,将过滤得到的knbectl类命令作为目标命令;传输所述目标命令至所述web控制台中的web服务端;
所述web服务端,用于确定所述用户界面中的用户角色的目标集群访问权限;基于所述目标命令及所述目标集群访问权限,在所述web控制台的k8s集群中获取对应的目标资源;返回所述目标资源至所述用户界面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210904978.5A CN115208686A (zh) | 2022-07-29 | 2022-07-29 | 一种web控制台及访问集群方法、系统、设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210904978.5A CN115208686A (zh) | 2022-07-29 | 2022-07-29 | 一种web控制台及访问集群方法、系统、设备、介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115208686A true CN115208686A (zh) | 2022-10-18 |
Family
ID=83583928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210904978.5A Pending CN115208686A (zh) | 2022-07-29 | 2022-07-29 | 一种web控制台及访问集群方法、系统、设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115208686A (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110208930A1 (en) * | 2010-02-24 | 2011-08-25 | International Business Machines Corporation | Providing Shared Access to Data Storage Resources Across Cluster Computing Environment Boundaries |
CN110245004A (zh) * | 2019-06-13 | 2019-09-17 | 深圳前海微众银行股份有限公司 | 命令执行方法、装置、设备及计算机可读存储介质 |
CN111404923A (zh) * | 2020-03-12 | 2020-07-10 | 北京金山云网络技术有限公司 | 容器集群访问权限的控制方法及系统 |
CN111629059A (zh) * | 2020-05-27 | 2020-09-04 | 浪潮电子信息产业股份有限公司 | 一种集群通信方法、系统、设备及计算机可读存储介质 |
CN111683107A (zh) * | 2020-08-14 | 2020-09-18 | 北京东方通软件有限公司 | 面向互联网的安全审计方法和系统 |
CN112019475A (zh) * | 2019-05-28 | 2020-12-01 | 阿里巴巴集团控股有限公司 | 无服务器架构下的资源访问方法、设备、系统及存储介质 |
CN112367328A (zh) * | 2020-11-13 | 2021-02-12 | 四川长虹电器股份有限公司 | 基于websocket进入Kubernetes集群容器的方法 |
US20210084048A1 (en) * | 2019-09-18 | 2021-03-18 | International Business Machines Corporation | Cognitive Access Control Policy Management in a Multi-Cluster Container Orchestration Environment |
WO2021175152A1 (zh) * | 2020-03-05 | 2021-09-10 | 北京金山云网络技术有限公司 | 容器集群系统、容器控制台和服务器 |
US20210397729A1 (en) * | 2020-06-19 | 2021-12-23 | Salesforce.Com, Inc. | Controlling just in time access to a cluster |
CN113923023A (zh) * | 2021-10-09 | 2022-01-11 | 京东科技信息技术有限公司 | 权限配置和数据处理的方法、装置、电子设备及介质 |
CN114285850A (zh) * | 2021-12-27 | 2022-04-05 | 北银金融科技有限责任公司 | 一种基于容器平台的跨集群多租户资源管理系统 |
US20220131865A1 (en) * | 2020-10-26 | 2022-04-28 | International Business Machines Corporation | Method and system for checking permissions compatibility between a configuration management system and an orchestration system of a computing cluster |
CN114448965A (zh) * | 2021-12-22 | 2022-05-06 | 天翼云科技有限公司 | 一种大数据组件的管理方法、装置、系统及可读存储介质 |
CN114666108A (zh) * | 2022-03-10 | 2022-06-24 | 明阳产业技术研究院(沈阳)有限公司 | 基于自定义资源的身份认证方法、装置、设备及介质 |
-
2022
- 2022-07-29 CN CN202210904978.5A patent/CN115208686A/zh active Pending
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110208930A1 (en) * | 2010-02-24 | 2011-08-25 | International Business Machines Corporation | Providing Shared Access to Data Storage Resources Across Cluster Computing Environment Boundaries |
CN112019475A (zh) * | 2019-05-28 | 2020-12-01 | 阿里巴巴集团控股有限公司 | 无服务器架构下的资源访问方法、设备、系统及存储介质 |
WO2020238751A1 (zh) * | 2019-05-28 | 2020-12-03 | 阿里巴巴集团控股有限公司 | 无服务器架构下的资源访问方法、设备、系统及存储介质 |
CN110245004A (zh) * | 2019-06-13 | 2019-09-17 | 深圳前海微众银行股份有限公司 | 命令执行方法、装置、设备及计算机可读存储介质 |
US20210084048A1 (en) * | 2019-09-18 | 2021-03-18 | International Business Machines Corporation | Cognitive Access Control Policy Management in a Multi-Cluster Container Orchestration Environment |
WO2021175152A1 (zh) * | 2020-03-05 | 2021-09-10 | 北京金山云网络技术有限公司 | 容器集群系统、容器控制台和服务器 |
CN111404923A (zh) * | 2020-03-12 | 2020-07-10 | 北京金山云网络技术有限公司 | 容器集群访问权限的控制方法及系统 |
CN111629059A (zh) * | 2020-05-27 | 2020-09-04 | 浪潮电子信息产业股份有限公司 | 一种集群通信方法、系统、设备及计算机可读存储介质 |
US20210397729A1 (en) * | 2020-06-19 | 2021-12-23 | Salesforce.Com, Inc. | Controlling just in time access to a cluster |
CN111683107A (zh) * | 2020-08-14 | 2020-09-18 | 北京东方通软件有限公司 | 面向互联网的安全审计方法和系统 |
US20220131865A1 (en) * | 2020-10-26 | 2022-04-28 | International Business Machines Corporation | Method and system for checking permissions compatibility between a configuration management system and an orchestration system of a computing cluster |
CN112367328A (zh) * | 2020-11-13 | 2021-02-12 | 四川长虹电器股份有限公司 | 基于websocket进入Kubernetes集群容器的方法 |
CN113923023A (zh) * | 2021-10-09 | 2022-01-11 | 京东科技信息技术有限公司 | 权限配置和数据处理的方法、装置、电子设备及介质 |
CN114448965A (zh) * | 2021-12-22 | 2022-05-06 | 天翼云科技有限公司 | 一种大数据组件的管理方法、装置、系统及可读存储介质 |
CN114285850A (zh) * | 2021-12-27 | 2022-04-05 | 北银金融科技有限责任公司 | 一种基于容器平台的跨集群多租户资源管理系统 |
CN114666108A (zh) * | 2022-03-10 | 2022-06-24 | 明阳产业技术研究院(沈阳)有限公司 | 基于自定义资源的身份认证方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6754475B2 (ja) | ローリングセキュリティプラットフォーム | |
US9380075B2 (en) | System for supervising the security of an architecture | |
US8069443B2 (en) | Techniques for providing services and establishing processing environments | |
CN111400777B (zh) | 一种网络存储系统、用户认证方法、装置及设备 | |
WO2010087829A1 (en) | Selectively communicating data of a peripheral device to plural sending computers | |
CN112099913B (zh) | 一种基于OpenStack实现虚拟机安全隔离的方法 | |
CN104980448A (zh) | 一种远程监控方法、装置及系统 | |
CN106506565A (zh) | 一种远程命令执行方法及设备 | |
EP3826268B1 (en) | Offline management method and device for cloud desktop, and storage medium | |
CN109324873A (zh) | 虚拟化安全管理方法、运行内核驱动的设备及存储介质 | |
CN110233750B (zh) | 私有云管理系统及方法 | |
JP4576449B2 (ja) | スイッチ装置およびコピー制御方法 | |
CN112187718B (zh) | 一种idv云桌面的远程访问云终端和系统 | |
CN115208686A (zh) | 一种web控制台及访问集群方法、系统、设备、介质 | |
US20150304237A1 (en) | Methods and systems for managing access to a location indicated by a link in a remote access system | |
CN109583182B (zh) | 启动远程桌面的方法、装置、电子设备及计算机存储介质 | |
CN112463357B (zh) | 一种服务器带内数据安全交互的方法和设备 | |
CN110493175A (zh) | 一种信息处理方法、电子设备和存储介质 | |
CN107688441B (zh) | 一种存储虚拟化的实现方法及装置 | |
CN104580997A (zh) | 一种视频监控管理系统 | |
CN114024822A (zh) | 基于区块链的物联网设备管理方法、设备、服务器及介质 | |
CN107454010A (zh) | 一种云平台东西流量管控方法 | |
CN104581006A (zh) | 一种视频监控管理方法 | |
CN113407941A (zh) | 一种边缘云节点与终端用户安全管理方法 | |
CN113132295A (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 |