查看 build 安全性数据分析

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

安全性数据分析侧边栏提供多个安全指标的简要概览。您可以使用侧边栏来识别和缓解构建流程中的风险。

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

此面板会显示以下信息:

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

启用漏洞扫描

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

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

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

    启用 Container Scanning API

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

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

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

扫描需要付费。如需了解价格信息,请参阅价格页面

授予查看数据分析的权限

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

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

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

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

    打开“构建记录”页面

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

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

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

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

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

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

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

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

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 是完整的应用目录,可确定您的软件依赖的软件包。内容可能包括来自供应商的第三方软件、内部工件和开源库。

构建

“构建”卡片包含以下信息:

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

出处元数据包括已构建映像的摘要、输入源位置、构建工具链、构建步骤和构建时长等详细信息。您也可以随时验证 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 概览

后续步骤