Cloudformation AWS :: ElasticLoadBalancingV2 :: Listener任意证书列表

时间:2017-12-30 16:45:05

标签: amazon-web-services amazon-cloudformation

我正在尝试编写一个支持多个环境的CloudFormation模板,每个env都可以有2个或3个证书,这些证书应该附加到负载均衡器监听器。

但是,由于Cloudformation不接受证书arns(doc)的简单列表,因此我很难弄清楚如何使用参数传递对象列表。看来:

  1. 每个参数必须具有类型
  2. "列表"不是一种可接受的类型,它必须是一个"
  3. 的列表
  4. Cloudformation没有" foreach"创建一个"证书对象"来自每个证书arn on the the fly。
  5. 我遇到了这个示例模板(link),但是这里通过使用两个显式证书解决了问题 - 我需要能够动态输入任意证书列表

    对于ref,我需要能够注入这样的东西(伪代码):

    Certificates: - Certificate: Arn1 - Certificate: Arn2 - Certificate: Arn_n

    其中Arn1,Arn2,Arn_n来自" list-type"参数。

    所以我想问题是:是否有任何" foreach"或者Cloudformation中的任何其他内容,可以帮助我生成一个"对象"参数列表中的每个项目,或任何传入的方式" rich"参数对象?

1 个答案:

答案 0 :(得分:1)

CloudFormation允许您使用CommaDelimitedList作为参数类型。然后,您可以以逗号分隔列表的形式提供此内容:

  

arn1,arn2,arn3

该列表是任意的。然后,您可以直接将其提供给收听者的Certificates属性:

"Certificates" : { "Ref" : "MyListParam" }