如何获取用户在CloudFormation中选择的VPC的网段?



我要求用户选择一个现有的VPC:

Parameters:
MyVPC:
Type: AWS::EC2::VPC::Id

然后在我的"资源"块中,我正在尝试获取该 VPC 的 CIDR 块。
当我尝试这个时:

- Fn::GetAtt:
- MyVPC
- CidrBlock

我得到:

Template error: instance of Fn::GetAtt references undefined resource MyVPC

我明白了,因为从技术上讲,MyVPC是一个参数而不是资源。

那么如何获取用户选择的VPC网段呢?

我认为这是不可能的。

Parameter只是一个 VPCID,而不是 VPC 本身。

GetAtt命令需要模板中的Resource,但模板不存在。

您需要将 CIDR 块添加为另一个参数,或者创建一个 Lambda 支持的自定义资源来获取信息并将其提供给模板。

最新更新