自定义资源请求对象
本主题将介绍 CloudFormation 自定义资源的请求对象属性。
有关自定义资源及其工作原理的介绍,请参阅使用自定义资源创建自定义预置逻辑。
模板开发人员请求属性
模板开发人员使用 CloudFormation 资源 AWS::CloudFormation::CustomResource
,在模板中指定自定义资源。
在 AWS::CloudFormation::CustomResource
中,所有属性均由自定义资源提供商定义。只有一个必需属性:ServiceToken
。
ServiceTimeout
-
自定义资源操作超时前可流逝的最长时间(以秒为单位)。
该值必须是介于 1 到 3600 之间的整数。默认值为 3600 秒(1 小时)。
必需:否
类型:字符串
ServiceToken
-
服务令牌,例如 Amazon SNS 主题 ARN 或 Lambda 函数 ARN。服务令牌必须与堆栈位于同一区域。
必需:是
类型:字符串
资源属性中的所有其他字段是可选字段,并通过该请求的 ResourceProperties
字段逐字发送到自定义资源提供商。提供者定义这些字段的名称和有效内容。
自定义资源提供商请求字段
这些字段将以 JSON 请求形式从 CloudFormation 发送到提供商为实现此目的而配置的 SNS 主题中的自定义资源提供商。
RequestType
-
请求类型由 CloudFormation 堆栈操作(创建堆栈、更新堆栈或删除堆栈)设置,而堆栈操作是由包含自定义资源的堆栈的模板开发人员启动的。
必须为以下值之一:
Create
、Update
或Delete
。有关更多信息,请参阅 自定义资源请求类型。必需:是
类型:字符串
ResponseURL
-
响应 URL 标识一个预签名 S3 桶,该桶接收从自定义资源提供商到 AWS CloudFormation 的响应。
必需:是
类型:字符串
StackId
-
标识包含自定义资源的堆栈的 Amazon 资源名称(ARN)。
将
StackId
与RequestId
组合形成一个值,您可以使用该值唯一标识对特定自定义资源的请求。必需:是
类型:字符串
RequestId
-
请求的唯一 ID。
将
StackId
与RequestId
组合形成一个值,您可以使用该值唯一标识对特定自定义资源的请求。必需:是
类型:字符串
ResourceType
-
CloudFormation 模板中模板开发人员选择的自定义资源的资源类型。自定义资源类型名称的长度最多为 60 个字符,并且可包含字母数字字符和以下字符:
_@-
。必需:是
类型:字符串
LogicalResourceId
-
AWS CloudFormation 模板中模板开发人员选择的自定义资源的名称(逻辑 ID)。这是为了促进自定义资源提供商与模板开发人员之间的通信。
必需:是
类型:字符串
PhysicalResourceId
custom resource provider 定义的必需物理 ID,该 ID 对于该提供程序是唯一的。
为
PhysicalResourceId
返回的值可以更改自定义资源更新操作。如果返回的值相同,则将其视为正常更新。如返回的值不同,则 AWS CloudFormation 将该更新视为替换,并向旧资源发送删除请求。有关更多信息,请参阅AWS::CloudFormation::CustomResource
。必需:始终通过
Update
和Delete
请求来发送;从不通过Create
发送。类型:字符串
ResourceProperties
-
此字段包含模板开发人员发送的
Properties
对象的内容。其内容由自定义资源提供商定义。必需:否
类型:JSON 对象
OldResourceProperties
-
仅用于
Update
请求。包含在更新请求之前声明的资源属性。必需:是
类型:JSON 对象