Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

AWS CloudFormation Filtros de nível de pilha de ganchos

Modo de foco
AWS CloudFormation Filtros de nível de pilha de ganchos - AWS CloudFormation

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Você pode adicionar filtros de nível de pilha aos seus CloudFormation Hooks para direcionar pilhas específicas com base nos nomes e funções das pilhas. Isso é útil nos casos em que você tem várias pilhas com os mesmos tipos de recursos, mas o Hook é destinado a pilhas específicas.

Esta seção explica como esses filtros funcionam e fornece exemplos que você pode seguir.

A estrutura básica de uma configuração de Hook sem filtragem em nível de pilha é assim:

{ "CloudFormationConfiguration": { "HookConfiguration": { "HookInvocationStatus": "ENABLED", "TargetOperations": [ "STACK", "RESOURCE" ], "FailureMode": "WARN", "Properties": {} } } }

Para obter mais informações sobre a HookConfiguration sintaxe, consulteReferência de sintaxe de esquema de configuração de hook.

Para usar filtros de nível de pilha, adicione uma StackFilters chave abaixoHookConfiguration.

A StackFilters chave tem um membro obrigatório e dois membros opcionais.

  • FilteringCriteria (obrigatório)

  • StackNames (Opcional)

  • StackRoles (Opcional)

As StackRoles propriedades StackNames or são opcionais. No entanto, você deve especificar pelo menos uma dessas propriedades.

Se você criar um Hook que tenha como alvo API as operações do Cloud Control, todos os filtros de nível de pilha serão ignorados.

FilteringCriteria

FilteringCriteriaé um parâmetro obrigatório que especifica o comportamento da filtragem. Ele pode ser definido como ALL ouANY.

  • ALLinvoca o Hook se todos os filtros forem compatíveis.

  • ANYinvoca o Hook se algum filtro for compatível.

StackNames

Para especificar um ou mais nomes de pilha como filtros na configuração do Hooks, use a seguinte estrutura: JSON

"StackNames": { "Include": [ "string" ], "Exclude": [ "string" ] }

É necessário especificar um dos seguintes:

  • Include: Lista de nomes de pilhas a serem incluídos. Somente as pilhas especificadas nesta lista invocarão o Hook.

    • Tipo: matriz de strings

    • Número máximo de itens: 50

    • Itens principais: 1

  • Exclude: lista de nomes de pilha a serem excluídos. Todas as pilhas, exceto as listadas aqui, invocarão o Hook.

    • Tipo: matriz de strings

    • Número máximo de itens: 50

    • Itens principais: 1

Cada nome de pilha nas Exclude matrizes Include e deve seguir os seguintes requisitos de padrão e comprimento:

  • Padrão: ^[a-zA-Z][-a-zA-Z0-9]*$

  • Comprimento máximo: 128

StackRoles

Para especificar uma ou mais IAMfunções como filtros na configuração do Hook, use a seguinte JSON estrutura:

"StackRoles": { "Include": [ "string" ], "Exclude": [ "string" ] }

É necessário especificar um dos seguintes:

  • Include: Lista de IAM funções ARNs para direcionar as pilhas associadas a essas funções. Somente as operações de pilha iniciadas por essas funções invocarão o Hook.

    • Tipo: matriz de strings

    • Número máximo de itens: 50

    • Itens principais: 1

  • Exclude: Lista de IAM funções ARNs das pilhas que você deseja excluir. O Hook será invocado em todas as pilhas, exceto aquelas iniciadas pelas funções especificadas.

    • Tipo: matriz de strings

    • Número máximo de itens: 50

    • Itens principais: 1

Cada função de pilha nas Exclude matrizes Include e deve atender aos seguintes requisitos de padrão e comprimento:

  • Padrão: arn:.+:iam::[0-9]{12}:role/.+

  • Comprimento máximo: 256

Include e Exclude

Cada filtro (StackNameseStackRoles) tem uma Include lista e uma Exclude lista. Usando StackNames como exemplo, o Hook só é invocado nas pilhas especificadas na Include lista. Se os nomes das pilhas forem especificados apenas na Exclude lista, o gancho será invocado somente nas pilhas que não estão na lista. Exclude Se ambos Include Exclude forem especificados, o Hook tem como alvo o que está na Include lista e não o que está na Exclude lista.

Por exemplo, suponha que você tenha quatro pilhas: A, B, C e D.

  • "Include": ["A","B"]O Gancho é invocado em A e B.

  • "Exclude": ["B"]O Gancho é invocado em A, C e D.

  • "Include": ["A","B","C"], "Exclude": ["A","D"]O Gancho é invocado em B e C.

  • "Include": ["A","B","C"], "Exclude": ["A”,"B","C"]O Hook não é invocado em nenhuma pilha.

Exemplos de filtros de nível de pilha

Esta seção fornece exemplos que você pode seguir para criar filtros de nível de pilha para AWS CloudFormation Hooks.

Exemplo 1: Incluir pilhas específicas

O exemplo a seguir especifica uma Include lista. O Hook só é invocado em pilhas chamadas stack-test-1 e. stack-test-2 stack-test-3

{ "CloudFormationConfiguration": { "HookConfiguration": { "HookInvocationStatus": "ENABLED", "TargetOperations": [ "STACK", "RESOURCE" ], "FailureMode": "WARN", "Properties": {}, "StackFilters": { "FilteringCriteria": "ALL", "StackNames": { "Include": [ "stack-test-1", "stack-test-2", "stack-test-3" ] } } } } }

Exemplo 2: Excluir pilhas específicas

Se, em vez disso, os nomes das pilhas forem adicionados à Exclude lista, o Hook será invocado em qualquer pilha que não tenha nomestack-test-1, ou. stack-test-2 stack-test-3

{ "CloudFormationConfiguration": { "HookConfiguration": { "HookInvocationStatus": "ENABLED", "TargetOperations": [ "STACK", "RESOURCE" ], "FailureMode": "WARN", "Properties": {}, "StackFilters": { "FilteringCriteria": "ALL", "StackNames": { "Exclude": [ "stack-test-1", "stack-test-2", "stack-test-3" ] } } } } }

Exemplo 3: Combinação de incluir e excluir

Se Exclude as listas Include e não forem especificadas, o Hook só será invocado nas pilhas Include que não estão na Exclude lista. No exemplo a seguir, o Hook só é invocado emstack-test-3.

{ "CloudFormationConfiguration": { "HookConfiguration": { "HookInvocationStatus": "ENABLED", "TargetOperations": [ "STACK", "RESOURCE" ], "FailureMode": "WARN", "Properties": {}, "StackFilters": { "FilteringCriteria": "ALL", "StackNames": { "Include": [ "stack-test-1", "stack-test-2", "stack-test-3" ], "Exclude": [ "stack-test-1", "stack-test-2" ] } } } } }

Exemplo 4: combinação de nomes e funções da pilha com critérios ALL

O Hook a seguir inclui três nomes de pilha e uma função de pilha. Como o FilteringCriteria é especificado comoALL, o Hook só é invocado para pilhas que tenham um nome de pilha correspondente e a função de pilha correspondente.

{ "CloudFormationConfiguration": { "HookConfiguration": { "HookInvocationStatus": "ENABLED", "TargetOperations": [ "STACK", "RESOURCE" ], "FailureMode": "WARN", "Properties": {}, "StackFilters": { "FilteringCriteria": "ALL", "StackNames": { "Include": [ "stack-test-1", "stack-test-2", "stack-test-3" ] }, "StackRoles": { "Include": ["arn:aws:iam::123456789012:role/hook-role"] } } } } }

Exemplo 5: combinação de nomes e funções da pilha com critérios ANY

O Hook a seguir inclui três nomes de pilha e uma função de pilha. Como o FilteringCriteria é especificado comoANY, o Hook é invocado para pilhas que têm um nome de pilha correspondente ou a função de pilha correspondente.

{ "CloudFormationConfiguration": { "HookConfiguration": { "HookInvocationStatus": "ENABLED", "TargetOperations": [ "STACK", "RESOURCE" ], "FailureMode": "WARN", "Properties": {}, "StackFilters": { "FilteringCriteria": "ANY", "StackNames": { "Include": [ "stack-test-1", "stack-test-2", "stack-test-3" ] }, "StackRoles": { "Include": ["arn:aws:iam::123456789012:role/hook-role"] } } } } }
PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.