AWS CloudFormation
用户指南 (API 版本 2010-05-15)

Ref

内部函数 Ref 返回指定 参数 资源 的值。

  • 它在您指定参数逻辑名称时返回参数值。

  • 在您指定资源的逻辑名称时,它会返回一个您一般用于引用该资源的值,如物理 ID

当您在模板中声明资源且您需要通过名称指定另一个模板资源时,您可以使用 Ref 引用那个其他资源。一般情况下,Ref返回资源的名称。例如,AWS::AutoScaling::AutoScalingGroup 的参考返回该 Auto Scaling 组资源的名称。

对于某些资源,会返回在资源环境中有另一种重要意义的标识符。例如,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 的字符串。