Skip to main content

导出存储库的软件物料清单

可以从依赖项关系图导出存储库的软件物料清单 (SBOM)。 SBOM 可实现开放源代码使用情况透明化,并有助于暴露供应链漏洞,从而降低供应链风险。

谁可以使用此功能?

Anyone can export the dependency graph of a repository as a software bill of materials. The SBOM export will contain a list of the dependencies that are used in the repository.

关于依赖项关系图和 SBOM 导出

依赖项关系图是存储在存储库 中的清单和锁定文件的摘要,以及所有提交给使用 依赖项提交 API(beta 版本)的存储库的依赖关系。 对于每个存储库,它显示:

  • 依赖项、它依赖的生态系统和包
  • 依赖项,是指依赖于它的存储库和包

对于每个依赖项,可以看到许可证信息和漏洞严重程度。 还可以使用搜索栏搜索特定依赖项。 依赖项按漏洞严重程度自动排序。

可以使用行业标准 SPDX 格式将存储库依赖项关系图的当前状态导出为软件物料清单 (SBOM):

  • 通过 GitHub UI
  • 使用 REST API

SBOM 是一份计算机可读的正式清单,其中包含项目的依赖项和相关信息(例如版本、包标识符和许可证)。 SBOM 通过以下方式帮助降低供应链风险:

  • 让存储库使用的依赖项公开透明
  • 支持在流程早期识别漏洞
  • 提供有关代码库中可能存在的许可证合规性、安全性或质量问题的见解
  • 使你能够更好地遵守各种数据保护标准

如果你的公司根据行政命令 14028 向美国联邦政府提供软件,则需要提供产品的 SBOM。 还可以在审核过程中使用 SBOM,并使用它们来遵守法规和法律要求。

从 UI 中导出存储库的软件物料清单

  1. 在 GitHub.com 上,导航到存储库的主页。

  2. 在存储库名称下,单击 “见解”。

    存储库的主页的屏幕截图。 在水平导航栏中,标有图形图标和“见解”的选项卡以深橙色标出。

  3. 在左侧边栏中,单击“依赖项关系图”。

  4. 在“依赖项”选项卡的右上角,单击“导出 SBOM”生成 SBOM 文件,以便从浏览器下载 。

使用 REST API 导出存储库的软件物料清单

如果要使用 REST API 导出存储库的 SBOM,请参阅 REST API 文档中的 软件材料清单 (SBOM) 了解详细信息。