本页介绍了如何使用 Google Cloud 控制台中的安全分析侧边栏查看有关 Cloud Build 构建的安全信息。
安全数据分析侧边栏提供了多项安全指标的概览。您可以使用侧边栏来识别和降低构建流程中的风险。
此面板会显示以下信息:
- 软件工件的供应链 (SLSA) 级别:根据 SLSA 规范标识软件构建流程的成熟度级别。例如,此 build 已达到 SLSA 级别 3。
- 漏洞:在工件中发现的所有漏洞的概览,以及 Artifact Analysis 扫描的映像的名称。您可以点击映像名称以查看漏洞详细信息。例如,在屏幕截图中,您可以点击 java-guestbook-backend。
- 构建工件的漏洞可利用性交流(VEX) 状态。
- 构建工件的软件物料清单 (SBOM)。
- 构建详情:构建的详细信息,例如构建器以及用于查看日志的链接。
如需了解如何将 Cloud Build 与其他 Google Cloud 产品和功能搭配使用以改进软件供应链的安全状况,请参阅软件供应链安全。
启用漏洞扫描
安全数据分析面板会显示来自 Cloud Build 和工件分析的数据。Artifact Analysis 是一项服务,可在您将 build 工件上传到 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 事件查看者角色或等效权限。
- Cloud Build Viewer (
roles/cloudbuild.builds.viewer
):查看 build 的分析数据。 - Container Analysis Occurrences Viewer (
roles/containeranalysis.occurrences.viewer
):查看漏洞和其他依赖项信息。
查看“安全性数据分析”侧边栏
如需查看安全数据洞见面板,请执行以下操作:
打开 Google Cloud 控制台中的构建记录页面:
选择您的项目,然后点击打开。
在区域下拉菜单中,选择您运行 build 时所在的区域。
在包含 build 的表格中,找到您要查看安全数据洞见的 build 所在的行。
在安全性数据分析列下,点击查看。
这会打开安全数据分析侧边栏。
[可选] 如果您的 build 生成多个工件,请从 Artifact 下拉菜单中选择要查看其安全分析的工件。
系统随即会显示所选工件的安全数据洞见面板。
SLSA 级别
SLSA 级别根据一系列准则对 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 卡片包含以下信息:
- 日志 - 指向 build 日志信息的链接
- Builder - 构建器名称
- Completed(已完成)- 自构建完成以来经过的时间
- 来源 - 关于 build 的可验证元数据
来源元数据包括已构建映像的摘要、输入源位置、构建工具链、构建步骤和构建时长等详细信息。您还可以随时验证 build 来源。
为确保您日后的 build 包含出处信息,请将 Cloud Build 配置为要求映像具有出处元数据。
后续步骤
- 了解软件供应链安全。
- 了解软件供应链安全最佳实践。
- 了解如何存储和查看构建日志。
- 了解如何排查构建错误。