微软宣布开源SBOM软件物料清单生成工具

摘要:

在周二的一篇开发者博客中,微软 One Engineering System(1ES)产品主管 Danesh Kumar Badlani 与 1ES 首席项目主管 Adrian Diglio 隆重宣布了 Salus 软件物料清单(SBOM)生成工具的已经走向开源。据悉,作为响应改善国家网络安全的一道行政命令的最新举措,其有助于组织机构建立起对其供应链依赖关系的洞察力。

0.png

截图(来自:GitHub

作为一款通用的、经过企业验证、构建时(build-time)的 SBOM 生成器,SBOM 适用于包括 Windows、Linux 和 Mac 在内的平台,并且采用了标准的软件包数据交换(SPDX)格式。

Salus 能够轻松集成到软件的构建工作流程中,并通过组件自动检测 NPM、NuGet、PyPI、CocoaPods、Maven、Golang、Rust Crates、RubyGems、容器内的 Linux 包、Gradle、Ivy、以及 GitHub 等公共平台上的存储。

随着时间的推移,微软还会持续改进 SBOM 工具、并添加更多的检测组件。

1.png

分层构建流程示意图

Salus 生成的 SBOM,包含了基于 SPDX 规范的四个主要部分。

● 文档创建信息:例如软件名称、SPDX 版本 / 许可证、文档创建者、创建时间等。

● 文件部分:组成软件的文件列表,每个文件都包含有一些属性、以及 SHA-1 / SHA-256 内容哈希值。

● 包部分:构建软件时使用的包列表,每个包都具有名称、版本、供应商、哈希值、包 URL(purl)、软件标识符等属性。

● 关系部分:SBOM 不同元素之间的关系列表,比如文件和包。

值得一提的是,Salus 还可参考其他 SBOM 文档来捕获完整的依赖关系树。

2.png

Document Creation Information 示例代码

最后,微软希望能够通过与开源社区的通力协作,帮助所有人都能够遵循行政命令的指导。

开源 Salus 是该公司在社区内促进协作和创新的重要一步,且微软相信这可使更多组织能够受益于 SBOM、并为后续的长期发展做出积极的贡献。

查看评论
created by ceallan