查看 build 安全性数据分析

本页面介绍如何使用 Google Cloud 控制台中的安全性数据分析侧边栏查看有关 Cloud Build build 的安全信息。

安全性数据分析侧边栏简要介绍了多个安全指标。您可以使用侧边栏识别和降低构建流程中的风险。

安全性数据分析面板的屏幕截图

此面板会显示以下信息:

  • 软件工件的供应链级别 (SLSA) 级别:用于标识软件构建流程的成熟度级别(根据 SLSA 规范)。例如,此 build 已达到 SLSA 级别 3。
  • 漏洞:在工件中发现的所有漏洞的概览,以及 Artifact Analysis 已扫描的映像的名称。您可以点击映像名称来查看漏洞详情。例如,在屏幕截图中,您可以点击 java-guestbook-backend
  • 构建的工件的漏洞可利用性交流(VEX) 状态
  • build 工件的软件物料清单 (SBOM)
  • 构建详情:构建详情,例如构建器和用于查看日志的链接。

启用漏洞扫描

安全性数据分析面板会显示来自 Cloud Build 和 Artifact Analysis 的数据。Artifact Analysis 是一项服务,会在您将 build 工件上传到 Artifact Registry 时,扫描操作系统、Java (Maven) 和 Go 软件包中的漏洞。

您必须启用漏洞扫描才能收到完整的安全数据分析结果。

  1. 启用 Container Scanning API 以启用漏洞扫描。

    启用 Container Scanning API

  2. 执行构建并将构建工件存储在 Artifact Registry 中。Artifact Analysis 会自动扫描构建工件。

漏洞扫描可能需要几分钟时间,具体取决于 build 的大小。

如需详细了解漏洞扫描,请参阅自动扫描

扫描会产生费用。如需了解价格信息,请参阅价格页面

授予查看数据分析的权限

如需在 Google Cloud 控制台中查看安全性数据分析,您必须拥有以下 IAM 角色或具有同等权限的角色。如果 Artifact Registry 和 Artifact Analysis 在不同项目中运行,您必须在运行 Artifact Analysis 的项目中添加 Container Analysis 事件查看者角色或同等权限。

查看安全性数据分析侧边栏

要查看安全性数据分析面板,请执行以下操作:

  1. 在 Google Cloud 控制台中打开构建记录页面:

    打开“构建记录”页面

  2. 选择您的项目,然后点击打开

  3. 区域下拉菜单中,选择您在其中运行构建的区域。

  4. 在包含 build 的表中,找到要查看安全性数据分析的 build 所在的行。

  5. 安全性数据分析列下,点击查看

    系统随即会打开安全性数据分析侧边栏。

  6. [可选] 如果您的 build 生成了多个工件,请从工件下拉框中选择要查看其安全性数据分析的工件。

    多容器构建的安全性数据分析面板的屏幕截图

    系统会显示所选工件的安全性数据分析面板。

SLSA 级别

SLSA 级别根据一系列指南对 build 当前的安全级别进行评分。

漏洞

漏洞卡片会显示相应 build 工件的漏洞发生实例、可用修复程序和 VEX 状态。

Artifact Analysis 支持扫描推送到 Artifact Registry 的容器映像。这些扫描可检测操作系统软件包以及在 Java (Maven) 或 Go 中创建的应用软件包中的漏洞。

扫描结果按严重级别进行整理。严重级别是根据漏洞被利用的可能性、范围、影响和成熟度进行的定性评估。

点击映像名称可查看已进行漏洞扫描的工件。

对于推送到 Artifact Registry 的每个容器映像,Artifact Analysis 可以存储关联的 VEX 语句。VEX 是一种安全建议,用于指明产品是否受到已知漏洞的影响。

每个 VEX 语句都提供:

  • VEX 对账单的发布方
  • 编写语句所针对的工件
  • 针对任何已知漏洞的漏洞评估(VEX 状态)

依赖项

依赖项卡片会显示 SBOM 列表及依赖项列表。

当您使用 Cloud Build 构建容器映像并将其推送到 Artifact Registry 时,Artifact Analysis 可以为推送的映像生成 SBOM 记录。

SBOM 是应用的完整目录,可标识您的软件依赖的软件包。这些内容可能包括来自供应商的第三方软件、内部工件和开源库。

构建

“build”卡片包含以下信息:

  • 日志 - 指向构建日志信息的链接
  • Builder - 构建器名称
  • Completed - 自构建完成以来经过的时间
  • 出处 - 关于 build 的可验证元数据

出处元数据包括构建映像的摘要、输入来源位置、构建工具链、构建步骤和构建时长等详细信息。您还可以随时验证构建来源

如需确保未来的构建包含出处信息,请将 Cloud Build 配置为要求您的映像具有出处元数据

将 Cloud Build 与 Software Delivery Shield 结合使用

Cloud Build 中的安全性数据分析侧边栏是 Software Delivery Shield 解决方案的一个组件。Software Delivery Shield 是一种全代管式端到端软件供应链安全解决方案,可帮助您改善开发者工作流和工具、软件依赖项、用于构建和部署软件的 CI/CD 系统以及运行时环境(如 Google Kubernetes Engine 和 Cloud Run)的安全状况。

如需了解如何将 Cloud Build 与 Software Delivery Shield 的其他组件结合使用,以改善软件供应链的安全状况,请参阅 Software Delivery Shield 概览

后续步骤