기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS CloudFormation 후크 대상 필터
이 주제에서는 AWS CloudFormation 후크에 대한 대상 필터 구성에 대한 지침을 제공합니다. 대상 필터를 사용하여 후크가 호출되는 시기와 리소스를 보다 세밀하게 제어할 수 있습니다. 간단한 리소스 유형 타겟팅부터 리소스 유형, 작업 및 호출 지점의 보다 복잡한 조합에 이르기까지 다양한 필터를 구성할 수 있습니다.
후크 구성에서 하나 이상의 스택 이름을 필터로 지정하려면 아래에 TargetFilters 키를 추가합니다HookConfiguration.
TargetFilters는 다음 속성을 지원합니다.
Actions-
대상 작업을 지정하는 문자열 배열입니다. 예제는 예제 1: 기본 대상 필터 섹션을 참조하세요.
유효한 값:
CREATE|UPDATE|DELETE참고
RESOURCE,STACK및CLOUD_CONTROL대상의 경우 모든 대상 작업이 적용됩니다.CHANGE_SET대상의 경우CREATE작업만 적용됩니다. 자세한 내용은 후크 대상 단원을 참조하십시오. InvocationPoints-
대상에 대한 호출 지점을 지정하는 문자열 배열입니다.
유효한 값:
PRE_PROVISION TargetNames-
와 같이 대상으로 지정할 리소스 유형 이름을 지정하는 문자열 배열입니다
AWS::S3::Bucket.대상 이름은 구체적인 대상 이름과 전체 와일드카드 일치를 지원합니다. 자세한 내용은 후크 대상 이름과 함께 와일드카드 사용 단원을 참조하십시오.
Pattern:
^[a-zA-Z0-9]{2,64}::[a-zA-Z0-9]{2,64}::[a-zA-Z0-9]{2,64}$최대:
50 Targets-
대상 필터링에 사용할 대상 목록을 지정하는 객체 배열입니다.
대상 배열의 각 대상에는 다음과 같은 속성이 있습니다.
Actions-
지정된 대상에 대한 작업입니다.
유효한 값:
CREATE|UPDATE|DELETE InvocationPoints-
지정된 대상의 호출 지점입니다.
유효한 값:
PRE_PROVISION TargetNames-
대상으로 지정할 리소스 유형 이름입니다.
참고
Targets 객체 배열과 TargetNames, Actions또는 InvocationPoints 배열을 동시에 포함할 수 없습니다. 이 세 항목과를 사용하려면 Targets 객체 배열에 포함시켜야 Targets합니다. 예제는 예제 2: Targets 객체 배열 사용 섹션을 참조하세요.
대상 필터의 예
이 섹션에서는 AWS CloudFormation 후크에 대한 대상 필터를 생성하기 위해 따를 수 있는 예제를 제공합니다.
예제 1: 기본 대상 필터
특정 리소스 유형에 초점을 맞춘 기본 대상 필터를 생성하려면 Actions 배열과 함께 TargetFilters 객체를 사용합니다. 다음 대상 필터 구성은 지정된 대상 작업(이 경우 RESOURCE 및 STACK 작업 모두)에 대한 모든 Create, Update및 Delete 작업에서 후크를 호출합니다.
{ "CloudFormationConfiguration": { "HookConfiguration": { "HookInvocationStatus":"ENABLED", "TargetOperations": ["STACK", "RESOURCE"], "FailureMode":"WARN", "Properties":{}, "TargetFilters": { "Actions": ["Create", "Update", "Delete"] } } } }
예제 2: Targets 객체 배열 사용
고급 필터의 경우 Targets 객체 배열을 사용하여 특정 대상, 작업 및 호출 지점 조합을 나열할 수 있습니다. 다음 대상 필터 구성은 S3 버킷 CREATE 및 DynamoDB 테이블에 대한 Hook before 및 UPDATE 작업을 호출합니다. 및 STACK RESOURCE 작업 모두에 적용됩니다.
{ "CloudFormationConfiguration": { "HookConfiguration": { "HookInvocationStatus":"ENABLED", "TargetOperations": ["STACK", "RESOURCE"], "FailureMode":"WARN", "Properties":{}, "TargetFilters": { "Targets": [ { "TargetName": "AWS::S3::Bucket", "Action": "CREATE", "InvocationPoint": "PRE_PROVISION" }, { "TargetName": "AWS::S3::Bucket", "Action": "UPDATE", "InvocationPoint": "PRE_PROVISION" }, { "TargetName": "AWS::DynamoDB::Table", "Action": "CREATE", "InvocationPoint": "PRE_PROVISION" }, { "TargetName": "AWS::DynamoDB::Table", "Action": "UPDATE", "InvocationPoint": "PRE_PROVISION" } ] } } } }