AWS 리소스의 현재 구성 상태 쿼리 - AWS Config

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS 리소스의 현재 구성 상태 쿼리

제너레이티브 인공 지능 (generative AI) 기능을 사용하여 프롬프트를 일반 영어로 입력하고 쿼리 형식으로 변환할 수 있는 고급 쿼리용 미리 보기 기능을 소개합니다. ready-to-use 자세한 내용은 고급 쿼리용 자연어 쿼리 프로세서를 참조하세요.

를 AWS Config 사용하여 단일 계정 및 지역 또는 여러 계정 및 지역의 구성 속성을 기반으로 AWS 리소스의 현재 구성 상태를 쿼리할 수 있습니다. 지원하는 리소스 목록에서 현재 AWS 리소스 상태 메타데이터에 대해 속성 기반 쿼리를 수행할 수 있습니다. AWS Config 지원되는 리소스 유형 목록에 대한 자세한 내용은 고급 쿼리에 지원되는 리소스 유형을 참조하세요.

고급 쿼리는 서비스별 설명 API 호출을 수행하지 않고도 현재 리소스 상태 메타데이터를 가져올 수 있는 단일 쿼리 엔드포인트와 쿼리 언어를 제공합니다. 구성 애그리게이터를 사용하여 여러 계정 및 지역의 중앙 계정에서 동일한 쿼리를 실행할 수 있습니다. AWS

특성

AWS Config 구조적 쿼리 언어 (SQL) SELECT 구문의 하위 집합을 사용하여 현재 구성 항목 (CI) 데이터에 대한 속성 기반 쿼리 및 집계를 수행합니다. 쿼리의 복잡성은 태그 및/또는 리소스 식별자와의 일치부터 버전 관리가 비활성화된 모든 Amazon S3 버킷을 보는 것과 같이 좀 더 복잡한 쿼리에 이르기까지 다양합니다. 따라서 AWS 서비스별 API 직접 호출 수행 없이 필요한 현재 리소스 상태를 정확히 쿼리할 수 있습니다.

AVG, COUNT, MAX, MIN, SUM 등의 집계 함수를 지원합니다.

고급 쿼리를 사용할 수 있는 경우:

  • 인벤토리 관리(예: 특정 크기의 Amazon EC2 인스턴스 목록 가져오기)

  • 보안 및 지능형 운영(예: 특정한 구성 속성이 활성화 또는 비활성화된 리소스 목록 가져오기)

  • 비용 최적화(예: EC2 인스턴스에 연결되지 않은 Amazon EBS 볼륨 목록 식별)

  • 규정 준수 데이터(예: 모든 적합성 팩 및 그것들의 규정 준수 상태 목록 가져오기)

SQL 쿼리 언어를 사용하는 방법에 대한 자세한 내용은 AWS SQL (구조적 쿼리 언어) 이란? 을 참조하십시오. .

제한 사항

참고

고급 쿼리는 구성 레코더에 기록되도록 구성되지 않은 리소스에 대한 쿼리를 지원하지 않습니다. AWS Config 리소스가 검색되었지만 구성 레코더에 ResourceNotRecorded 기록되도록 구성되지 않은 configurationItemStatus 경우 를 사용하여 구성 항목 (CI) 을 생성합니다. 집계자는 이러한 CI를 집계하지만 고급 쿼리는 ResourceNotRecorded를 사용한 CI 쿼리를 지원하지 않습니다. 쿼리하려는 리소스 유형을 기록하려면 레코더 설정을 업데이트하세요.

SQL SELECT의 하위 집합인 쿼리 구문에는 다음과 같은 제한 사항이 있습니다.

  • 쿼리에서ALL, AS, DISTINCT, FROM, HAVING, JOIN, 및 UNION 키워드는 지원되지 않습니다. NULL 값 쿼리는 지원되지 않습니다.

  • 타사 리소스에 대한 쿼리는 지원되지 않습니다. 고급 쿼리를 사용하여 검색한 타사 리소스의 구성 필드는 NULL로 설정됩니다.

  • SQL 쿼리로 중첩 구조(예: 태그)의 팩킹을 해제하는 기능은 지원되지 않습니다.

  • CIDR 표기법은 검색을 위해 IP 범위로 변환됩니다. 즉, "=""BETWEEN"는 정확한 IP 대신 제공된 IP를 포함하는 모든 범위를 검색합니다. 정확한 IP 범위를 검색하려면 범위를 벗어난 IP를 제외하는 벌도의 조건을 추가해야 합니다. 예를 들어 10.0.0.0/24 및 해당 IP 블록만 검색하려면 다음 작업을 수행합니다.

    SELECT * WHERE resourceType = 'AWS::EC2::SecurityGroup' AND configuration.ipPermissions.ipRanges BETWEEN '10.0.0.0' AND '10.0.0.255' AND NOT configuration.ipPermissions.ipRanges < '10.0.0.0' AND NOT configuration.ipPermissions.ipRanges > '10.0.0.255'

    192.168.0.2/32의 경우 다음과 비슷한 방식으로 검색할 수 있습니다.

    SELECT * WHERE resourceType = 'AWS::EC2::SecurityGroup' AND configuration.ipPermissions.ipRanges = '192.168.0.2' AND NOT configuration.ipPermissions.ipRanges > '192.168.0.2' AND NOT configuration.ipPermissions.ipRanges < '192.168.0.2'
  • 객체 배열 내 여러 속성을 쿼리할 경우 일치 항목이 모든 배열 요소를 대상으로 계산됩니다. 예를 들어, 규칙 A와 B가 있는 리소스 R의 경우, 리소스가 규칙 A를 준수하지만 규칙 B는 준수하지 않는 경우 리소스 R은 다음과 같이 저장됩니다.

    { configRuleList: [ { configRuleName: 'A', complianceType: 'compliant' }, { configRuleName: 'B', complianceType: 'non_compliant' } ] }

    다음 쿼리로 R이 반환됩니다.

    SELECT configuration WHERE configuration.configRuleList.complianceType = 'non_compliant' AND configuration.configRuleList.configRuleName = 'A'

    첫 번째 조건은 configuration.configRuleList.complianceType = 'non_compliant' R의 모든 요소에 적용됩니다. configRuleList R에는 ComplianceType = 'non_compliant'인 규칙 (규칙 B) 이 있으므로 조건이 참으로 평가됩니다. 두 번째 configuration.configRuleList.configRuleName 조건은 R의 모든 요소에 적용됩니다. configRuleList R에는 configRuleName = 'A'인 규칙 (규칙 A) 이 있으므로 조건이 true로 평가됩니다. 두 조건이 모두 true면 R이 반환됩니다.

  • 모든 열 SELECT 약칭(SELECT *)이 CI의 최상위 스칼라 속성만 선택합니다. 반환되는 스칼라 속성은 accountId, awsRegion, arn, availabilityZone, configurationItemCaptureTime, resourceCreationTime, resourceId, resourceName, resourceTypeversion입니다.

  • 와일드카드 제한 사항:

    • 와일드카드는 속성 키가 아닌 속성 값에 대해서만 지원됩니다(예를 들어 ...WHERE someKey LIKE 'someValue%'는 지원되지만 ...WHERE 'someKey%' LIKE 'someValue%'는 지원되지 않음).

    • 접미사 와일드카드에 대해서만 지원됩니다(예를 들어 ...LIKE 'AWS::EC2::%'...LIKE 'AWS::EC2::_'는 지원되지만 ...LIKE '%::EC2::Instance'...LIKE '_::EC2::Instance'는 지원되지 않음).

    • 와일드카드 일치 항목의 길이는 최소 세 문자여야 합니다(예를 들어 ...LIKE 'ab%'...LIKE 'ab_'는 허용되지 않지만 ...LIKE 'abc%'...LIKE 'abc_'는 허용됩니다).

    참고

    '_'(단일 밑줄)도 와일드카드로 취급됩니다.

  • 집계 제한 사항:

    • 집계 함수에는 단일 인수 또는 속성만 사용할 수 있습니다.

    • 집계 함수에는 인수 같은 다른 함수를 사용할 수 없습니다.

    • 집계 함수를 참조하는 ORDER BY 절을 사용한 GROUP BY는 단일 속성만 포함할 수 있습니다.

    • 다른 모든 집계 GROUP BY 절의 경우 최대 세 개의 속성을 포함할 수 있습니다.

    • ORDER BY 절에 집계 함수가 있는 경우를 제외하고 모든 집계 쿼리에서 페이지 매김이 지원됩니다. 예를 들어 Y가 집계 함수인 경우 GROUP BY X, ORDER BY Y는 작동하지 않습니다.

    • 집계에서 HAVING 절을 지원하지 않습니다.

  • 일치하지 않는 식별자 제한 사항:

    일치하지 않는 식별자는 철자는 같지만 대/소문자(대문자 및 소문자)가 다른 속성입니다. 고급 쿼리는 일치하지 않는 식별자가 포함된 쿼리를 처리할 수 없습니다. 예:

    • 철자는 같지만 대/소문자가 다른 두 속성(configuration.dbclusterIdentifierconfiguration.dBClusterIdentifier)

    • 한 속성이 다른 속성의 하위 집합이고 대/소문자가 다른 두 속성(configuration.ipAddressconfiguration.ipaddressPermissions)

리전 지원

고급 쿼리는 다음 리전에서 지원됩니다.

리전 이름 지역 엔드포인트 프로토콜
미국 동부(오하이오) us-east-2 config.us-east-2.amazonaws.com HTTPS
미국 동부(버지니아 북부) us-east-1 config.us-east-1.amazonaws.com HTTPS
미국 서부(캘리포니아 북부) us-west-1 config.us-west-1.amazonaws.com HTTPS
미국 서부(오레곤) us-west-2 config.us-west-2.amazonaws.com HTTPS
아프리카(케이프타운) af-south-1 config.af-south-1.amazonaws.com HTTPS
아시아 태평양(홍콩) ap-east-1 config.ap-east-1.amazonaws.com HTTPS
아시아 태평양(하이데라바드) ap-south-2 config.ap-south-2.amazonaws.com HTTPS
아시아 태평양(자카르타) ap-southeast-3 config.ap-southeast-3.amazonaws.com HTTPS
아시아 태평양(멜버른) ap-southeast-4 config.ap-southeast-4.amazonaws.com HTTPS
아시아 태평양(뭄바이) ap-south-1 config.ap-south-1.amazonaws.com HTTPS
아시아 태평양(오사카) ap-northeast-3 config.ap-northeast-3.amazonaws.com HTTPS
아시아 태평양(서울) ap-northeast-2 config.ap-northeast-2.amazonaws.com HTTPS
아시아 태평양(싱가포르) ap-southeast-1 config.ap-southeast-1.amazonaws.com HTTPS
아시아 태평양(시드니) ap-southeast-2 config.ap-southeast-2.amazonaws.com HTTPS
아시아 태평양(도쿄) ap-northeast-1 config.ap-northeast-1.amazonaws.com HTTPS
캐나다(중부) ca-central-1 config.ca-central-1.amazonaws.com HTTPS
캐나다 서부(캘거리) ca-west-1 config.ca-west-1.amazonaws.com HTTPS
유럽(프랑크푸르트) eu-central-1 config.eu-central-1.amazonaws.com HTTPS
유럽(아일랜드) eu-west-1 config.eu-west-1.amazonaws.com HTTPS
유럽(런던) eu-west-2 config.eu-west-2.amazonaws.com HTTPS
유럽(밀라노) eu-south-1 config.eu-south-1.amazonaws.com HTTPS
유럽(파리) eu-west-3 config.eu-west-3.amazonaws.com HTTPS
유럽(스페인) eu-south-2 config.eu-south-2.amazonaws.com HTTPS
유럽(스톡홀름) eu-north-1 config.eu-north-1.amazonaws.com HTTPS
유럽(취리히) eu-central-2 config.eu-central-2.amazonaws.com HTTPS
이스라엘(텔아비브) il-central-1 config.il-central-1.amazonaws.com HTTPS
중동(바레인) me-south-1 config.me-south-1.amazonaws.com HTTPS
중동(UAE) me-central-1 config.me-central-1.amazonaws.com HTTPS
남아메리카(상파울루) sa-east-1 config.sa-east-1.amazonaws.com HTTPS
AWS GovCloud (미국 동부) us-gov-east-1 config.us-gov-east-1.amazonaws.com HTTPS
AWS GovCloud (미국 서부) us-gov-west-1 config.us-gov-west-1.amazonaws.com HTTPS