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

服务调试方法、调试服务、电子设备及计算机存储介质

文献发布时间:2023-06-19 11:27:38


服务调试方法、调试服务、电子设备及计算机存储介质

技术领域

本发明涉及计算机应用技术领域,尤其涉及一种服务调试方法、调试服务、电子设备及计算机存储介质。

背景技术

随着微服务技术的发展,利用容器(Kubernetes,K8S)集群管理系统和其应用产品如红帽的云开发平台OpenShift等搭建对应的微服务。为了保证应用产品的正常运行需要在微服务开发的过程中对容器内部署的应用产品的应用服务进行调试。但是,在开发阶段中对多个微服务进行集成调试,或是在生产阶段遇到特殊问题需要进行紧急调试的过程中,均需要容器暴露远程调试端口并提供网络通路,以便于调试终端通过调试端口与容器连接,并对容器内的应用服务进行调试,但是调试终端不能够直接访问容器暴露的远程调试端口。

目前,常在容器内设置调试程序debug,以将容器内的调试端口映射到容器所在宿主物理机网络的端口上,使调试终端可以通过宿主机端口访问容器的调试端口,以完成对应用服务的远程调试工作。由于容器存在启动存在随机性,容器内的宿主物理机网络还是需要暴露给调试终端,且容器调试端口访问的权限没有被控制。通过上述方式对服务进行调试,会导致容器的安全性较低。

发明内容

有鉴于此,本发明实施例提供一种服务调试方法、调试服务端、电子设备及计算机存储介质,以解决现有技术中容器的安全性较低的问题。

为实现上述目的,本发明实施例提供如下技术方案:

本发明实施例第一方面公开了一种服务调试方法,应用于调试服务端,所述调试服务端通过第一网络与调试终端连接,所述调试服务端通过第二网络与容器K8S连接,其中,所述容器K8S内有多个应用服务,所述服务设置有调试端口,所述方法包括:

获取所述调试终端内安全插件中的身份信息;

在确定所述调试终端的身份信息与预先存储的身份信息一致时,获取所述调试终端的调试权限信息;

根据所述调试权限信息,确定所述调试终端是否具有调试应用服务的调试权限;

若确定所述调试终端具有调试应用服务的调试权限,基于所述调试权限信息确定所述应用服务所在容器K8S的地址端口信息和所述应用服务的服务端口信息;

基于所述应用服务所在容器K8S的地址端口信息,建立所述调试终端和所述应用服务所在容器K8S的调试端口连接,以便于所述调试终端通过所述服务端口信息对所述应用服务进行调试。

可选的,所述确定所述调试终端的身份信息与预先存储的身份信息一致,包括:

解析所述身份信息,得到与所述调试终端对应的身份证书;

验证所述调试终端的身份证书中的信息与所述调试服务端预先存储的身份证书中的信息是否一致;

若一致,则确定所述调试终端的身份信息与预先存储的身份信息一致。

可选的,还包括:

若确定所述调试终端不具有调试应用服务的调试权限,则拒绝所述调试终端与所述容器K8S连接。

本发明实施例第二方面公开了一种调试服务端,所述调试服务端包括:安全组件、权限验证组件和端口映射组件;

所述安全组件通过第一网络与调试终端连接,所述安全组件的另一端分别与所述权限验证组件和所述端口映射组件连接,所述端口映射组件与容器K8S内的调试端口连接,其中,所述容器K8S内有多个应用服务;

所述权限验证组件,用于在所述安全组件确定所述调试终端的身份信息与预先存储的身份信息一致时,获取所述调试终端的调试权限信息;根据所述调试权限信息,确定所述调试终端是否具有调试应用服务的调试权限;

所述安全组件,用于获取所述调试终端内安全插件中的身份信息,并确定所述调试终端的身份信息与预先存储的身份信息是否一致;在所述权限验证组件确定所述调试终端具有调试应用服务的调试权限,基于所述调试权限信息确定所述应用服务所在容器K8S的地址端口信息;基于所述应用服务所在容器K8S的地址端口信息,建立所述调试终端和所述应用服务所在容器K8S的调试端口连接,以便于所述调试终端通过所述服务端口信息对所述应用服务进行调试。

可选的,还包括:服务容器管理组件;

所述服务容器管理组件分别与所述权限验证组件和所述端口映射组件连接,所述服务容器管理组件用于对所述容器K8S的调试端口进行管理。

可选的,还包括:配置组件;

所述配置组件分别与所述权限验证组件和所述服务容器管理组件连接,所述配置组件,用于配置所述应用服务的调试信息,以及对服务的调试权限进行管理。

可选的,所述确定所述调试终端的身份信息与预先存储的身份信息是否一致的所述安全组件,具体用于:解析所述身份信息,得到与所述调试终端对应的身份证书;验证所述调试终端的身份证书中的信息与所述调试服务端的身份证书中的信息是否一致;若一致,则确定所述调试终端的身份信息与预先存储的身份信息一致。

可选的,所述安全组件还用于:在权限验证组件确定所述调试终端不具有调试应用服务的调试权限,则拒绝所述调试终端与所述容器K8S连接。

本发明实施例第三方法公开了一种电子设备,所述电子设备用于运行程序,其中,所述程序运行时执行如本发明实施例第一方面公开的任一所述服务调试方法。

本发明实施例第四方面公开了一种计算机存储介质,所述存储介质包括存储程序,其中,在所述程序运行时控制所述存储介质所在设备执行如本发明实施例第一方面公开的任一所述服务调试方法。

基于上述本发明实施例提供的一种服务调试方法、调试服务、电子设备及计算机存储介质,应用于调试服务端,调试服务端通过第一网络与调试终端连接,调试服务端通过第二网络与多个容器K8S连接,其中,容器K8S内有多个应用服务,服务设置有调试端口,方法包括:获取调试终端内安全插件中的身份信息;在确定调试终端的身份信息与预先存储的身份信息一致时,获取调试终端的调试权限信息;根据调试权限信息,确定调试终端是否具有调试应用服务的调试权限;若确定调试终端具有调试应用服务的调试权限,基于调试权限信息确定应用服务所在容器K8S的地址端口信息和应用服务的服务端口信息;基于应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,以便于调试终端通过服务端口信息对应用服务进行调试。在本发明实施例中,通过对调试终端的身份信息进行身份验证,且对调试终端的调试权限信息进行权限校验,在调试终端的身份合法,且具有调试应用服务的调试权限时,能够消除容器K8S暴露调试端口的弊端,以通过调试权限信息中应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,使调试终端通过服务端口信息对应用服务进行调试。能够实现对容器K8S的调试端口进行管理,能够实现提高容器安全性的目的。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例示出的调试服务端、调试终端和容器K8S的应用结构示意图;

图2为本发明实施例示出的调试服务端、调试终端和容器K8S的网络结构示意图;

图3为本发明实施例示出的调试服务端的具体结构示意图;

图4为本发明实施例示出的调试服务端和调试终端的应用结构图;

图5为本发明实施例示出的一种服务调试方法的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

在本发明实施例中,通过对调试终端的身份信息进行身份验证,且对调试终端的调试权限信息进行权限校验,在调试终端的身份合法,且具有调试应用服务的调试权限时,能够消除容器K8S暴露调试端口的弊端,以通过调试权限信息中应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,使调试终端通过服务端口信息对应用服务进行调试。能够实现对容器K8S的调试端口进行管理,能够实现提高容器安全性的目的。

如图1所示,为本发明实施例示出的调试服务端10、调试终端20和容器K8S30的应用结构示意图。

调试服务端10通过第一网络与调试终端20连接,调试服务端10通过第二网络与多个容器K8S30连接。

需要说明的是,多个容器K8S30包括容器K8S31、容器K8S32......和容器K8S3M共M个容器K8S。

每个容器K8S30内均存在多个应用服务300。其中,多个应用服务300包括应用服务301、应用服务302......和应用服务30N共N个应用服务。

进一步,需要说明的是,应用服务可为查询服务、数据服务以及预警服务等。

具体的,调试服务端10可设置在容器K8S30内,调试服务端10基于自身的光纤以太网接口ent1通过第一网络与调试终端20连接;调试服务端10基于自身的光纤以太网接口ent0通过第二网络与容器K8S30的调试端口连接,也就是说,调试服务端10通过第二网络与容器K8S30中用于承载应用服务的单元POD所对应的光纤以太网接口ent0连接,如图2所示。

在本发明实施例中,调试服务端10除了可以设置在容器K8S30内外,还可以设置于容器K8S30外侧。

需要说明的是,调试终端20的数量为至少一个。

第一网络为外部网络,比如4G等互联网。

第二网络为容器K8S30的内网,即容器K8S30内的虚拟网络。

用于承载应用服务的单元POD是承载应用服务的容器K8S管理的最小单元,因此,一个用于承载应用服务的单元POD内设置一个应用服务,也就是说,用于承载应用服务的单元POD的数量与应用服务的数量相同,且一一对应。

基于上述示出的应用结构对应用服务进行调试的过程包括:

可选的,调试终端20想要调试应用服务之前,需要向调试服务端10申请服务调试权限,具体的,调试终端20向调试服务端10发送服务调试允许指令,该服务调试允许指令中携带有想要调试的应用服务40名称,以及允许调试该应用服务的权限请求。

调试服务端10根据服务调试允许指令允许调试终端20调试所请求的应用服务40时,生成调试所请求的应用服务40的调试权限;并将调试所请求的应用服务40的调试权限、应用服务的名称和端口信息、以及该应用服务所处的容器K8S的地址端口信息打包生成调试权限信息,以将生成的调试权限信息发送给调试终端20,同时将调试终端20的身份信息进行预先保存。

调试终端20通过自身内的安全插件21将关于自身的身份信息发送给调试服务端10。

调试服务端10接收调试终端20发送的身份信息,并在确定调试终端的身份信息与预先存储的身份信息一致时,获取调试终端20的调试权限信息。

调试服务端10根据调试权限信息,确定调试终端20是否具有调试应用服务的调试权限。在确定调试终端20具有调试应用服务的调试权限,基于调试权限信息确定进行调试的应用服务40,以及该应用服务40所在容器K8S30的地址端口信息和该应用服务40的服务端口信息。并基于应用服务40所在容器K8S30的地址端口信息,建立调试终端20和应用服务40所在容器K8S30的调试端口连接,以便于调试终端20通过服务端口信息对应用服务40进行调试。

需要说明的是,容器K8S30的调试端口是指Java远程调试端口。

在本发明实施例中,调试服务端通过对调试终端的身份信息进行身份验证,且对调试终端的调试权限信息进行权限校验,在调试终端的身份合法,且具有调试应用服务的调试权限时,能够消除容器K8S暴露调试端口的弊端,以通过调试权限信息中应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,使调试终端通过服务端口信息对应用服务进行调试。能够实现对容器K8S的调试端口进行管理,能够实现提高容器安全性的目的。

基于上述图1示出的调试服务端10、调试终端20和容器K8S30的应用结构,本发明实施例在具体实现中,还公开了图1示出的调试服务端10的具体结构,如图3所示。

调试服务端10包括安全组件101、权限验证组件102和端口映射组件103。

安全组件101的一端通过第一网络与调试终端20连接,安全组件101的另一端分别与权限验证组件102和端口映射组件103连接,端口映射组件103与容器K8S30内的调试端口连接。

具体的,安全组件101通过第一网络与调试终端20连接;安全组件101通过第二网络分别与权限验证组件102和端口映射组件103连接,端口映射组件103通过第二网络与容器K8S30的调试端口连接,以建立端口映射组件103与容器K8S30中的应用服务的连接关系。

可选的,调试终端20内包括:提供客户端IDE远程调试的安全插件21。

安全插件21用于存储调试终端20的身份信息。

安全组件101,用于获取调试终端20内安全插件21中的身份信息,并确定调试终端的身份信息与预先存储的身份信息是否一致;在安全组件确定调试终端的身份信息与预先存储的身份信息一致时,执行权限验证组件102。在权限验证组件102确定调试终端20具有调试应用服务40的调试权限,基于调试权限信息确定应用服务40所在容器K8S30的地址端口信息;基于应用服务40所在容器K8S30的地址端口信息,建立调试终端20和应用服务40所在容器K8S30的调试端口连接,以便于调试终端20通过服务端口信息对应用服务40进行调试。

权限验证组件102,用于在安全组件确定调试终端20的身份信息与预先存储的身份信息一致时,获取调试终端20的调试权限信息;根据调试权限信息,确定调试终端20是否具有调试应用服务40的调试权限,在权限验证组件确定调试终端具有调试应用服务40的调试权限时,执行安全组件101。

在具体实现中,安全组件101接收调试终端20发送的关于调试终端20的身份信息,并验证调试终端20的身份信息与预先存储的身份信息是否相同;在确定调试终端20的身份信息与预先存储的身份信息相同时,权限验证组件102获取调试终端20的调试权限信息;判断调试终端所发送的调试权限信息中是否存在具有调试所请求的应用服务的调试权限,若有,从获取到的调试权限信息中,查找所请求的应用服务40所在容器K8S30的地址端口信息和应用服务40的服务端口信息。根据应用服务40所在容器K8S30的地址端口信息确定所请求的应用服务40所处的容器K8S30,并建立调试终端20与应用服务40所处的容器K8S30的调试端口连接。以便于调试终端20通过服务端口信息对应用服务40进行调试。

需要说明的是,身份信息包括用户名密码信息、地址认证信息、白名单信息、名单信息及SSL双向证书等至少一项。

预先存储的身份信息是指调试服务端10在允许调试终端20调试应用服务40之后,存储的调试终端20的身份信息。

可选的,调试终端20想要调试应用服务40之前,需要向调试服务端10申请服务调试权限,具体的,调试终端20向调试服务端10发送服务调试允许指令,该服务调试允许指令中携带有想要调试的应用服务40名称,以及允许调试该应用服务40的权限请求。

调试服务端10根据服务调试允许指令允许调试终端20调试所请求的应用服务40时,生成调试所请求的应用服务40的调试权限;并将调试所请求的应用服务40的调试权限、应用服务40的名称和端口信息、以及该应用服务40所处的容器K8S30的地址端口信息打包生成调试权限信息,以将生成的调试权限信息发送给调试终端20,同时将调试终端20的身份信息进行预先保存。

可选的,安全组件101还用于:在权限验证组件102确定调试终端20不具有调试应用服务的调试权限,则拒绝调试终端20与容器K8S连接。

在具体实现中,安全组件101在确定调试终端20不具有调试应用服务的调试权限时,不建立调试终端20与容器K8S连接。

可选的,继续参见图2,图2还示出了服务容器管理组件104和配置组件105。

服务容器管理组件104分别与权限验证组件102和端口映射组件103连接,服务容器管理组件104用于对容器K8S30的调试端口进行管理。

在具体实现中,服务容器管理组件104对连接的容器所对应的调试端口的生命周期信息进行添加、修改和删除管理,并根据应用服务的数量和数据变化,管理容器所对应的调试端口信息。

进一步的,端口映射组件103还用于:根据服务容器管理组件104所维护的调试端口,在容器K8S30外建立一个监听端口,以便于调试终端20连接;且维护容器K8S30的调试端口。

配置组件105分别与权限验证组件102和服务容器管理组件104连接,配置组件105,用于配置应用服务40的调试信息,以及对应用服务40的调试权限进行管理。

在具体实现中,配置组件105对调试终端的用户和运维人员提供通用的客户端界面和标准服务接口,以便于根据服务调试允许指令允许调试终端调试所请求的应用服务时,生成调试所请求的应用服务的调试权限后,配置应用服务40的调试权限,及应用服务40的调试信息。

在本发明实施例中,安全组件对获取到的调试终端的身份信息进行身份验证,在调试终端的身份合法时,权限验证组件对调试终端的调试权限信息进行权限校验,在调试终端具有调试应用服务的调试权限时,以便于安全组件通过调试权限信息中应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,使调试终端通过服务端口信息对应用服务进行调试。能够实现对容器K8S的调试端口进行管理,能够实现提高容器安全性的目的。

可选的,基于上述示出的调试服务端10的具体结构图,确定调试终端20的身份信息与预先存储的身份信息是否一致的安全组件101,具体用于:解析身份信息,得到与调试终端20对应的身份证书;验证调试终端20的身份证书中的信息与调试服务端10预先存储的身份证书中的信息是否一致;若一致,则确定调试终端20的身份信息与预先存储的身份信息一致。

在具体实现中,安全组件101对获取到的身份信息进行解析,确定与调试终端20对应的身份证书。安全组件101读取身份证书中的相关的明文信息,比如身份证书相关的域名信息和有效时间等,比较相关的明文信息与预先存储的身份证书中的明文信息是否一致,若一致,确定调试终端20的身份合法。若不一致,则说明调试终端20的身份不合法,并拒绝调试终端与容器K8S连接。

可选的,在获取身份信息之前,调试终端20与调试服务端10连接后,调试终端20会先接收调试服务端10的安全组件101发送的调试服务端10的身份证书,并验证调试服务端10的合法性,在确定调试服务端10合法后,向调试服务端10的安全组件101发送携带有调试终端20身份证书的身份信息,以便于调试服务端10获取。

在本发明实施例中,除了上述示出的验证调试终端20的身份证书外,安全组件101还可以在读取到身份证书中的相关的明文信息后,基于明文信息计算得到信息摘要,并利用对应的公钥解密签名数据;然后验证签名数据和身份证书的信息摘要是否一致,若一致,则可以确认调试终端20身份证书的合法性。

在本发明实施例中,安全组件解析身份信息,得到与调试终端对应的身份证书;验证调试终端的身份证书中的信息与调试服务端预先存储的身份证书中的信息是否一致;若一致,则确定调试终端的身份合法。以便于后续权限验证组件对调试终端的调试权限信息进行权限校验,在调试终端具有调试应用服务的调试权限时,使安全组件通过调试权限信息中应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,使调试终端通过服务端口信息对应用服务进行调试。能够实现对容器K8S的调试端口进行管理,能够实现提高容器安全性的目的。

为了更好的理解上述实施例示出的通过SSL双向证书验证调试终端的过程,图4示出调试服务端的应用结构进行举例说明,具体内容详见以下过程。

假设调试终端A的安全插件中存在调试终端A的身份证书a,调试服务端S的安全组件S1存储调试服务端S的身份证书s。

调试终端A与调试服务端S连接后,调试终端A会先接收调试服务端S的安全组件S1发送的调试服务端S的身份证书s,并验证调试服务端S的合法性,在确定调试服务端S合法后,向调试服务端S的安全组件S1发送携带有调试终端A身份证书a的身份信息。

安全组件S1对获取到的身份信息进行解析,确定与调试终端A对应的身份证书a。安全组件S1读取到身份证书a中的相关的明文信息后,基于明文信息计算得到信息摘要,并利用对应的公钥解密签名数据;然后验证签名数据和身份证书的信息摘要是否一致,若一致,则可以确认调试终端A身份证书a的合法性。

其中,除了上述示出的调试终端A外,其他的调试终端,比如调试终端B也可以与调试服务端S进行SSL双向认证。

在本发明实施例中,安全组件解析身份信息,得到与调试终端对应的身份证书;验证调试终端的身份证书中的信息与调试服务端预先存储的身份证书中的信息是否一致;若一致,则确定调试终端的身份合法。以便于后续权限验证组件对调试终端的调试权限信息进行权限校验,在调试终端具有调试应用服务的调试权限时,使安全组件通过调试权限信息中应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,使调试终端通过服务端口信息对应用服务进行调试。能够实现对容器K8S的调试端口进行管理,能够实现提高容器安全性的目的。

基于上述本发明实施例示出的调试服务端,本发明还对应公开了一种服务调试方法,该服务调试方法适用于上述公开的服务调试系统,如图5所示,为本发明实施例示出的一种服务调试方法的流程示意图,该服务调试方法包括:

步骤S501:获取调试终端内的安全插件中的身份信息。

可选的,调试终端通过自身内的安全插件将关于自身的身份信息发送给调试服务端。

在具体实现步骤S501的过程中,接收调试终端发送的关于调试终端的身份信息。

需要说明的是,身份信息包括用户名密码信息、客户端特征信息(IP、MAC及硬/软件相关信息)及SSL双向证书等至少一项。

其中,当身份信息为用户名密码信息时,调试服务端接收调试终端利用明文、散列值或者密文的方式传递自身的用户名信息及登录密码。以便于调试服务端后续根据用户名密码验证调试终端的身份,但是,用户名密码信息容易被截获,而导致调试终端的安全性低。

当身份信息为客户端特征信息(IP、MAC及硬/软件相关信息)时,调试服务端接收调试终端利用明文、散列值或者密文的方式传递的根据硬件特征限定的登录终端信息。以便于调试服务端后续根据客户端特征信息验证调试终端的身份,但是,客户端特征信息容易被伪造,而导致调试终端的安全性低。

为了更好的保证调试终端的安全性,一般根据自身使用范围及安全等级要求的不同情况选择合适的安全证书,比如自签名证书或CA机构签名证书等来提高调试终端的安全性,当身份信息为SSL双向证书时,调试服务端接收调试终端利用明文、散列值或者密文的方式传递的与自身对应的身份证书,以便于调试服务端后续根据身份证书验证调试终端的身份。

可选的,调试终端发送的与自身对应的身份证书之前,会接收调试服务端发送的调试服务端的身份证书,并验证调试服务端的合法性,以完成调试终端和调试服务端的双向认证。

进一步,需要说明的是,身份信息还可以包括调试终端地址信息,及黑/白名单信息等。

步骤S502:判断调试终端的身份信息与预先存储的身份信息是否一致,若一致,则执行步骤S503,若不一致,则说明调试终端的身份不合法,并执行步骤S507。

在具体实现步骤S502的过程中,在为调试终端和容器建立连接时,调试服务端需要验证调试终端的合法性。首先,根据调试终端的身份证标识号ID,在预先存储的多个身份信息中确定与该调试终端对应预先存储的身份信息;再验证调试终端的身份信息与该预先存储的身份信息是否相同,若相同,说明调试终端的身份合法,若不相同,则说明调试终端的身份不合法,并执行步骤S507。

需要说明的是,预先存储的身份信息是指调试服务端在允许调试终端调试应用服务之后,存储的调试终端的身份信息。

步骤S503:获取调试终端的调试权限信息。

可选的,调试终端想要调试应用服务之前,需要向调试服务端申请服务调试权限,具体的,调试终端向调试服务端发送服务调试允许指令,该服务调试允许指令中携带有想要调试的应用服务名称,以及允许调试该应用服务的权限请求。

调试服务端根据服务调试允许指令允许调试终端调试所请求的应用服务时,生成调试所请求的应用服务的调试权限;并将调试所请求的应用服务的调试权限、应用服务的名称和端口信息、以及该应用服务所处的容器K8S的地址端口信息打包生成调试权限信息,以将生成的调试权限信息发送给调试终端,同时将调试终端的身份信息进行预先保存。

在具体实现步骤S503的过程中,接收调试终端发送的自身所存储的调试权限信息。

需要说明的是,调试权限信息包括调试所请求的应用服务的调试权限、应用服务的名称和端口信息、以及该应用服务所处的容器K8S的地址端口信息。

步骤S504:根据调试权限信息,确定调试终端是否具有调试应用服务的调试权限,若确定调试终端具有调试应用服务的调试权限,则执行步骤S505,若确定调试终端不具有调试应用服务的调试权限,则执行步骤S507。

在具体实现步骤S504的过程中,判断调试终端所发送的调试权限信息中是否存在具有调试所请求的应用服务的调试权限,若有,则执行步骤S505,若没有,则执行步骤S507。

步骤S505:基于调试权限信息确定应用服务所在容器K8S的地址端口信息和应用服务的服务端口信息。

在具体实现步骤S505的过程中,从获取到的调试权限信息中,查找所请求的应用服务所在容器K8S的地址端口信息和应用服务的服务端口信息。

需要说明的是,容器K8S的地址端口信息指示容器K8S的位置。

应用服务的服务端口信息指示容器内应用服务的位置。

步骤S506:基于应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,以便于调试终端通过服务端口信息对应用服务进行调试。

在具体实现步骤S506的过程中,根据应用服务所在容器K8S的地址端口信息确定所请求的应用服务所处的容器K8S,并建立调试终端与应用服务所处的容器K8S的调试端口连接。

可选的,调试终端通过服务端口信息确定容器K8S中应用服务的位置,并对该应用服务进行调试。

步骤S507:拒绝调试终端与容器K8S连接。

以上本发明实施例公开的服务调试方法的具体工作过程,可参见本发明上述实施例公开的调试服务端中的各个模块和单元中的对应内容这里不再进行赘述。

在发明实施例中,安全组件对获取到的调试终端的身份信息进行身份验证,在调试终端的身份合法时,权限验证组件对调试终端的调试权限信息进行权限校验,在调试终端具有调试应用服务的调试权限时,以便于安全组件通过调试权限信息中应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,使调试终端通过服务端口信息对应用服务进行调试。能够实现对容器K8S的调试端口进行管理,能够实现提高容器安全性的目的。

基于上述本发明实施例示出的服务调试方法,在执行步骤S502的过程中,包括以下步骤:

步骤S11:解析身份信息,得到与调试终端对应的身份证书。

在具体实现步骤S11的过程中,对获取到的身份信息进行解析,确定与调试终端对应的身份证书。

可选的,在获取身份信息之前,调试终端与调试服务端连接后,调试终端会先接收调试服务端发送的调试服务端的身份证书,并验证调试服务端的合法性,在确定调试服务端合法后,向调试服务端发送携带有调试终端身份证书的身份信息,以便于调试服务端获取。

步骤S12:验证调试终端的身份证书中的信息与调试服务端预先存储的身份证书中的信息是否一致,若一致,则执行步骤S13,若不一致,则说明调试终端的身份不合法,并拒绝调试终端与容器K8S连接。

在具体实现步骤S12的过程中,调试服务端读取身份证书中的相关的明文信息,比如身份证书相关的域名信息和有效时间等,比较相关的明文信息与预先存储的身份证书中的明文信息是否一致,若一致,则执行步骤S13,若不一致,则说明调试终端的身份不合法,并拒绝调试终端与容器K8S连接。

可选的,基于上述步骤S12示出验证方式,调试服务端还可以:在读取到身份证书中的相关的明文信息后,基于明文信息计算得到信息摘要,并利用对应的公钥解密签名数据;然后验证签名数据和身份证书的信息摘要是否一致,若一致,则可以确认身份证书的合法性。

步骤S13:确定调试终端的身份信息与预先存储的身份信息一致。

在具体实现步骤S13的过程中,确定调试终端的身份合法。

在本发明实施例中,安全组件解析身份信息,得到与调试终端对应的身份证书;验证调试终端的身份证书中的信息与调试服务端预先存储的身份证书中的信息是否一致;若一致,则确定调试终端的身份合法。以便于后续权限验证组件对调试终端的调试权限信息进行权限校验,在调试终端具有调试应用服务的调试权限时,使安全组件通过调试权限信息中应用服务所在容器K8S的地址端口信息,建立调试终端和应用服务所在容器K8S的调试端口连接,使调试终端通过服务端口信息对应用服务进行调试。能够实现对容器K8S的调试端口进行管理,能够实现提高容器安全性的目的。

本发明实施例还公开了一种电子设备,该电子设备用于运行程序,其中,所述运行程序存储过程时执行上述图5公开的服务调试方法。

本发明实施例还公开了一种计算机存储介质,所述存储介质包括存储程序,其中,在所述数据库存储程序过程运行时控制所述存储介质所在设备执行上述图5公开的服务调试方法。

在本公开的上下文中,计算机存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

相关技术
  • 服务调试方法、调试服务、电子设备及计算机存储介质
  • 交换机调试方法和装置、服务器、计算机可读存储介质
技术分类

06120112935224