实现提前确保安全性

Last reviewed 2026-10-28 UTC

Google Cloud Well-Architected Framework 的安全核心中的这一原则可帮助您确定可在软件开发生命周期早期实施的实用控制措施,以改善安全状况。它提供了一些建议,有助于您实施预防性安全保障措施和部署后安全控制措施。

原则概览

左移安全性意味着在软件开发生命周期的早期阶段采用安全实践。此原则的目标如下:

  • 在进行系统更改之前避免安全缺陷。实施预防性安全防护措施,并在 CI/CD 流水线中采用基础设施即代码 (IaC)、政策即代码和安全检查等做法。您还可以在 Google Cloud中使用其他平台专属功能,例如组织政策服务和强化的 GKE 集群。
  • 在提交任何系统更改后,尽早、快速且可靠地检测和修复安全 bug。采用代码审核、部署后漏洞扫描和安全测试等做法。

践行“设计即安全”理念和“安全左移”原则相互关联,但范围不同。 “从设计上保证安全”原则可帮助您避免根本性的设计缺陷,从而避免需要重新设计整个系统的架构。例如,威胁建模练习表明,当前设计不包含授权政策,如果没有授权政策,所有用户都将拥有相同的访问权限级别。左移安全性可帮助您在应用更改之前避免实现缺陷(错误和配置错误),并在部署后实现快速、可靠的修复。

建议

如需为云工作负载实现左移安全原则,请考虑以下部分中的建议:

采用预防性安全控制措施

此建议与以下重点领域相关:

  • 身份和访问权限管理
  • 云治理、风险和合规性

预防性安全控制措施对于在云中保持稳定的安全状况至关重要。这些控制措施可帮助您主动降低风险。您可以防止错误配置和对资源的未经授权访问,使开发者能够高效工作,并帮助确保遵守业界标准和内部政策。

通过使用基础设施即代码 (IaC) 来实施预防性安全控制措施,可以提高其有效性。借助 IaC,预防性安全控制措施可以在部署更改之前对基础设施代码进行自定义程度更高的检查。与自动化相结合时,预防性安全控制措施可以作为 CI/CD 流水线自动检查的一部分运行。

以下产品和 Google Cloud 功能可帮助您在环境中实施预防性控制措施:

借助 IAM,您可以授权哪些人员可以根据权限对特定资源执行操作。如需了解详情,请参阅使用 IAM 对组织资源进行访问权限控制。

借助组织政策,您可以设置对资源的限制,以指定资源的配置方式。例如,您可以使用组织政策执行以下操作:

除了使用组织政策之外,您还可以使用以下方法限制对资源的访问:

  • 将标记与 IAM 搭配使用:为一组资源分配一个标记,然后为该标记本身设置访问权限定义,而不是为每个资源定义访问权限。
  • IAM Conditions:为资源定义基于属性的条件访问权限控制。
  • 纵深防御:使用 VPC Service Controls 进一步限制对资源的访问。

如需详细了解资源管理,请参阅确定 Google Cloud 着陆区的资源层次结构。

自动预配和管理云资源

此建议与以下重点领域相关:

  • 应用安全保障
  • 云治理、风险和合规性

如果您还采用声明式 IaC(而非命令式脚本),则自动预配和管理云资源和工作负载会更有效。IaC 本身并不是一种安全工具或实践,但它可以帮助您提高平台的安全性。采用 IaC 可让您创建可重复的基础设施,并为运维团队提供已知的良好状态。IaC 还可以提高回滚、审核更改和问题排查的效率。

与 CI/CD 流水线和自动化相结合时,IaC 还使您能够通过 OPA 等工具采用政策即代码等做法。您可以随着时间的推移审核基础架构更改,并在部署更改之前对基础架构代码运行自动检查。

如需自动执行基础架构部署,您可以使用 Config Controller、Terraform、Jenkins 和 Cloud Build 等工具。为了帮助您使用 IaC 和自动化功能构建安全的应用环境,Google Cloud 提供了企业基础蓝图。此蓝图是 Google 的专业设计,遵循了我们所有的推荐做法和配置。该蓝图提供了使用 Terraform 和 Cloud Build 配置和部署 Google Cloud 拓扑的分步说明。

您可以修改企业基础蓝图的脚本,以配置遵循 Google 建议并满足您自己的安全要求的环境。您可以基于该蓝图和其他蓝图构建自动化功能,也可以设计自己的自动化功能。Google Cloud 架构中心提供了可在企业基础蓝图之上实现的其他蓝图。以下是这些蓝图的一些示例:

自动发布安全应用版本

此建议与以下重点领域相关:应用安全保障。

如果没有自动化工具,可能很难在部署、更新和修补复杂的应用环境时,确保满足一致的安全要求。我们建议您为软件开发生命周期 (SDLC) 构建自动化 CI/CD 流水线。自动化 CI/CD 流水线可帮助您消除手动错误、提供标准化开发反馈环并实现高效的产品迭代。持续交付是 DORA 框架推荐的最佳实践之一。

通过使用 CI/CD 流水线自动发布应用,有助于提高您尽早、快速、可靠地检测和修复安全 bug 的能力。例如,您可以在创建工件时自动扫描安全漏洞、缩小安全审核范围,以及回滚到已知且安全的版本。此外,您还可以为不同的环境(例如开发、测试或生产环境)定义相应的政策,以便仅部署经过验证的制品。

为了帮助您自动发布应用并在 CI/CD 流水线中嵌入安全检查, Google Cloud 提供了多种工具,包括 Cloud Build、Cloud Deploy、Web Security Scanner 和 Binary Authorization。

如需建立一个在 SDLC 中验证多项安全要求的流程,请使用由 Google 定义的软件制品的供应链等级 (SLSA) 框架。SLSA 要求对源代码、构建流程和代码出处进行安全检查。其中许多要求都可以包含在自动化 CI/CD 流水线中。如需了解 Google 如何在内部应用这些做法,请参阅 Google Cloud的更改方法。

确保应用部署遵循批准的流程

此建议与以下重点领域相关:应用安全保障。

如果攻击者破解了 CI/CD 流水线,则整个应用堆栈可能会受到影响。为了帮助保护流水线,您应在将代码部署到生产环境之前实施已确定的批准流程。

如果您使用 Google Kubernetes Engine (GKE) 或 Cloud Run,则可以使用 Binary Authorization 建立审批流程。Binary Authorization 会将可配置的签名关联到容器映像。 这些签名(也称为证明)可用来验证关联的映像。在部署时,Binary Authorization 会使用这些证明来确定流程是否已完成。例如,您可以使用 Binary Authorization 执行以下操作:

  • 验证特定构建系统或 CI 流水线是否已创建容器映像。
  • 验证容器映像是否符合漏洞签名政策。
  • 验证容器映像是否将提升标准传递到下一个部署环境,例如从开发环境到质量检查环境。

通过使用 Binary Authorization,您可以强制要求仅在目标平台上运行可信代码。

在应用部署之前扫描已知漏洞

此建议与以下重点领域相关:应用安全保障。

建议您在应用工件部署到生产环境之前使用自动化工具,以便持续对应用工件执行漏洞扫描。

对于容器化应用,请使用 Artifact Analysis 自动运行容器映像的漏洞扫描。Artifact Analysis 会在新映像上传到 Artifact Registry 时扫描这些映像。此扫描可提取有关容器中系统软件包的信息。初始扫描后,Artifact Analysis 会持续监控 Artifact Registry 中所扫描映像的元数据以查找新漏洞。当 Artifact Analysis 从漏洞来源收到新的和更新后的漏洞信息时,它会执行以下操作:

  • 更新已扫描映像的元数据,使其保持最新。
  • 为新的版本说明创建新的漏洞发生实例。
  • 删除不再有效的漏洞发生实例。

监控应用代码是否存在已知漏洞

此建议与以下重点领域相关:应用安全保障。

使用自动化工具持续监控应用代码是否存在已知漏洞,例如 OWASP Top 10。如需详细了解支持 OWASP 十大缓解措施的产品和功能,请参阅在 Google Cloud上缓解 OWASP 十大风险:2025。 Google Cloud

使用 Web Security Scanner 可帮助识别 App Engine、Compute Engine 和 GKE Web 应用中的安全漏洞。此扫描程序会抓取您的应用,跟踪起始网址范围内的所有链接,并尝试执行尽可能多的用户输入和事件处理脚本。它可自动扫描和检测常见漏洞,包括跨站脚本攻击、代码注入、混合内容以及过时或不安全的库。Web Security Scanner 可让您尽早识别这些类型的漏洞,而不会出现误报让您分心。

此外,如果您使用 GKE 管理 Kubernetes 集群舰队,安全状况信息中心会显示切实可行的建议,以帮助改善舰队的安全状况。