AWS Service Catalog 模板约束 - AWS Service Catalog

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

AWS Service Catalog 模板约束

注意

AWS Service Catalog 不支持 Terraform 开源或 Terraform 云产品的模板约束。

要限制最终用户在启动产品时可用的选项,请应用模板约束。应用模板约束可确保最终用户可在不违反组织的合规性要求的情况下使用产品。您可将模板约束应用于 AWS Service Catalog 产品组合中的产品。产品组合必须先包含一个或多个产品,然后才能定义模板约束。

模板约束包含一个或多个规则,这些规则可缩小在产品的基础 AWS CloudFormation 模板中定义的参数的允许值。AWS CloudFormation 模板中的参数定义用户在创建堆栈时指定的值的集合。例如,参数可定义用户在启动包含 EC2 实例的堆栈时可从中选择的多种实例类型。

如果模板中的参数值集对于产品组合的目标受众来说太广泛,则可定义模板约束来限制用户在启动产品时可选择的值。例如,如果模板参数包含的 EC2 实例类型对于只应使用小型实例类型 (例如,t2.microt2.small) 的用户来说过大,则可添加模板约束以限制最终用户可选择的实例类型。有关 AWS CloudFormation 参数的更多信息,请参阅《AWS CloudFormation用户指南》中的参数

模板约束绑定于产品组合内。如果将模板约束应用于一个产品组合的某个产品,然后您将此产品包含在另一个产品组合中,则这些约束将不会应用于第二个产品组合的此产品。

如果将模板约束应用于已与用户共享的产品,则约束会立即应用到随后启动的所有产品和产品组合中所有版本的产品。

通过使用规则编辑器或通过在 AWS Service Catalog 管理员控制台中将规则编写为 JSON 文本来定义模板约束规则。有关规则的更多信息(包括语法和示例),请参阅模板约束规则

要在将约束发布给用户前对其进行测试,请创建包含相同产品的测试产品组合,并使用该产品组合测试约束。

将模板约束应用于产品
  1. 通过以下网址打开 Service Catalog 控制台:https://console.aws.amazon.com/servicecatalog/

  2. 产品组合页面,选择包含要将模板约束应用于其上的产品的产品组合。

  3. 展开约束部分并选择添加约束

  4. 选择产品和类型窗口中,对于产品,选择您要定义模板约束的产品。然后,对于约束类型项,选择模板。选择继续

  5. 模板约束生成器页面,使用 JSON 编辑器或规则生成器界面来编辑约束规则。

    • 要编辑规则的 JSON 代码,请选择约束文本编辑器选项卡。此选项卡上提供了多个示例来帮助您开始操作。

      要使用规则生成器界面构建规则,请选择规则生成器选项卡。在此选项卡上,您可以选择产品的模板中指定的任何参数,并可以为该参数指定允许值。根据参数的类型,可通过选择清单中的项目、指定数量或指定逗号分隔列表中的一组值来指定允许值。

      在构建完规则后,选择添加规则。规则会显示在规则生成器选项卡上的表中。要查看和编辑 JSON 输出,请选择约束文本编辑器选项卡。

  6. 在编辑完约束的规则后,选择提交。要查看约束,请转到产品组合详细信息页,然后展开约束