参数验证失败:参数名称 PublicSubnetAz 的参数值不存在

Parameter validation failed: parameter value for parameter name PublicSubnetAz does not exist

我正在尝试创建云形成模板,但出现错误

   Parameter validation failed: parameter value for parameter name PublicSubnetAz does not exist
当我 运行 堆栈创建时。

我的模板在参数部分包含以下 属性:

  "PublicSubnetAz":{  
     "Type":"AWS::EC2::AvailabilityZone::Name",
     "Default":""
  }

在我的条件部分我有

  "xxx":{  
      "Fn::Not":[  
         {  
            "Fn::Equals":[  
               {  
                  "Ref":"PublicSubnetAz"
               },
               ""
             ]
          }
       ]
   }

如果我在创建堆栈时没有设置 PublicSubnetAz 属性,我会收到错误报告。 这是预期的行为,就好像用户没有 select AZ 我在需要 AZ 参考时得到第一个。

是否有人已经解决了类似的问题并且可以帮助我?

实际上,如果这是 AWS 特定参数,则不能有可选参数。 有一个 feature request 日期为 2012 年但仍未实施