软件资源的管理方法及其装置、电子设备与流程

文档序号:31219184发布日期:2022-08-20 05:18阅读:55来源:国知局
软件资源的管理方法及其装置、电子设备与流程

1.本发明涉及信息安全领域,具体而言,涉及一种软件资源的管理方法及其装置、电子设备。


背景技术:

2.目前,很多开源软件产品都是通过软件仓库引入的,但是软件仓库引入这些软件产品时,无法对第三方开源软件进行漏洞检测,而金融机构要求外部软件产品引入时,必须经过软件审批管理系统登记审批之后才能进行引入。
3.相关技术中,大多金融机构系统通过开源产品(如,nexus平台)搭建,图1是根据现有技术的一种可选的资源拉取流程的示意图,如图1所示,软件仓库包括行内自研和行外开源两类资源,分别位于行内介质存储库(如,release版(发行版)存储库、snapshot版(快照版)存储库等)和行外资源仓库(如,**云仓库等),其中,行内介质存储在单独的宿主机节点上,行外开源资源通过vpn(virtual private network,虚拟专用网络)从行外资源仓库拉取,具体流程如下:在客户端发起资源拉取请求时,首先会通过软件仓库前置的nginx做负载均衡,将资源拉取请求转发给代理仓库集群,代理仓库集群优先从行内介质存储库进行检索,如检索不到,则通过vpn从行外资源仓库拉取。
4.为了确保开源软件使用安全,按照金融机构要求,对于要使用的第三方开源软件,必须在软件审批管理系统完成登记审批后,方可进行引入。然而,由于多数软件仓库产品,特别是行外资源仓库产品,并没有提供相关的功能扩展机制,这样就导致软件仓库无法和软件审批管理系统进行交互联动,也就无法在开源资源拉取时进行引入管控。对于没有在软件审批管理系统进行登记的开源软件,开发人员可以随意拉取引入,这样会导致大量未经充分评估、存在安全漏洞的开源软件发布到生产环境,给生产的稳定运行造成潜在的巨大危害。
5.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

6.本发明实施例提供了一种软件资源的管理方法及其装置、电子设备,以至少解决相关技术中无法实时管控拉取的开源软件资源,容易导致生产环境不稳定的技术问题。
7.根据本发明实施例的一个方面,提供了一种软件资源的管理方法,包括:接收目标客户端发起的资源拉取请求;基于预先建立的扩展模块,对所述资源拉取请求进行解析,得到目标资源的坐标信息;在所述坐标信息指示所述目标资源的资源类型为外部资源的情况下,调用预设接口,其中,所述预设接口预先与管理系统建立关联关系;在确定所述外部资源已在所述预设接口指示的所述管理系统完成登记的情况下,执行所述资源拉取请求。
8.可选地,在接收目标客户端发起的资源拉取请求之前,还包括:基于预设语言类型,在预设平台上增加所述扩展模块,其中,所述扩展模块用于拦截所述资源拉取请求,并在所述资源拉取请求验证通过的情况下,提交至所述预设平台上的负载均衡模块。
9.可选地,在基于预先建立的扩展模块,对所述资源拉取请求进行解析,得到目标资源的坐标信息之后,还包括:对所述坐标信息进行判断,得到判断结果,其中,所述坐标信息至少包括:组标识、资源名称;基于所述判断结果,确定所述目标资源的资源类型,其中,所述资源类型包括:内部资源、外部资源。
10.可选地,在基于所述判断结果,确定所述目标资源的资源类型之后,还包括:在所述目标资源的资源类型为所述内部资源的情况下,将所述资源拉取请求提交至负载均衡模块。
11.可选地,在所述坐标信息指示所述目标资源的资源类型为外部资源的情况下,调用预设接口之前,还包括:基于预设访问策略,对所述管理系统的系统接口进行改造,得到预设格式的系统接口;将所述预设格式的系统接口表征为所述预设接口。
12.可选地,在确定所述外部资源已在所述预设接口指示的管理系统完成登记的情况下,执行所述资源拉取请求之前,还包括:基于所述预设接口,将所述坐标信息以及所述目标资源的包名称上传至所述管理系统,其中,所述坐标信息还包括:资源版本标识,所述管理系统为软件审批管理系统;所述管理系统基于所述坐标信息以及所述包名称,判断所述外部资源的登记状态。
13.可选地,在确定所述外部资源已在所述预设接口指示的管理系统完成登记的情况下,执行所述资源拉取请求的步骤,包括:将所述资源拉取请求提交至负载均衡模块;所述负载均衡模块将所述资源拉取请求转发至预设仓库集群;所述预设仓库集群基于所述坐标信息以及所述包名称,在外部资源仓库中查询所述外部资源;将查询到的所述外部资源返回至所述目标客户端。
14.可选地,负载均衡模块预先与预设仓库集群建立连接关系,所述预设仓库集群预先与外部资源仓库以及内部资源仓库建立连接关系。
15.根据本发明实施例的另一方面,还提供了一种软件资源的管理装置,包括:接收单元,用于接收目标客户端发起的资源拉取请求;解析单元,用于基于预先建立的扩展模块,对所述资源拉取请求进行解析,得到目标资源的坐标信息;调用单元,用于在所述坐标信息指示所述目标资源的资源类型为外部资源的情况下,调用预设接口,其中,所述预设接口预先与管理系统建立关联关系;执行单元,用于在确定所述外部资源已在所述预设接口指示的所述管理系统完成登记的情况下,执行所述资源拉取请求。
16.可选地,所述管理装置还包括:第一增加模块,用于在接收目标客户端发起的资源拉取请求之前,基于预设语言类型,在预设平台上增加所述扩展模块,其中,所述扩展模块用于拦截所述资源拉取请求,并在所述资源拉取请求验证通过的情况下,提交至所述预设平台上的负载均衡模块。
17.可选地,所述管理装置还包括:第一判断模块,用于在基于预先建立的扩展模块,对所述资源拉取请求进行解析,得到目标资源的坐标信息之后,对所述坐标信息进行判断,得到判断结果,其中,所述坐标信息至少包括:组标识、资源名称;第一确定模块,用于基于所述判断结果,确定所述目标资源的资源类型,其中,所述资源类型包括:内部资源、外部资源。
18.可选地,所述管理装置还包括:第一提交模块,用于在基于所述判断结果,确定所述目标资源的资源类型之后,在所述目标资源的资源类型为所述内部资源的情况下,将所
述资源拉取请求提交至负载均衡模块。
19.可选地,所述管理装置还包括:第一改造模块,用于在所述坐标信息指示所述目标资源的资源类型为外部资源的情况下,调用预设接口之前,基于预设访问策略,对所述管理系统的系统接口进行改造,得到预设格式的系统接口;第一表征模块,用于将所述预设格式的系统接口表征为所述预设接口。
20.可选地,所述管理装置还包括:第一上传模块,用于在确定所述外部资源已在所述预设接口指示的管理系统完成登记的情况下,执行所述资源拉取请求之前,基于所述预设接口,将所述坐标信息以及所述目标资源的包名称上传至所述管理系统,其中,所述坐标信息还包括:资源版本标识,所述管理系统为软件审批管理系统;第二判断模块,用于所述管理系统基于所述坐标信息以及所述包名称,判断所述外部资源的登记状态。
21.可选地,所述执行单元包括:第二提交模块,用于将所述资源拉取请求提交至负载均衡模块;第一转发模块,用于所述负载均衡模块将所述资源拉取请求转发至预设仓库集群;第一查询模块,用于所述预设仓库集群基于所述坐标信息以及所述包名称,在外部资源仓库中查询所述外部资源;第一返回模块,用于将查询到的所述外部资源返回至所述目标客户端。
22.可选地,负载均衡模块预先与预设仓库集群建立连接关系,所述预设仓库集群预先与外部资源仓库以及内部资源仓库建立连接关系。
23.根据本发明实施例的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述所述的软件资源的管理方法。
24.在本公开中,接收目标客户端发起的资源拉取请求,基于预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息,在坐标信息指示目标资源的资源类型为外部资源的情况下,调用预设接口,在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求。在本技术中,可通过预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息,并根据坐标信息,调用管理系统的预设接口,在该目标资源完成引入登记后,执行该资源拉取请求,能够实时管控拉取的开源软件资源,从而可以避免开源软件资源不能与管理系统进行交互而造成的软件资源使用安全问题,提高了生产环境的稳定性,进而解决了相关技术中无法实时管控拉取的开源软件资源,容易导致生产环境不稳定的技术问题。
附图说明
25.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
26.图1是根据现有技术的一种可选的资源拉取流程的示意图;
27.图2是根据本发明实施例的一种可选的软件资源的管理方法的流程图;
28.图3是根据本发明实施例的一种可选的基于nginx实现软件资源管控安全的示意图;
29.图4是根据本发明实施例的一种可选的软件资源的管理装置的示意图;
30.图5是根据本发明实施例的一种用于软件资源的管理方法的电子设备(或移动设
备)的硬件结构框图。
具体实施方式
31.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
32.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
33.为便于本领域技术人员理解本发明,下面对本发明各实施例中涉及的部分术语或名词做出解释:
34.软件仓库:是一个用于集中存放软件制品的地方,本发明特指对用maven、npm、pypi等打包管理工具打包的软件资源进行管理的仓库,例如,nexus、artifactory等,其中,
35.maven是一个项目管理工具,包含了一个对象模型,一组标准集合,一个依赖管理系统;
36.npm是package包管理工具,包含了多个包的结构;
37.pypi是python package index的简写,表示python的package(包)索引;
38.nexus是一个强大的maven仓库管理器,用于代理远程仓库及部署第三方构件,简化了本地内部仓库的维护和外部仓库的访问。
39.artifactory是一个可扩展的通用二进制存储库管理器,可在整个应用程序开发和交付过程中自动管理工件和依赖项,是一个能够存放制品(如,人工制品artifacts)的工具。
40.nginx(即engine x),是一个开源的,支持高性能、高并发的web服务和代理服务软件。
41.需要说明的是,本公开中的软件资源的管理方法及其装置可用于信息安全领域在对软件资源进行管理的情况下,也可用于除信息安全领域之外的任意领域在对软件资源进行管理的情况下,本公开中对软件资源的管理方法及其装置的应用领域不做限定。
42.需要说明的是,本公开所涉及的相关信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。例如,本系统和相关用户或机构间设置有接口,在获取相关信息之前,需要通过接口向前述的用户或机构发送获取请求,并在接收到前述的用户或机构反馈的同意信息后,获取相关信息。
43.本发明下述各实施例可应用于各种对软件资源进行管理的系统/应用/设备中。本
发明通过在预设平台(如,nginx)中增加一个扩展模块,利用所有拉取请求都需经由nginx转发的特点,在扩展模块中基于预设语言(如,lua语言)实现拉取请求的拦截、过滤以及解析,最后根据提取到的资源坐标信息,调用软件审批管理系统的接口,对资源的引入登记进行判断,以完成对资源的控制,可以有效解决在软件仓库资源本身因缺少扩展机制无法完成和软件审批管理系统进行交互的情况下,开源软件资源的使用安全问题,实现开源软件资源引入时的实时精准管控。
44.下面结合各个实施例来详细说明本发明。
45.实施例一
46.根据本发明实施例,提供了一种软件资源的管理方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
47.图2是根据本发明实施例的一种可选的软件资源的管理方法的流程图,如图2所示,该方法包括如下步骤:
48.步骤s201,接收目标客户端发起的资源拉取请求。
49.步骤s202,基于预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息。
50.步骤s203,在坐标信息指示目标资源的资源类型为外部资源的情况下,调用预设接口,其中,预设接口预先与管理系统建立关联关系。
51.步骤s204,在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求。
52.通过上述步骤,可以接收目标客户端发起的资源拉取请求,基于预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息,在坐标信息指示目标资源的资源类型为外部资源的情况下,调用预设接口,在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求。在本发明实施例中,可通过预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息,并根据坐标信息,调用管理系统的预设接口,在该目标资源完成引入登记后,执行该资源拉取请求,能够实时管控拉取的开源软件资源,从而可以避免开源软件资源不能与管理系统进行交互而造成的软件资源使用安全问题,提高了生产环境的稳定性,进而解决了相关技术中无法实时管控拉取的开源软件资源,容易导致生产环境不稳定的技术问题。
53.下面结合上述各步骤对本发明实施例进行详细说明。
54.在本发明实施例中,一种可选的,负载均衡模块预先与预设仓库集群建立连接关系,预设仓库集群预先与外部资源仓库以及内部资源仓库建立连接关系。
55.在本发明实施例中,可以根据资源拉取请求频率(即同一时间段内的不同客户端发起的资源拉取请求的数量)评估预设平台(如,nginx)的性能容量,搭建支持高可用、高并发的部署架构,建立适当数量的负载均衡模块,负载均衡模块可以根据当前资源拉取请求数量,进行负载均衡计算,将资源拉取请求转发到不同的预设仓库集群(其中,负载均衡模块预先与预设仓库集群建立连接关系),通过预设仓库集群,查询外部资源仓库以及内部资源仓库中的软件资源(其中,预设仓库集群预先与外部资源仓库以及内部资源仓库建立连
接关系)。
56.可选的,在接收目标客户端发起的资源拉取请求之前,还包括:基于预设语言类型,在预设平台上增加扩展模块,其中,扩展模块用于拦截资源拉取请求,并在资源拉取请求验证通过的情况下,提交至预设平台上的负载均衡模块。
57.在本发明实施例中,可以在预设平台(如,nginx)上,基于预设语言类型(如,lua语言)新增一个扩展模块,通过该扩展模块可以拦截资源拉取请求,并在资源拉取请求验证通过的情况下(即对资源拉取请求进行合法性判断,判断通过的情况下),提交至预设平台上的负载均衡模块。
58.步骤s201,接收目标客户端发起的资源拉取请求。
59.在本发明实施例中,对客户端的类型不做限制,可以是移动客户端、某应用客户端等。
60.步骤s202,基于预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息。
61.在本发明实施例中,可以通过扩展模块对接收到的资源拉取请求进行解析,提取出所拉取资源的坐标信息(即目标资源的坐标信息),该坐标信息包括:gav等坐标信息(即groupid(组标识)、artifactid(资源名称)、version(资源版本标识)等坐标信息)。
62.可选的,在基于预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息之后,还包括:对坐标信息进行判断,得到判断结果,其中,坐标信息至少包括:组标识、资源名称;基于判断结果,确定目标资源的资源类型,其中,资源类型包括:内部资源、外部资源。
63.在本发明实施例中,可以对坐标信息进行判断,得到判断结果,该坐标信息至少包括:组标识、资源名称,本实施例可以通过组标识和资源名称确定软件资源的唯一标识,并基于判断结果,确定目标资源的资源类型,该资源类型包括:内部资源、外部资源。
64.可选的,在基于判断结果,确定目标资源的资源类型之后,还包括:在目标资源的资源类型为内部资源的情况下,将资源拉取请求提交至负载均衡模块。
65.在本发明实施例中,在目标资源的资源类型为内部资源的情况下,可以直接方行,直接将资源拉取请求提交至负载均衡模块,以maven为例,如果坐标信息中的groupid为com.xxx.*形式,其中,xxx表示机构简称,即以com.xxx开头,则认为是内部资源,允许拉取,如果不是,则调用软件审批管理系统接口。
66.可选的,在坐标信息指示目标资源的资源类型为外部资源的情况下,调用预设接口之前,还包括:基于预设访问策略,对管理系统的系统接口进行改造,得到预设格式的系统接口;将预设格式的系统接口表征为预设接口。
67.在本发明实施例中,可以基于预设访问策略(如,通过get访问方式访问系统接口),对管理系统的系统接口进行改造,得到预设格式(如,http格式)的系统接口(如,本实施例可以为软件审批管理系统提供一个get访问方式的http接口),该系统接口可以用来根据资源坐标信息进行引入登记判断。例如,maven接口调用形式可以设置为:
68.http://url/api=groupid*&artifactid*&version*&jar*;
69.其中,url表示软件审批管理系统的访问地址;api表示软件审批管理系统的接口名。
70.表1为一种可选的maven接口调用形式中的请求参数,如表1所示:
71.表1
72.参数名参数类型是否必输示例groupid字符是org.**.poiartifactid字符是poi-**xmlversion字符是4.1.*jar字符是poi-**xml-4.1.*.jar
73.表2为一种可选的软件审批管理系统的响应参数,如表2所示:
74.表2
75.参数名参数类型备注status字符“1”表示未登记,“0”表示已登记err_code字符“0”表示查询正常,非0查询失败err_msg字符例如,返回“查询成功!”76.步骤s203,在坐标信息指示目标资源的资源类型为外部资源的情况下,调用预设接口,其中,预设接口预先与管理系统建立关联关系。
77.在本发明实施例中,在坐标信息指示目标资源的资源类型为外部资源的情况下,可以调用软件审批管理系统提供的校验接口(即预设接口,该,预设接口预先与管理系统建立关联关系),判断该外部资源是否做了引入登记,登记则放行,否则直接拒绝。
78.可选的,在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求之前,还包括:基于预设接口,将坐标信息以及目标资源的包名称上传至管理系统,其中,坐标信息还包括:资源版本标识,管理系统为软件审批管理系统;管理系统基于坐标信息以及包名称,判断外部资源的登记状态。
79.在本发明实施例中,可以基于预设接口,将坐标信息(即gav坐标信息)以及目标资源的包名称(即jar包名)上传至管理系统,管理系统可以基于坐标信息以及包名称,判断外部资源是否做了引入登记(即判断外部资源的登记状态),本实施例中,管理系统即为软件审批管理系统。
80.步骤s204,在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求。
81.可选的,在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求的步骤,包括:将资源拉取请求提交至负载均衡模块;负载均衡模块将资源拉取请求转发至预设仓库集群;预设仓库集群基于坐标信息以及包名称,在外部资源仓库中查询外部资源;将查询到的外部资源返回至目标客户端。
82.在本发明实施例中,在确定外部资源已在预设接口指示的管理系统完成登记的情况下,可以将资源拉取请求提交至负载均衡模块,负载均衡模块可以将资源拉取请求转发至预设仓库集群,基于坐标信息以及包名称,预设仓库集群可以在外部资源仓库中查询外部资源,并将查询到的外部资源返回至目标客户端,完成资源拉取请求。
83.下面结合另一种可选的具体实施方式进行详细说明。
84.图3是根据本发明实施例的一种可选的基于nginx实现软件资源管控安全的示意图,如图3所示,包括:nginx平台(nginx平台包括:负载均衡模块和扩展模块)、进行引入登
记判断的软件审批管理系统、软件仓库(软件仓库包括:代理仓库集群、存储有行内自研资源的行内介质存储库(包括:release版(发行版)存储库、snapshot版(快照版)存储库等)),以及存储有行外开源资源的行外资源仓库(包括,**云仓库等),具体管控流程如下:
85.本实施例可以在nginx上基于预设语言类型新增一个扩展模块,通过该扩展模块对接收到的资源拉取请求进行解析,提取出所拉取资源的坐标信息,之后,可以根据坐标信息进行判断,如果为内部资源,则直接放行;如果为外部资源,则调用软件审批管理系统提供的校验接口,判断该外部资源是否做了引入登记,登记则放行,否则直接拒绝。
86.本实施例可以将扩展模块放置在负载均衡处理环节之前,不同客户端进行资源拉取请求时,可以先将资源拉取发送给nginx的扩展模块(如图3中

),扩展模块对资源拉取请求进行合法性判断(如图3中

,即通过软件审批管理系统进行引入登记判断),判断通过后,再将资源拉取提交给负载均衡模块进行转发(如图3中

),之后代理仓库集群按照资源拉取请求中的资源类型(即内部资源还是外部资源),从行内介质存储库,或者,行外资源仓库中查询相应的软件资源,并将查询到的软件资源返回至相应的客户端,完成资源拉取请求。
87.本发明实施例中,能够解决开源软件仓库产品因缺少扩展机制无法完成和软件审批管理系统交互的问题,可以有效弥补软件仓库在资源管控上的安全短板,并且,与聘请专业公司提供定制化解决方案,通过修改开源产品内核,强行增加安全定制扩展能力的方案相比,本发明实施例可以在短时间内完成nginx上的扩展以及软件审批管理系统的接口改造,成本较低。
88.实施例二
89.本实施例中提供的一种软件资源的管理装置包含了多个实施单元,每个实施单元对应于上述实施例一中的各个实施步骤。
90.图4是根据本发明实施例的一种可选的软件资源的管理装置的示意图,如图4所示,该管理装置可以包括:接收单元40,解析单元41,调用单元42,执行单元43,其中,
91.接收单元40,用于接收目标客户端发起的资源拉取请求;
92.解析单元41,用于基于预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息;
93.调用单元42,用于在坐标信息指示目标资源的资源类型为外部资源的情况下,调用预设接口,其中,预设接口预先与管理系统建立关联关系;
94.执行单元43,用于在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求。
95.上述管理装置,可以通过接收单元40接收目标客户端发起的资源拉取请求,通过解析单元41基于预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息,通过调用单元42在坐标信息指示目标资源的资源类型为外部资源的情况下,调用预设接口,通过执行单元43在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求。在本发明实施例中,可通过预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息,并根据坐标信息,调用管理系统的预设接口,在该目标资源完成引入登记后,执行该资源拉取请求,能够实时管控拉取的开源软件资源,从而可以避免开源软件资源不能与管理系统进行交互而造成的软件资源使用安全问题,提高了生产环
境的稳定性,进而解决了相关技术中无法实时管控拉取的开源软件资源,容易导致生产环境不稳定的技术问题。
96.可选的,管理装置还包括:第一增加模块,用于在接收目标客户端发起的资源拉取请求之前,基于预设语言类型,在预设平台上增加扩展模块,其中,扩展模块用于拦截资源拉取请求,并在资源拉取请求验证通过的情况下,提交至预设平台上的负载均衡模块。
97.可选的,管理装置还包括:第一判断模块,用于在基于预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息之后,对坐标信息进行判断,得到判断结果,其中,坐标信息至少包括:组标识、资源名称;第一确定模块,用于基于判断结果,确定目标资源的资源类型,其中,资源类型包括:内部资源、外部资源。
98.可选的,管理装置还包括:第一提交模块,用于在基于判断结果,确定目标资源的资源类型之后,在目标资源的资源类型为内部资源的情况下,将资源拉取请求提交至负载均衡模块。
99.可选的,管理装置还包括:第一改造模块,用于在坐标信息指示目标资源的资源类型为外部资源的情况下,调用预设接口之前,基于预设访问策略,对管理系统的系统接口进行改造,得到预设格式的系统接口;第一表征模块,用于将预设格式的系统接口表征为预设接口。
100.可选的,管理装置还包括:第一上传模块,用于在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求之前,基于预设接口,将坐标信息以及目标资源的包名称上传至管理系统,其中,坐标信息还包括:资源版本标识,管理系统为软件审批管理系统;第二判断模块,用于管理系统基于坐标信息以及包名称,判断外部资源的登记状态。
101.可选的,执行单元包括:第二提交模块,用于将资源拉取请求提交至负载均衡模块;第一转发模块,用于负载均衡模块将资源拉取请求转发至预设仓库集群;第一查询模块,用于预设仓库集群基于坐标信息以及包名称,在外部资源仓库中查询外部资源;第一返回模块,用于将查询到的外部资源返回至目标客户端。
102.可选的,负载均衡模块预先与预设仓库集群建立连接关系,预设仓库集群预先与外部资源仓库以及内部资源仓库建立连接关系。
103.上述的管理装置还可以包括处理器和存储器,上述接收单元40,解析单元41,调用单元42,执行单元43等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
104.上述处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求。
105.上述存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。
106.本技术还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:接收目标客户端发起的资源拉取请求,基于预先建立的扩展模块,对资源拉取请求进行解析,得到目标资源的坐标信息,在坐标信息指示目标资源的资
源类型为外部资源的情况下,调用预设接口,在确定外部资源已在预设接口指示的管理系统完成登记的情况下,执行资源拉取请求。
107.根据本发明实施例的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,存储器用于存储一个或多个程序,其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的软件资源的管理方法。
108.图5是根据本发明实施例的一种用于软件资源的管理方法的电子设备(或移动设备)的硬件结构框图。如图5所示,电子设备可以包括一个或多个(图中采用102a、102b,
……
,102n来示出)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)、用于存储数据的存储器104。除此以外,还可以包括:显示器、输入/输出接口(i/o接口)、通用串行总线(usb)端口(可以作为i/o接口的端口中的一个端口被包括)、网络接口、键盘、电源和/或相机。本领域普通技术人员可以理解,图5所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子设备还可包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。
109.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
110.在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
111.在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
112.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
113.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
114.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
115.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1