京东为openKylin新增SBOM利器,保障软件供应链安全和可追溯性!

京东云开发者
• 阅读 48

京东作为openKylin(开放麒麟)社区理事单位,在加入社区后,京东发起成立了SBOM SIG组。SBOM SIG组负责推动和促进软件物料清单(SBOM)的发展和工具建设。近日,SBOM工具已在openKylin社区完成开源,保障openKylin相关软件供应链安全和可追溯性。

SBOM工具能解决哪些问题?

在当今软件供应链日益复杂的环境下,软件项目的管理和安全性成为了一个关键问题。为了帮助开发者们更好地管理和保证软件项目的安全性和可追溯性,本次向大家介绍一款功能强大的命令行工具——SBOM-TOOL(Software Bill of Materials Tool)。

SBOM-TOOL是一款基于Go语言实现、无其他特殊依赖的开源项目,专门用于生成软件项目的物料清单(SBOM),并具备易扩展、易使用的特性。它通过多维度信息采集,为用户提供全面而准确的软件物料清单。

京东为openKylin新增SBOM利器,保障软件供应链安全和可追溯性!

SBOM工具有哪些特性?

  1. 帮开发者全面掌握软件的依赖情况

SBOM-TOOL能够分析源代码、二进制制品,为项目提供完整的依赖信息,确保生成的物料清单尽可能详尽,支持多种语言和多种包管理器的依赖采集,可以准确获取工程构建的依赖组件信息。无论是使用Java、Python、JavaScript等语言,还是使用Maven、NPM、pip等包管理器,SBOM-TOOL都能够轻松地采集依赖信息。

  1. 详尽的源代码指纹信息
  • SBOM-TOOL通过采集源代码的仓库地址和版本信息,为开发者提供了项目的完整源代码信息,这有助于理解软件的构成和历史变更。
  • SBOM-TOOL支持代码指纹的生成,通过使用simhash算法,能够为代码生成唯一标识,确保代码的溯源和完整性。这使得开发者们能够更加准确地追踪代码的来源和变更,从而提高软件供应链的可信度。
  1. 深入的构建环境与依赖分析

SBOM-TOOL支持采集工程构建依赖环境信息,包括操作系统、内核、编译器、构建工具等,为项目提供全面的构建环境描述信息。这使得开发者们能够更好地了解项目在不同环境下的依赖情况,进而更快解决问题

  1. 强大的扩展能力
  • SBOM-TOOL提供了强大的SBOM文档功能。它可以根据采集的SBOM片段组装完整的SBOM文档。同时,用户也可以通过命令行方式编辑SBOM文档内容,灵活地进行修改和定制。
  • 支持规范格式转换,包括XSPDX、SPDX等规范,以及JSON、TagValue等格式,满足用户对不同格式的需求。
  • 作为一个开源项目,SBOM-TOOL允许社区贡献和定制,用户可以根据自己的需求对其进行扩展,支持更多的编程语言、包管理器、SBOM文档规范,以适应特定的工作流程和环境。
  1. 友好的安装和使用体验

安装SBOM-TOOL非常便捷。您可以选择源码安装,通过下载源码并编译的方式进行安装。另外,SBOM-TOOL还提供了二进制安装方式,您可以直接下载对应操作系统架构的二进制文件进行安装。

SBOM-TOOL的使用也非常简单。通过一条命令,您就可以生成完整而准确的SBOM文档。以下是一个示例命令:

sbom-tool generate -m 4 -p ${project_path} -s ${src_path} -d ${dist_path} -o sbom.spdx.json -f spdx-json --ignore-dirs .git -n ${name} -v ${version} -u ${supplier} -b ${namespace} 

欢迎加入

欢迎社区对SBOM工具感兴趣的开发者和爱好者加入SBOM SIG组,一起打造好用、易用的SBOM-TOOL。 了解更多:https://developer.jdcloud.com/article/3719

京东为openKylin新增SBOM利器,保障软件供应链安全和可追溯性!

  • 技术交流,扫一扫
点赞
收藏
评论区
推荐文章
Tommy744 Tommy744
3年前
DevOps概述
DevOps概述DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营(运维)、质量保障(测试)(QA)部门之间的沟通、协作与整合。随着业务复杂化和人员的增加,开发人员和运维人员逐渐演化成两个独立的部门,他们工作地点分离,工具链不同,业务目标也有差异,这使
Stella981 Stella981
2年前
DevOps到底是什么鬼?DevOps介绍及工具推荐。
QQ用得起来越少了,现在就加入300技术微信群,公众号回复"微信群"即可加入。什么是DevOpsDevOps是Development和Operations的组合,是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它的出现是由于软件行业日益清晰地认识到:为了按时交付软
Stella981 Stella981
2年前
GitHub上整理的一些工具
HackerNews:非常棒的针对编程的链接聚合网站Programmingreddit:同上MSDN:微软相关的官方技术集中地,主要是文档类infoq:企业级应用,关注软件开发领域OSChina:开源技术社区,开源方面做的不错哦cnblogs,51cto,csdn:常见的技术社区,各有专长stackoverflow:IT技术问答网
Easter79 Easter79
2年前
Taro 助力京喜拼拼项目性能体验优化
背景—2020年是社区团购风起云涌的一年,互联网大厂纷纷抓紧一分一秒跑步进场。“京喜拼拼”(微信搜京喜拼拼)是京东旗下的社区团购平台,依托京东供应链体系,精选低价好货,为社区用户提供次日达等优质服务。京喜拼拼团队技术选型使用Taro以便于实现多端需求,因此Taro团队有幸参与到“京喜拼拼”小程序的性能体验优化工作。全面体验
可莉 可莉
2年前
2017年 JavaScript 框架回顾
概述:对于JavaScript社区来说,npm的主要功能之一就是帮助开发者发掘所需的npmRegistry中的库和框架。npm强大的搜索功能能够帮助找到一组相关的软件包,同时其内置的的文档和使用统计信息,可以帮助开发者决定使用哪一种软件包。选择过程中,一个重要的评估因素就是社区对软件包项目的持续支持:是否正在积极的维护?是否有足
Easter79 Easter79
2年前
TesterHome 上海 & UWA & Jenkins 中文社区 2019年10月 沙龙活动
TesterHome上海&UWA&Jenkins中文社区2019年10月沙龙活动TesterHome社区&UWA&Jenkins中文社区联合主办,由UWA等公司的专家分享和讨论在质量建设上和测试开发上面的经验和实践。本次议题将加入
Stella981 Stella981
2年前
DevOps的概念
    DevOps(英文Development和Operations的组合)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。  1\.简介    DevOp
Stella981 Stella981
2年前
2017年 JavaScript 框架回顾
概述:对于JavaScript社区来说,npm的主要功能之一就是帮助开发者发掘所需的npmRegistry中的库和框架。npm强大的搜索功能能够帮助找到一组相关的软件包,同时其内置的的文档和使用统计信息,可以帮助开发者决定使用哪一种软件包。选择过程中,一个重要的评估因素就是社区对软件包项目的持续支持:是否正在积极的维护?是否有足
天翼云供应链API安全治理实践获“优秀治理实践奖”
近日,由工业和信息化部网络安全管理局指导,中国信息通信研究院主办的首届信息通信软件供应链安全社区成员大会顺利召开。大会以“强化软件供应链安全治理助力信息通信业健康发展”为主题,旨在探索软件供应链安全治理模式,从根源上防范风险,促使安全治理工作得到真正落实并收获成效。大会现场公布了4类优秀成果评选结果,天翼云基于边缘云WAF实现API安全管理实践成果获评“优
京东云开发者 京东云开发者
2星期前
京东为openKylin新增SBOM利器,保障软件供应链安全和可追溯性!
京东作为openKylin(开放麒麟)社区理事单位,在加入社区后,京东发起成立了SBOMSIG组。SBOMSIG组负责推动和促进软件物料清单(SBOM)的发展和工具建设。近日,SBOM工具已在openKylin社区完成开源,保障openKylin相关软件供