在 Cloudformation 脚本中为 CommaDelimitedList 类型的参数强制执行 AllowedPattern

Enforce AllowedPattern for parameter of type CommaDelimitedList in Cloudformation script

我试图在我的参数上使用正则表达式强制执行允许的模式,但是当我尝试构建我的堆栈时,我收到以下错误消息:

Template validation error: Template error: Parameter 'myParam' AllowedPattern must be on a parameter of type String

这是我的参数定义:

"myParam": {
   "Description": "this is my param",
   "Type": "CommaDelimitedList",
   "AllowedPattern": "\+[0-9\-\ ]+",
   "MinLength": "1"
 }

我相信你不能在 CommaDelimitedList 上做正则表达式。正则表达式只能应用于字符串。

CommaDelimitedList – 由逗号分隔的文字字符串数组

您的参数类型为 CommaDelimitedList,而非 String。属性 AllowedPattern(也称为 MinLength)仅适用于类型 String

参见例如http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html了解更多详情。