Software Delivery Shield 是一种全代管式端到端软件供应链安全解决方案。它在 Google Cloud 产品中提供了一套全面的模块化功能和工具,开发者、DevOps 和安全团队可以使用它们来改善软件供应链的安全状况。
Software Delivery Shield 包括:
- Google Cloud 产品和功能融合了开发、构建、测试、扫描、部署和政策实施方面的安全最佳实践。
- Google Cloud 控制台中的信息中心,可显示有关源代码、构建、工件、部署和运行时的安全信息。这些信息包括构建工件、构建出处和软件物料清单 (SBOM) 依赖项列表中的漏洞。
- 使用软件制品的供应链级别 (SLSA) 框架识别软件供应链安全成熟度的信息。
Software Delivery Shield 的组件
下图说明了 Software Delivery Shield 中的不同服务如何协同工作以保护您的软件供应链:
以下部分介绍了 Software Delivery Shield 解决方案中的产品和功能:
有助于保障开发安全的组件
Software Delivery Shield 的以下组件有助于保护软件源代码:
Cloud Workstations
Cloud Workstations 在 Google Cloud 上提供全代管式开发环境。它使 IT 和安全管理员能够预配、扩缩、管理和保护其开发环境,并且允许开发者访问具有一致的配置和可自定义工具的开发环境。
Cloud Workstations 可改善应用开发环境的安全状况,从而实现安全性的左移。它具有 VPC Service Controls、专用入站流量或出站流量、强制映像更新和 Identity and Access Management 访问权限政策等安全功能。如需了解详情,请参阅 Cloud Workstations 文档。
Cloud Code source protect(预览版)
Cloud Code 提供 IDE 支持,以创建和部署应用,并将其与 Google Cloud 集成。它使开发者能够根据示例模板创建和自定义新应用,并运行已完成的应用。Cloud Code source protect 可以为开发者在其 IDE 中工作时提供实时安全反馈,例如识别易受攻击的依赖项和许可报告。它能够提供快速且切实可行的反馈,使开发者能够在软件开发流程的开始时更正其代码。
功能可用性:Cloud Code source protect 不对外公开。如需使用此功能,请参阅访问权限请求页面。
帮助保护软件供应的组件
保护软件供应(构建工件和应用依赖项)是提高软件供应链安全性的关键步骤。开源软件的无处不在,这让这个问题特别具有挑战性。
Software Delivery Shield 的以下组件有助于保护 build 工件和应用依赖项:
Assured OSS
Assured OSS 服务可让您访问和整合经 Google 验证和测试的 OSS 软件包。它提供使用 Google 安全流水线构建的 Java 和 Python 软件包。系统会定期扫描、分析和测试这些软件包是否存在漏洞。如需了解详情,请参阅有保障的开源软件文档。
Artifact Registry 和 Artifact Analysis
借助 Artifact Registry,您可以存储、保护和管理构建工件,并且 Artifact Analysis 可以主动检测 Artifact Registry 中工件的漏洞。Artifact Registry 提供以下功能来改善软件供应链的安全状况:
- Artifact Analysis 可为容器中的基础容器映像和语言包提供集成的按需扫描或自动扫描。
- 借助 Artifact Analysis,您可以为 Artifact Registry 中的映像生成软件物料清单 (SBOM),并上传漏洞可利用性交换 (VEX) 语句。
- Artifact Analysis 提供独立扫描,以识别 Maven 制品使用的开源依赖项中的现有漏洞和新漏洞(预览版)。每次您将 Java 项目推送到 Artifact Registry 时都会进行扫描。初始扫描完成后,Artifact Analysis 会持续监控 Artifact Registry 中已扫描映像的元数据,以查找新漏洞。
- Artifact Registry 支持远程代码库和虚拟代码库。远程代码库存储来自预设外部来源(例如 Docker Hub、Maven Central、Python 软件包索引 (PyPI)、Debian 或 CentOS)的工件,以及针对支持的格式的用户定义源。缓存远程代码库中的工件可以缩短下载时间、提高软件包可用性,并且包含漏洞扫描(如果启用了扫描)。虚拟代码库可将格式相同的代码库整合到单个端点后,使您可以控制各个上游代码库中的搜索顺序。您可以优先处理专用软件包,这样可以降低依赖项混淆攻击的风险。
有助于保护 CI/CD 流水线的组件
不良行为者可能会通过破坏 CI/CD 流水线来攻击软件供应链。Software Delivery Shield 的以下组件有助于保护 CI/CD 流水线:
Cloud Build
Cloud Build 在 Google Cloud 基础架构上执行构建。它提供各种安全功能,例如精细的 IAM 权限、VPC Service Controls 以及隔离和临时构建环境。此外,它还提供以下功能来改善软件供应链的安全状况:
- 它支持适用于容器映像的 SLSA 级别 3 build。
- 它会为容器化应用生成经过身份验证和不可伪造的 build 出处。
- 它针对构建的应用显示安全性数据分析。其中包括:
- SLSA build 级别,按照 SLSA 规范标识软件构建流程的成熟度级别。
- 构建工件中的漏洞。
- build 出处,这是关于 build 的可验证元数据集合。它包含已构建映像的摘要、输入源位置、构建工具链、构建步骤和构建时长等详细信息。
如需了解如何查看已构建应用的安全性数据分析,请参阅构建应用并查看安全性数据分析。
Cloud Deploy
Cloud Deploy 可按指定顺序将应用自动交付到一系列目标环境。它支持直接持续交付到 Google Kubernetes Engine、GKE Enterprise 和 Cloud Run,并提供一键式批准和回滚、企业安全性和审核以及内置交付指标。此外,此页面还会显示已部署应用的安全性数据分析。
有助于保护生产环境中的应用的组件
GKE 和 Cloud Run 有助于确保运行时环境的安全状况。它们都带有安全功能,在运行时保护您的应用。
GKE
GKE 可以评估您的容器安全状况,并提供有关集群设置、工作负载配置和漏洞的主动指导。它包含安全状况信息中心,可扫描您的 GKE 集群和工作负载,为您提供切实可行的专业建议,帮助您改善安全状况。如需了解如何在 GKE Security Posture 信息中心内查看安全性数据分析,请参阅在 GKE 上部署并查看安全性数据分析。
Cloud Run
Cloud Run 包含一个安全面板,其中显示了软件供应链安全性数据分析,例如 SLSA build 级合规性信息、build 出处以及在正在运行的服务中发现的漏洞。如需了解如何在 Cloud Run 安全数据分析面板中查看安全性数据分析,请参阅在 Cloud Run 上部署并查看安全性数据分析。
通过政策建立信任链
Binary Authorization 通过收集证明(即对映像进行认证的数字文档),帮助建立、维护和验证软件供应链中的信任链。attestations证明表示已成功执行特定的必需进程构建了关联映像。Binary Authorization 根据收集的这些证明,帮助定义、验证和强制执行基于信任的政策。它可确保仅在证明符合您组织的政策时才部署映像,并且还可以设置在发现任何违反政策的行为时提醒您。例如,证明可以表明某张图片存在以下情况:
- 由 Cloud Build 构建。
- 不包含严重级别高于指定严重级别的漏洞。如果存在不适用于您的应用的特定漏洞,您可以将这些漏洞添加到许可名单中。
您可以将 Binary Authorization 与 GKE 和 Cloud Run 搭配使用。
价格
以下列表指向 Software Delivery Shield 解决方案中服务的价格信息:
- Cloud Workstations
- Cloud Code:所有 Google Cloud 客户均可免费使用。
- Assured OSS:与销售团队联系,了解价格信息。
- Artifact Registry
- Artifact Analysis
- Cloud Build
- Cloud Deploy
- Cloud Run
- GKE
- Binary Authorization
后续步骤
- 了解如何构建应用和查看安全性数据分析。
- 了解如何部署到 Cloud Run 并查看安全性数据分析。
- 了解如何部署到 GKE 并查看安全性数据分析。