Objetos de solicitação de recursos personalizados - AWS CloudFormation

Objetos de solicitação de recursos personalizados

Este tópico descreve as propriedades do objeto de solicitação para um recurso personalizado do CloudFormation.

Para obter uma introdução aos recursos personalizados e como eles funcionam, consulte Recursos personalizados.

Propriedades de solicitação de desenvolvedor de modelos

O desenvolvedor do modelo usa o recurso CloudFormation, AWS::CloudFormation::CustomResource, para especificar um recurso personalizado em um modelo.

Em AWS::CloudFormation::CustomResource, todas as propriedades são definidas pelo custom resource provider. Há apenas uma propriedade necessária: ServiceToken.

ServiceTimeout

O tempo máximo, em segundos, que pode transcorrer até a operação de um recurso personalizado atingir o tempo limite.

O valor deve ser um número inteiro de 1 a 3600. O valor padrão é de 3600 segundos (1 hora).

Obrigatório: não

Tipo: string

ServiceToken

O token de serviço, como o ARN de um tópico do Amazon SNS ou o ARN de uma função do Lambda. O token de serviço deve estar na mesma região que a pilha.

Obrigatório: Sim

Tipo: string

Todos os outros campos das propriedades de recursos são opcionais e são enviados, textualmente, para o custom resource provider no campo ResourceProperties da solicitação. O provedor define os nomes e o conteúdo válido desses campos.

Campos de solicitação do Custom Resource Provider

Esses campos são enviados em solicitações JSON do CloudFormation para o provedor de recursos personalizados no tópico do SNS que o provedor configurou para essa finalidade.

RequestType

O tipo de solicitação é definido pela operação de pilha do CloudFormation (que pode ser create-stack, update-stack ou delete-stack) iniciada pelo desenvolvedor do modelo para a pilha que contém o recurso personalizado.

Deve ser: Create, Updateou Delete. Para obter mais informações, consulte Tipos de solicitação de recurso personalizado.

Obrigatório: Sim

Tipo: string

ResponseURL

O URL de resposta identifica um bucket do S3 pré-assinado que recebe respostas do provedor de recursos personalizados para o AWS CloudFormation.

Obrigatório: Sim

Tipo: string

StackId

O nome do recurso da Amazon (ARN) que identifica a pilha que contém o recurso personalizado.

Combinar StackId com RequestId forma um valor que é possível utilizar para identificar exclusivamente uma solicitação em um recurso personalizado específico.

Obrigatório: Sim

Tipo: string

RequestId

Um ID exclusivo para a solicitação.

Combinar StackId com RequestId forma um valor que é possível utilizar para identificar exclusivamente uma solicitação em um recurso personalizado específico.

Obrigatório: Sim

Tipo: string

ResourceType

O tipo de recurso escolhido pelo desenvolvedor do modelo do recurso personalizado no modelo do CloudFormation. Os nomes de tipos de recursos personalizados podem incluir até 60 caracteres, incluindo alfanuméricos e os seguintes caracteres: _@-.

Obrigatório: Sim

Tipo: string

LogicalResourceId

O nome do modelo escolhido pelo desenvolvedor (ID lógico) do recurso personalizado no modelo AWS CloudFormation. Ele é fornecido para facilitar a comunicação entre o provedor de recursos personalizados e o desenvolvedor de modelos.

Obrigatório: Sim

Tipo: string

PhysicalResourceId

Uma ID física definida por custom resource provider exclusiva para esse provedor.

O valor retornado para um PhysicalResourceId pode alterar as operações de atualização de recursos personalizados. Se o valor retornado for o mesmo, a atualização é considerada normal. Se o valor retornado for diferente, o AWS CloudFormation reconhece a atualização como uma substituição e envia uma solicitação de exclusão ao recurso antigo. Para ter mais informações, consulte AWS::CloudFormation::CustomResource.

Obrigatório: sempre enviado com solicitações Update e Delete. Nunca com Create.

Tipo: string

ResourceProperties

Esse campo apresenta o conteúdo do objeto Properties enviado pelo desenvolvedor de modelos. Seu conteúdo é definido pelo provedor de recursos personalizados.

Obrigatório: não

Tipo: objeto JSON

OldResourceProperties

Usado apenas para solicitações Update. Contém as propriedades do recurso que foram declaradas antes da solicitação de atualização.

Obrigatório: Sim

Tipo: objeto JSON