Ref
内部函数 Ref
返回指定 参数 或 资源 的值。
-
它在您指定参数逻辑名称时返回参数值。
-
在您指定资源的逻辑名称时,它会返回一个您一般用于引用该资源的值,如物理 ID。
当您在模板中声明资源且您需要通过名称指定另一个模板资源时,您可以使用 Ref
引用那个其他资源。一般情况下,Ref
返回资源的名称。例如,AWS::AutoScaling::AutoScalingGroup 的引用返回该自动扩缩组资源的名称。
对于某些资源,会返回在资源环境中有另一种重要意义的标识符。例如,AWS::EC2::EIP 资源返回 IP 地址,AWS::EC2::Instance 返回实例 ID。
提示
您还可以使用 Ref
将值添加到 Output 消息中。
有关特定资源或属性的 Ref
返回值的更多信息,请参阅 资源和属性参考 中该资源或属性的文档。
声明
JSON
{ "Ref" : "
logicalName
" }
YAML
完整函数名称的语法:
Ref:
logicalName
短格式的语法:
!Ref
logicalName
参数
- logicalName
-
您想引用的资源或参数的逻辑名称。
返回值
资源的物理 ID 或参数的值。
示例
为弹性 IP 地址的以下资源声明需要 EC2 实例的实例 ID,且使用 Ref
函数指定 MyEC2Instance 资源的实例 ID:
JSON
"MyEIP" : { "Type" : "AWS::EC2::EIP", "Properties" : { "InstanceId" : { "Ref" : "MyEC2Instance" } } }
YAML
MyEIP: Type: "AWS::EC2::EIP" Properties: InstanceId: !Ref MyEC2Instance
支持的函数
不能在 Ref
函数中使用任何函数。必须指定作为资源逻辑 ID 的字符串。