软件开发中开源组件使用的控制方法、装置、设备及存储介质制造方法及图纸

技术编号:35821161 阅读:13 留言:0更新日期:2022-12-03 13:46
本申请的实施例揭示了一种件开发中开源组件使用的方法、装置、设备及存储介质。该方法包括:实时监控待开发的项目的配置文件变化,以获得所述项目中新引入的开源组件;根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件,所述安全知识数据包括版本信息;将所述新引入的开源组件替换为所述目标开源组件引入所述项目中,并获取所述目标开源组件与所述项目中使用的组件之间的安全信息,以根据所述安全信息对所述项目进行安全检测。以此,不仅保证了降低了新引入的开源组件带来的安全风险,还实现了“边开发边修复”的效果,有效的避免了安全问题堆积引发的重大安全问题,并且也有效的保证了软件开发的实时性。并且也有效的保证了软件开发的实时性。并且也有效的保证了软件开发的实时性。

【技术实现步骤摘要】
软件开发中开源组件使用的控制方法、装置、设备及存储介质


[0001]本申请涉及互联网安全领域,具体涉及一种软件开发中开源组件使用的控制方法、装置、电子设备及计算机可读存储介质。

技术介绍

[0002]随着互联网的不断发展,软件使用者对软件的功能性、实时性、易用性等方面的需求越来越高,软件市场的竞争压力越来越大。这要求开发者在短时间内完成大量功能点的开发,并在后期进行持续不断的高速迭代以抢占并稳固市场,目前在软件的开发过程中必然会大量使用开源库,开源软件因其代码的公开性,在一定程度上降低了开发成本,提高了开发效率,但同时也带来了安全风险。
[0003]目前,可在软件开发完成后再对软件进行安全性检测,但是这种实现方案会造成大量的返工并且操作繁琐,且投入的时间成本过高影响实时性。

技术实现思路

[0004]为解决上述技术问题,本申请的实施例提供了一种软件开发中开源组件使用的控制方法及装置、电子设备、计算机可读存储介质以及计算机程序产品。
[0005]根据本申请实施例的一个方面,提供了一种软件开发中开源组件使用的控制方法,包括:实时监控待开发的项目的配置文件变化,以获得所述项目中新引入的开源组件;根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件,所述安全知识数据包括版本信息;将所述新引入的开源组件替换为所述目标开源组件引入所述项目中,并获取所述目标开源组件与所述项目中使用的组件之间的安全信息,以根据所述安全信息对所述项目进行安全检测。
[0006]根据本申请实施例的一个方面,所述根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件,包括:
[0007]基于预先构建的组件安全知识库获取所述新引入的开源组件与所述项目中使用的组件之间的关系,所述关系包括关联关系或制约关系;
[0008]基于所述关联关系推荐版本号与所述新引入的开源组件的版本号不同的开源组件版本作为目标开源组件;
[0009]或,基于所述制约关系推荐其它开源组件作为目标开源组件。
[0010]根据本申请实施例的一个方面,在根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件之前,所述方法还包括:
[0011]获取已知的组件的安全知识数据,所述安全知识数据包括组件的版本信息以及组件之间的关系;
[0012]基于所述安全知识数据构建所述组件安全知识库。
[0013]根据本申请实施例的一个方面,所述方法还包括:
[0014]基于所述组件安全知识库建立组件检索引擎,所述检索引擎用于获取待检索组件
与其他组件之间的安全信息;
[0015]所述获取所述目标开源组件与项目中使用的组件之间的安全信息,以根据所述安全信息对所述项目进行安全检测,包括:
[0016]将所述目标开源组件输入所述组件检索引擎,以得到所述目标开源组件与所述项目使用的组件之间的安全信息,所述安全信息包括所述项目存在的安全问题以及对应的安全修复建议;
[0017]基于所述安全修复建议对所述项目进行修复,并对修复后的项目进行安全检测。
[0018]根据本申请实施例的一个方面,所述根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件,包括:
[0019]根据所述新引入的开源组件的安全知识数据计算对应的特征向量;
[0020]将所述特征向量输入至组件智能推荐模型,以得到所述组件智能推荐模型输出的至少一个开源组件;
[0021]从所述至少一个开源组件中确定所述目标开源组件。
[0022]根据本申请实施例的一个方面,所述从所述至少一个开源组件中确定所述目标开源组件,包括:
[0023]根据至少一个开源组件分别与所述项目中使用的组件之间搭配使用的安全关系获取每个开源组件的安全系数;
[0024]从所述至少一个开源组件中选取安全系数最高的开源组件作为目标开源组件。
[0025]根据本申请实施例的一个方面,所述根据至少一个开源组件分别与所述项目中使用的组件之间搭配使用的安全关系获取每个开源组件的安全系数,包括:
[0026]根据预先构建的组件安全知识库获取所述每个开源组件与所述项目中使用的组件之间搭配使用的安全关系;
[0027]根据所述安全关系得到所述每个开源组件的安全系数。
[0028]根据本申请实施例的一个方面,提供了一种软件开发中开源组件使用的控制装置,包括:
[0029]监控模块,用于实时监控待开发的项目的配置文件变化,以获得所述项目中新引入的开源组件;
[0030]推荐模块,用于根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件,所述安全知识数据包括版本信息;
[0031]检测模块,用于将所述新引入的开源组件替换为所述目标开源组件引入所述项目中,并获取所述目标开源组件与所述项目中使用的组件之间的安全信息,以根据所述安全信息对所述项目进行安全检测。
[0032]根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如前所述的软件开发中开源组件使用的控制方法。
[0033]根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的软件开发中开源组件使用的控制方法。
[0034]根据本申请实施例的一个方面,还提供了一种计算机程序产品,包括计算机程序,
该计算机程序被处理器执行时实现如上所述的软件开发中开源组件使用的控制方法中的步骤。
[0035]在本申请的实施例所提供的技术方案中,一方面,通过实时监控待开发的项目的配置文件变化,以从中获取到项目中新引入的开源组件,并根据新引入的开源组件的安全知识数据推荐引入该项目的目标开源组件,将项目中新引入的开源组件替换为推荐的目标开源组件引入到项目中,由此降低新引入的开源组件带来的安全风险;另一方面,通过获取目标开源组件与项目中使用的组件之间的安全信息,并根据所述安全信息对该项目进行安全检测,以此实现了“边开发边修复”的效果,有效的避免了安全问题堆积引发的重大安全问题,并且也有效的保证了软件开发的实时性。
[0036]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
[0037]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0038]图1是本申请的一示例性实施例示出的软件开发中开源组件使用的控制实施环境示意图;
[0039]图2是本申请的一示例性实施例示出的软件开发中开源组件使用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件开发中开源组件使用的控制方法,其特征在于,包括:实时监控待开发的项目的配置文件变化,以获得所述项目中新引入的开源组件;根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件,所述安全知识数据包括版本信息;将所述新引入的开源组件替换为所述目标开源组件引入所述项目中,并获取所述目标开源组件与所述项目中使用的组件之间的安全信息,以根据所述安全信息对所述项目进行安全检测。2.如权利要求1所述的方法,其特征在于,所述根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件,包括:基于预先构建的组件安全知识库获取所述新引入的开源组件与所述项目中使用的组件之间的关系,所述关系包括关联关系或制约关系;基于所述关联关系推荐版本号与所述新引入的开源组件的版本号不同的开源组件版本作为目标开源组件;或,基于所述制约关系推荐其它开源组件作为目标开源组件。3.如权利要求2所述的方法,其特征在于,在根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件之前,所述方法还包括:获取已知的组件的安全知识数据,所述安全知识数据包括组件的版本信息以及组件之间的关系;基于所述安全知识数据构建所述组件安全知识库。4.如权利要求3所述的方法,其特征在于,所述方法还包括:基于所述组件安全知识库建立组件检索引擎,所述检索引擎用于获取待检索组件与其他组件之间的安全信息;所述获取所述目标开源组件与项目中使用的组件之间的安全信息,以根据所述安全信息对所述项目进行安全检测,包括:将所述目标开源组件输入所述组件检索引擎,以得到所述目标开源组件与所述项目使用的组件之间的安全信息,所述安全信息包括所述项目存在的安全问题以及对应的安全修复建议;基于所述安全修复建议对所述项目进行修复,并对修复后的项目进行安全检测。5.如权利要求1所述的方法,其特征在于,所述根据所述新引入的开源组件的安全知识数据得到推荐的目标开源组件,包括...

【专利技术属性】
技术研发人员:东红林闫保奇周慧英
申请(专利权)人:中国电信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1