Sonatype Insight工具集为企业提供开源软件评估支持

Sonatype公司,Maven项目的主要推动者,最近发布了一款名为Sonatype Insight的工具集,意在帮助企业理解和评估开源软件在企业中的使用情况。目前提供此类服务的公司正呈现不断增长之势。

该工具集包含三个组件——管理评估工具(Management Insight)、应用评估工具(Application Insight)和开发评估工具(Development Insight)。使用该工具集可以分析出企业中正在使用的软件中所包含的开源组件的类别、来源及应遵守的开源协议等。此外,Sonatype工具集还提 供了可视化视图,该视图可显示出与服务器上已安装软件有冲突的开源组件,从而起到降低系统安全隐患以及减少商业损失的效果。

此外,该工具集还是与工具无关的,支持Maven、Ant、Eclipse、Jenkins、Hudson及其他工具。该工具集依赖于Maven的 中央版本库,自2007年以来,该中央版本库一直由Sonatype公司负责维护和资助。现在,加上厂商发布的一些新特性,Maven中央版本库已包含超 过30万个Java组件(在Java项目中的占有率已接近90%),每月被4200家开发组织所使用,超过半数的全球2000公司也在其中。

介于对中央版本库的这种依赖,版本库的完整性就显得极为重要。“我们有多重的安全体系来保障中央版本库的完整性”,Sonatype执行副总裁(EVP,Executive Vice President)Larry Roshfeld这样告诉我们:

这其中包括对组件贡献者的管理、对提交到中央版本库中组件的验证、中央版本库服务器的物理层安全机制以及保证使用数字签名来保证使用的组件是未经修 改的。考虑到中央版本库在一些企业软件开发过程中的举足轻重的地位,公司的安全策略也要求我们不许公开讨论关于安全细节的话题。

开源组件已被企业所普遍采用。据Gartner“首席信息官眼中的开源软件”的报告所示,截止到2016年,全球2000的企业中,将开源组件作为关键应用组件的使用覆盖率,将从2010年的75%上升到2016年的99%。

业界一些分析公司也在不断强调开源软件所面临的风险问题。Gratner研究部主管Laurie Wurster在2008年的演讲中提到

免费的东西并不意味着没有成本。企业需要有相关的取得开源软件(Open Source Software)的策略,用来决定在哪些应用中使用开源软件做支撑,并且有效识别出在使用开源软件过程中有可能带来的知识产权风险以及可接受的风险。只 有确立了相关的策略,在治理过程中执行才变得有据可依。

Gartner研发副总裁Mark Driver,也与上述报告中的CIO持类似观点:

如果没有相应的治理程序和管理策略,IT组织就无法具备管理、审计和跟踪企业内外开源资产的能力,从而也无法衡量IT资产是否被合理使用。最多,也只能在风险(如灾难性的技术失败)发生后进行简单的响应。

Linux基金会与一些其他组织和软件公司一起,正致力于制订一项机器可读的软件打包许可标准的工作,称之为SPDX(编写本文时该域名还处在维护状态),该标准可帮助识别不同软件包中包含哪些许可以及软件组件。此标准目前已经被很多的代码扫描(code-scanning)公司所推崇,例如Black DuckProtecode这两家公司,他们开发的软件可以帮助开发商在软件上线阶段对代码进行扫描,以保证交付给终端用户的产品是有授权保障的。Sonatype也会对此标准提供支持,Roshfeld对InfoQ如是说,但是:

在我们所跟踪的30多万个开源组件中,该标准还没有被广泛实现。因此,我们通过若干不同的技术来识别组件的授权情况,其中扫描基于Maven项目的对象模型(POM,Project Object Model)以及扫描所有项目源代码等。

与大多数代码扫描工具不同的是,Insight要达到集成到软件开发流程中的各个阶段的目的。Roshfeld告诉我们:

像Black Duck这种扫描工具在软件开发周期的最后阶段,通常是迫于法律法规等因素被购进的。他们的运行时间往往会很长,除生成大量的信息以外,要想知道代码中是 否真正遇到了问题,还需要花费更多的时间通过手工工作才能分辨出来。一旦问题被识别出来,就需要开发部门付出艰辛的工作,不仅增加了项目成本而且还会影响 到发布日程。相比之下,Insight专为开发人员和开发管理者设计,它快速和精准并且可以在整个过程中发挥作用并找出缺陷。我们的客户中有很多都同时使 用了Insight和代码扫描工具。

更重要的一点在于,我们是中央版本库的管理者,该版本库正在为大多数的开发者提供开源组件的支持。这个有力条件使得我们更加具备消费意识和更新意识,我们可以帮助开发者更准确的得知正在下载组件的信息,以及一个组件更新的时间和原因。

管理评估工具(Management Insight)和开发评估工具(Development Insight)都是基于用户数收取费用的。应用分析工具(Application Insight)的费用则基于被分析和监控应用的数量。据Sonatype所述,一个典型客户的年度订阅费用不足2万美元。

原文地址:https://www.cnblogs.com/shihao/p/2199095.html