15.6. 从扫描的镜像生成 SBOM


您可以使用 RHACS 从扫描的容器镜像生成软件 Bill of Materials (SBOM)。

重要

从扫描的容器镜像生成 SBOMs 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。

有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围

SBOMs 为您提供应用程序中软件组件、依赖项和库的详细概述。RHACS 使用 RHACS 执行扫描的结果来生成 SBOM。您可以使用 RHACS 门户、roxctl CLI 或 RHACS API 生成 SBOM。

注意

RHACS 无法从委派扫描的结果生成 SBOM。在委派的扫描中,您使用安全集群来索引镜像并将数据发送到 Central 以进行漏洞匹配。SBOM 生成仅在使用 Central 中配置扫描器 V4 时才可用。

15.6.1. 关于 SBOM

Software Bill of Materials (SBOM)是一个数字记录,列出了部分软件及其来源的组件。组织可以使用 SBOMs 查找存在安全漏洞的软件包和组件,并更快地响应以降低风险。此外,能够生成 SBOMs 有助于组织遵守 执行顺序 14028:提高 Nations Cybersecurity

根据数据收集的方法及其生成方式,SBOM 可以包含不同类型的信息。Cybersecurity & Infrastructure Security Agency (CISA)提供了一个文档,即 Software Bill of Software Bill of Materials (SBOM),它总结了 SBOM 的类型。

RHACS 生成的 SBOM 的类型是 "Analyzed"。CISA 备注,这些类型的 SBOM 通过分析工件(如可执行文件、软件包、容器和虚拟机镜像)创建。分析 SBOMs 提供以下优点,如 CISA 总结:

  • 他们可以在没有有效开发环境的情况下提供有关软件的信息。
  • 可以在不访问构建过程的情况下生成它们。
  • 您可以使用它们来发现其他工具可能错过的隐藏依赖关系。

RHACS 生成的 SBOM 采用 System Package Data Exchange (SPDX) 2.3 格式。

15.6.2. 生成 SBOMs

您可以使用以下方法生成 SBOMs:

使用 RHACS 门户

进入 Vulnerability Management Results,找到您要使用的镜像。执行以下操作之一:

  • 在镜像行中,点 overflow 菜单 kebab ,然后选择 Generate SBOM
  • 选择镜像以查看镜像详情,然后单击 Generate SBOM

此时将打开一个窗口,提供有关镜像的信息以及生成的 SBOM 格式。在点 Generate SBOM 后,RHACS 以 JSON 格式创建文件。根据您的浏览器配置,浏览器可以自动将文件下载到您的计算机。

使用 roxctl CLI

roxctl CLI 中运行以下命令:

$ roxctl image sbom --image=image-name 
1
Copy to Clipboard Toggle word wrap
1
键入您要为其生成 SBOM 的镜像的名称和引用,格式为字符串格式。例如: nginx:latestnginx@sha256:…​

这个命令有以下选项:

Expand
表 15.10. 选项
选项描述

-f, --force

绕过镜像的 Central 缓存,并强制从扫描程序进行新的拉取。默认值为 false

-d, --retry-delay integer

设置重试之间等待的时间(以秒为单位)。默认值为 3。

-i, --image string

镜像名称和引用,如 nginx:latestnginx@sha256:…​

-r, --retries integer

设置 Scanner V4 在退出并显示错误前应重试的次数。默认值为 3。

使用 API
您可以使用 RHACS API 创建 SBOM。您必须使用 ROX_API_TOKEN 进行授权连接到端点并生成 SBOM。请求有效负载以 JSON 格式生成。

如需更多信息,请参阅 API 参考中的"GenerateSBOM"。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat