本页面介绍了如何使用 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 软件包中的漏洞。
您必须启用漏洞扫描才能接收完整的安全数据分析结果。
启用 Container Scanning API 以开启漏洞扫描。
执行构建并将构建工件存储在 Artifact Registry 中。Artifact Analysis 会自动扫描 build 工件。
漏洞扫描可能需要几分钟时间,具体取决于 build 的大小。
如需详细了解漏洞扫描,请参阅自动扫描。
扫描需要付费。如需了解价格信息,请参阅价格页面。
授予查看数据分析的权限
如需在 Google Cloud 控制台中查看安全性数据分析,您必须拥有以下 IAM 角色或具有同等权限的角色。如果 Artifact Registry 和 Artifact Analysis 在不同的项目中运行,您必须在运行 Artifact Analysis 的项目中添加 Container Analysis Occurrences Viewer 角色或同等权限。
- Cloud Build Viewer (
roles/cloudbuild.builds.viewer
):查看构建的数据分析。 - Container Analysis Occurrences Viewer (
roles/containeranalysis.occurrences.viewer
):查看漏洞和其他依赖项信息。
查看“安全性数据分析”侧边栏
如需查看“安全性数据分析”面板,请执行以下操作:
在 Google Cloud 控制台中打开构建记录页面:
选择您的项目,然后点击打开。
在区域下拉菜单中,选择您在其中运行构建的区域。
在包含构建的表中,找到要查看安全性数据分析的构建所在的行。
在安全性数据分析列下,点击查看。
系统随即会打开安全性数据分析侧边栏。
[可选] 如果构建生成多个工件,请从工件下拉框中选择要查看其安全性数据分析的工件。
这会显示所选工件的安全性数据分析面板。
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 概览。
后续步骤
- 了解如何使用 Software Delivery Shield。
- 了解软件供应链安全最佳实践。
- 了解如何存储和查看构建日志。
- 了解如何排查构建错误。