什么是 AWS CloudFormation 挂钩? - AWS CloudFormation

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

什么是 AWS CloudFormation 挂钩?

AWS CloudFormation Hooks 是一项功能,可帮助确保您的 CloudFormation 资源、堆栈和变更集符合组织的安全、运营和成本优化最佳实践。 CloudFormation Hook 还可以确保您的 AWS 云端控制 API 资源达到相同级别的合规性。借 CloudFormation 助 Hook,您可以提供在配置之前主动检查 AWS 资源配置的代码。如果发现不合规的资源,则 AWS CloudFormation 要么操作失败并阻止资源置备,要么发出警告并允许配置操作继续进行。

你可以使用 Hook 来强制执行各种要求和指导方针。例如,与安全相关的挂钩可以验证安全组是否具有适用于您的 Amazon VPC 的相应入站和出站流量规则。与成本相关的挂钩可以将开发环境限制为仅使用较小的 Amazon EC2 实例类型。专为数据可用性而设计的挂钩可以强制执行 Amazon RDS 的自动备份。

Hook 实现选项

CloudFormation 为实现 Hook 提供了多种选项,使您可以灵活地选择最适合自己需求的方法。

AWS Control Tower 主动控制

AWS Control Tower 控制目录提供标准化的主动控件,您可以将其作为 Hook 来实现。这种方法可以节省设置时间,并帮助您根据组织中的 AWS 最佳实践验证资源配置,而无需编写代码。

警卫规则

AWS CloudFormation Guard 是一种 policy-as-code评估工具,它提供了一种特定于域的语言,用于为 Hook 编写自定义评估逻辑。这种方法允许您使用 Guard 的声明语法定义合规性检查,无需丰富的编程知识即可轻松创建和维护评估逻辑。

Lambda 函数

您还可以使用 Lambda 函数实现 Hook,这样您就可以充分利用 Lambda 的强大功能和灵活性来实现评估逻辑。您可以使用任何 Lambda 支持的运行时语言,并根据需要与其他 AWS 服务集成。

自定义挂钩

对于高级用例,您可以使用 CloudFormation CLI 支持的编程语言编写自己的评估逻辑。这种方法为实施组织特定的治理要求提供了最大的灵活性。作为AWS CloudFormation 注册表中支持的扩展类型,您的自定义 Hook 可以公开和私下分发和激活。