AWS Audit Manager에서 지원하는 AWS API 직접 호출 - AWS Audit Manager

AWS Audit Manager에서 지원하는 AWS API 직접 호출

Audit Manager를 사용하여 AWS 환경의 스냅샷을 감사의 증거로 캡처할 수 있습니다. 사용자 지정 컨트롤을 만들거나 편집할 때 하나 이상의 AWS API 직접 호출을 증거 수집을 위한 데이터 소스 매핑으로 지정할 수 있습니다. Audit Manager는 관련 AWS 서비스에 API 직접 호출을 보냄으로써 AWS 리소스에 대한 구성 세부 정보의 스냅샷을 수집합니다.

Audit Manager는 API 직접 호출 범위에 속하는 모든 리소스에 대해 구성 스냅샷을 캡처하여 이를 증거로 변환합니다. 이를 통해서, API 직접 호출당 하나의 증거가 생성되는 것과는 대조적으로, 리소스당 하나의 증거가 생성됩니다.

예를 들어, ec2_DescribeRouteTables API 직접 호출이 5개의 라우팅 테이블에서 구성 스냅샷을 캡처하는 경우, 단일 API 직접 호출에 대해 총 5개의 증거를 얻게 됩니다. 각 증거는 개별 라우팅 테이블 구성의 스냅샷입니다.

중요 사항

페이지가 매겨진 API 직접 호출

많은 AWS 서비스가 대량의 데이터를 수집하고 저장합니다. 그 결과, list, describe, 또는 get API 직접 호출에서 데이터를 반환하려고 하면 대단히 많은 결과가 나타날 수 있습니다. 단일 응답으로 반환하기에는 데이터 양이 너무 많을 경우, 페이지 매김 이용하여 결과를 관리하기 쉬운 여러 부분으로 나눌 수 있습니다. 이렇게 하면 결과가 데이터가 ‘페이지’ 단위로 나뉘어 응답을 더 쉽게 처리할 수 있습니다.

일부 사용자 지정 컨트롤 데이터 소스를 지원하는 API 직접 호출에는 페이지가 매겨져 있습니다. 즉, 처음에는 일부 결과만 보여주고, 전체 결과 세트를 보기 위해서는 후속 요청을 해야 합니다. 예를 들어, Amazon RDS DescribedBInstances 작업은 한 번에 최대 100개의 인스턴스를 보여주며, 다음 페이지의 결과를 보려면 후속 요청이 필요합니다.

2023년 3월 8일부터 Audit Manager는 증거 수집을 위한 데이터 소스로서 페이지가 매겨진 API 직접 호출을 지원합니다. 이전에는 페이지가 매겨진 API 직접 호출을 데이터 소스로 사용한 경우, API 응답에서 리소스의 일부만 볼 수 있었습니다(최대 100개의 결과). 현재는, Audit Manager에서 모든 리소스를 볼 수 있을 때까지 페이지가 매겨진 API 작업을 여러 번 호출하여 각 결과 페이지를 가져옵니다. 그런 다음, Audit Manager는 각 리소스에 대해 구성 스냅샷을 캡처하고 이를 증거로 저장합니다. 이제 전체 리소스 세트가 API 응답에 캡처되므로 2023년 3월 8일 이후에 수집되는 증거의 양이 증가하는 것을 알 수 있을 것입니다.

Audit Manager는 API 직접 호출 페이지 매김을 자동으로 처리합니다. 페이지가 지정된 API 직접 호출을 데이터 소스로 사용하는 사용자 지정 컨트롤을 만드는 경우, 페이지 매김 파라미터를 지정할 필요가 없습니다.

사용자 지정 컨트롤 데이터 소스를 지원하는 API 직접 호출

사용자 지정 제어에서 다음 API 직접 호출 중 하나를 데이터 소스로 사용할 수 있습니다. 그러면 Audit Manager는 이러한 API 직접 호출을 사용하여 AWS 사용에 대한 증거를 수집할 수 있습니다.

지원하는 API 직접 호출 Audit Manager에서 이 API를 사용하여 증거를 수집하는 방법
acm_GetAccountConfiguration AWS 계정에 연결된 계정 구성 옵션의 스냅샷을 수집합니다.
acm_ListCertificates 인증서 ARN 및 도메인 이름 목록을 검색합니다.
autoscaling_DescribeAutoScalingGroups AWS 계정에서 오토 스케일링 그룹에 대한 스냅샷을 수집합니다.
backup_ListBackupPlans AWS 계정에서 모든 활성 백업 계획 목록을 검색합니다.
bedrock_GetModelInvocationLoggingConfiguration AWS 계정의 모델에 대한 모델 간접 호출 로깅에 대한 현재 구성 값의 스냅샷을 수집합니다.
cloudfront_ListDistributions

AWS 계정에서 모든 배포 목록을 검색합니다.

cloudtrail_DescribeTrails

AWS 계정의 현재 리전에 연결된 하나 이상의 추적에 대한 설정 스냅샷을 수집합니다.
cloudtrail_ListTrails AWS 계정에 있는 추적 목록을 검색합니다.

cloudwatch_DescribeAlarms

AWS 계정에서 사용된 경보의 구성 스냅샷을 수집합니다.
config_DescribeConfigRules AWS Config 규칙에 대한 세부 정보를 검색합니다.
config_DescribeDeliveryChannels AWS 계정에서 전송 채널의 구성 스냅샷을 수집합니다.
directconnect_DescribeDirectConnectGateways 모든 AWS Direct Connect 게이트웨이 목록을 검색합니다.
directconnect_DescribeVirtualGateways AWS 계정에서 소유한 가상 프라이빗 게이트웨이의 목록을 검색합니다.
docdb_DescribeCertificates AWS 계정에 대한 인증서 목록을 수집합니다.
docdb_DescribeDBClusterParameterGroups AWS 계정에 대한 DBCLusterParameterGroup 설명 목록을 수집합니다.
docdb_DescribeDBInstances AWS 계정에서 프로비저닝된 Amazon DynamoDB 인스턴스에 대한 정보를 수집합니다.

cloudwatch_DescribeAlarms

AWS 계정에서 경보에 대한 정보를 수집합니다.

cloudtrail_DescribeTrails

AWS 계정에 연결된 하나 이상의 추적에 대한 설정 스냅샷을 수집합니다.

dynamodb_DescribeTable

AWS 계정에서 DynamoDB 테이블의 구성 스냅샷을 수집합니다.

이 API를 데이터 소스로 사용하는 경우, 특정 DynamoDB 테이블의 이름을 제공할 필요가 없습니다. 대신, Audit Manager는 이 ListTables 작업을 이용하여 모든 테이블을 나열합니다. 그런 다음, Audit Manager는 나열된 모든 테이블에 대해 해당 리소스에 대한 증거를 생성하기 위해 DescribeTable 작업을 수행합니다.

dynamodb_ListBackups AWS 계정에 연결된 DynamoDB 백업 목록을 검색합니다.

dynamodb_ListTables

AWS 계정 및 현재 엔드포인트에 연결된 모든 테이블 이름 목록을 검색합니다.
ec2_DescribeAddresses 탄력적 IP 주소의 스냅샷을 수집합니다.
ec2_DescribeCustomerGateways VPN 고객 게이트웨이의 스냅샷을 수집합니다.
ec2_DescribeEgressOnlyInternetGateways 송신 전용 인터넷 게이트웨이의 스냅샷을 수집합니다.

ec2_DescribeFlowLogs

흐름 로그의 스냅샷을 수집합니다.

ec2_DescribeInstances

인스턴스의 스냅샷을 수집합니다.
ec2_DescribeInternetGateways 인터넷 게이트웨이의 스냅샷을 수집합니다.
ec2_DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociations AWS 계정의 로컬 게이트웨이 라우팅 테이블과 가상 인터페이스 그룹 간 연결에 대한 설명을 수집합니다.
ec2_DescribeLocalGateways 로컬 게이트웨이의 스냅샷을 수집합니다.
ec2_DescribeLocalGatewayVirtualInterfaces 로컬 게이트웨이 가상 인터페이스의 스냅샷을 수집합니다.
ec2_DescribeNatGateways NAT 게이트웨이의 스냅샷을 수집합니다.

ec2_DescribeNetworkAcls

네트워크 ACL의 스냅샷을 수집합니다.

ec2_DescribeRouteTables

라우팅 테이블의 스냅샷을 수집합니다.

ec2_DescribeSecurityGroups

보안 그룹의 스냅샷을 수집합니다.
ec2_DescribeSecurityGroupRules 하나 이상의 보안 그룹 규칙의 스냅샷을 수집합니다.
ec2_DescribeTransitGateways 전송 게이트웨이의 스냅샷을 수집합니다.

ec2_DescribeVolumes

VPC 엔드포인트의 스냅샷을 수집합니다.

ec2_DescribeVpcs

VPC의 스냅샷을 수집합니다.

ec2_DescribeVpcEndpoints

VPC 엔드포인트의 스냅샷을 수집합니다.
ec2_DescribeVpcEndpointConnections 수락 대기 중인 엔드포인트를 포함하여 VPC 엔드포인트 서비스에 대한 VPC 엔드포인트 연결의 스냅샷을 수집합니다.
ec2_DescribeVpcEndpointServiceConfigurations AWS 계정에서 VPC 엔드포인트 서비스 구성의 스냅샷을 수집합니다.
ec2_DescribeVpcPeeringConnections VPN 연결의 스냅샷을 수집합니다.
ec2_DescribeVpnConnections VPN 연결의 스냅샷을 수집합니다.
ec2_DescribeVpnGateways 가상 프라이빗 게이트웨이의 스냅샷을 수집합니다.
ec2_GetEbsDefaultKmsKeyId 현재 리전에서 AWS 계정에 대한 EBS 암호화의 기본 AWS KMS key 스냅샷을 수집합니다.
ec2_GetEbsEncryptionByDefault 현재 리전의 AWS 계정에서 기본적으로 EBS 암호화의 활성화 여부를 설명합니다.
ecs_DescribeClusters ECS 클러스터의 스냅샷을 수집합니다.
eks_DescribeAddonVersions 추가 기능 버전의 스냅샷을 수집합니다.
elasticache_DescribeCacheClusters 프로비저닝된 클러스터의 스냅샷을 수집합니다.
elasticache_DescribeServiceUpdates Amazon ElastiCache의 서비스 업데이트 스냅샷을 수집합니다.
elasticfilesystem_DescribeAccessPoints AWS 계정에서 Amazon EFS 액세스 포인트의 스냅샷을 수집합니다.

elasticfilesystem_DescribeFileSystems

Amazon EFS 파일 시스템의 스냅샷을 수집합니다.
elasticloadbalancingv2_DescribeLoadBalancers

AWS 계정에서 로드 밸런서의 스냅샷을 수집합니다.

elasticloadbalancingv2_DescribeSSLPolicies SSL 협상에 사용하는 정책의 스냅샷을 수집합니다.
elasticloadbalancingv2_DescribeTargetGroups ELB 대상 그룹의 스냅샷을 수집합니다.
elasticmapreduce_ListSecurityConfigurations 생성 날짜 및 시간, 이름과 함께 AWS 계정에 표시되는 보안 구성 목록을 검색합니다.
events_ListConnections AWS 계정에서 Amazon EventBridge 연결 목록을 검색합니다.
events_ListEventBuses 기본 이벤트 버스, 사용자 지정 이벤트 버스, 파트너 이벤트 버스를 포함하여 AWS 계정의 모든 Amazon EventBridge 이벤트 버스 목록을 검색합니다.
events_ListEventSources AWS 계정에서 공유하는 파트너 이벤트 소스 목록을 검색합니다.
events_ListRules Amazon EventBridge 규칙 목록을 검색합니다.
firehose_ListDeliveryStreams 전송 스트림 목록을 검색합니다.
fsx_DescribeFileSystems AWS 계정에서 소유한 파일 시스템의 스냅샷을 수집합니다.
guardduty_ListDetectors

Amazon GuardDuty 감지기 리소스에 대한 detectorIds 목록을 검색합니다.

iam_GenerateCredentialReport

AWS 계정의 보안 인증 정보 보고서를 생성합니다.

iam_GetAccountPasswordPolicy

AWS 계정에 대한 암호 정책의 스냅샷을 수집합니다.

iam_GetAccountSummary

AWS 계정에서 IAM 엔터티 사용 및 IAM 할당량의 스냅샷을 수집합니다.

iam_ListGroups

AWS 계정에서 사용 가능한 경로 접두사에 연결된 IAM 그룹 목록을 검색합니다.
iam_ListOpenIDConnectProviders AWS 계정에 정의된 IAM OpenID Connect(OpenID) 공급자 리소스 객체 목록을 검색합니다.

iam_ListPolicies

고객이 정의한 관리형 정책 및 모든 AWS 관리형 정책을 포함하여 AWS 계정에서 사용 가능한 모든 관리형 정책 목록을 검색합니다.

iam_ListRoles

AWS 계정에서 사용 가능한 경로 접두사에 연결된 IAM 역할 목록을 검색합니다.
iam_ListSAMLProviders AWS 계정에서 IAM에 정의된 SAML 공급자 리소스 객체 목록을 검색합니다.

iam_ListUsers

AWS 계정에서 IAM 사용자 목록을 검색합니다.
iam_ListVirtualMFADevices AWS 계정에 정의된 가상 MFA 디바이스 목록을 검색합니다.
kafka_ListClusters AWS 계정에서 Amazon MSK 클러스터 목록을 검색합니다.
kafka_ListKafkaVersions AWS 계정에서 Apache Kafka 버전 객체 목록을 검색합니다.
kinesis_ListStreams Kinesis 데이터 스트림 목록을 검색합니다.

kms_GetKeyPolicy

Audit Manager는 이 API를 사용하여 AWS 계정에서 AWS KMS keys에 대한 키 정책의 스냅샷을 수집합니다.

이 API를 데이터 소스로 사용하는 경우, 특정 AWS KMS key의 이름을 제공할 필요가 없습니다. 대신, Audit Manager는 이 ListKeys 작업을 이용하여 모든 KMS 키를 나열합니다. 그런 다음, Audit Manager는 나열된 모든 KMS key에 대해 해당 리소스에 대한 증거를 생성하기 위해 GetKeyPolicy 작업을 수행합니다.

kms_GetKeyRotationStatus

Audit Manager는 이 API를 사용하여 AWS 계정에서 AWS KMS keys에 대해 자동 교체 기능의 활성화 여부에 대한 스냅샷을 수집합니다.

이 API를 데이터 소스로 사용하는 경우, 특정 AWS KMS key의 이름을 제공할 필요가 없습니다. 대신, Audit Manager는 이 ListKeys 작업을 이용하여 모든 KMS 키를 나열합니다. 그런 다음, Audit Manager는 나열된 모든 KMS key에 대해 해당 리소스에 대한 증거를 생성하기 위해 GetKeyRotationStatus 작업을 수행합니다.

kms_ListKeys AWS 계정에서 AWS KMS keys 목록을 검색합니다.
lambda_ListFunctions 각 버전별 구성과 함께 AWS 계정에서 Lambda 함수 목록을 검색합니다.
rds_DescribeDBClusters AWS 계정에 있는 기존 Amazon Aurora DB 클러스터 및 다중 AZ DB 클러스터의 스냅샷을 수집합니다.

rds_DescribeDBInstances

AWS 계정에서 프로비저닝된 RDS 인스턴스의 스냅샷을 수집합니다.
rds_DescribeDbInstanceAutomatedBackups AWS 계정에서 현재 인스턴스와 삭제된 인스턴스 모두에 대한 백업 스냅샷을 수집합니다.
rds_DescribeDbSecurityGroups AWS 계정에서 DBSecurityGroups의 스냅샷을 수집합니다.

redshift_DescribeClusters

AWS 계정에서 프로비저닝된 Amazon Redshift 클러스터의 스냅샷을 수집합니다.

s3_GetBucketEncryption

S3 버킷의 기본 암호화 구성을 보여주는 스냅샷을 수집합니다.

이 API를 데이터 소스로 사용하는 경우, 특정 S3 버킷의 이름을 제공할 필요가 없습니다. 대신, Audit Manager는 ListBuckets 작업을 이용하여 모든 버킷을 나열합니다. 그런 다음, 나열된 모든 버킷에 대해 Audit Manager는 해당 리소스에 대한 증거를 생성하기 위해 GetBucketEncryption 작업을 수행합니다.

Audit Manager는 평가와 동일한 AWS 리전에서 생성된 버킷의 암호화 상태만 제공할 수 있습니다. 여러 AWS 리전의 S3 버킷에 대한 S3 버킷의 암호화 상태를 모두 확인해야 하는 경우, S3 버킷이 있는 각 AWS 리전에 평가를 생성하는 것이 좋습니다.

s3_ListBuckets

AWS 계정에서 S3 버킷 목록을 검색합니다.
sagemaker_ListAlgorithms AWS 계정에서 기계 학습 알고리즘 목록을 검색합니다.
sagemaker_ListDomains AWS 계정에서 도메인 목록을 검색합니다.
sagemaker_ListEndpoints AWS 계정에서 엔드포인트 목록을 검색합니다.
sagemaker_ListEndpointConfigs AWS 계정에서 엔드포인트 구성 목록을 검색합니다.
sagemaker_ListFlowDefinitions AWS 계정에서 흐름 정의 목록을 검색합니다.
sagemaker_ListHumanTaskUis AWS 계정에서 인적 태스크 인터페이스 목록을 검색합니다.
sagemaker_ListLabelingJobs AWS 계정에서 레이블 지정 작업 목록을 검색합니다.
sagemaker_ListModels AWS 계정에서 모델 목록을 검색합니다.
sagemaker_ListModelBiasJobDefinitions AWS 계정에서 모델 바이어스 작업 정의 목록을 검색합니다.
sagemaker_ListModelCards AWS 계정에서 모델 카드 목록을 검색합니다.
sagemaker_ListModelQualityJobDefinitions AWS 계정에서 모델 품질 모니터링 작업 정의 목록을 검색합니다.
sagemaker_ListMonitoringAlerts 지정된 모니터링 일정에 대한 알림 목록을 검색합니다.
sagemaker_ListMonitoringSchedules AWS 계정에서 모든 모니터링 일정 목록을 검색합니다.
sagemaker_ListTrainingJobs AWS 계정에서 훈련 작업 목록을 검색합니다.
sagemaker_ListUserProfiles AWS 계정에서 사용자 프로필 목록을 검색합니다.
secretsmanager_ListSecrets 삭제 대상으로 표시된 보안 암호를 제외하고 AWS 계정에 저장된 보안 암호 목록을 검색합니다.
sns_ListTopics AWS 계정에서 SNS 주제 목록을 검색합니다.
sqs_ListQueues AWS 계정에서 SQS 대기열 목록을 검색합니다.
waf-regional_ListWebAcls AWS 계정의 WebACLSummary 객체 목록을 검색합니다.
waf-regional_ListRules AWS 계정의 RuleSummary 객체 목록을 검색합니다.
waf_ListRuleGroups AWS 계정의 규칙 그룹에 대한 RuleGroupSummary 객체 목록을 검색합니다.
waf_ListRules AWS 계정의 RuleSummary 객체 목록을 검색합니다.
waf_ListWebAcls AWS 계정의 WebACLSummary 객체 목록을 검색합니다.

AWS License Manager 표준 프레임워크에서 사용하는 API 직접 호출

AWS License Manager 표준 프레임워크에서, Audit Manager는 증거 수집을 위해 GetLicenseManagerSummary이라는 사용자 지정 작업을 이용합니다. 이 작업에서는 다음 세 가지 라이선스 관리자 API를 직접 호출합니다.

그런 다음, 보여준 데이터는 증거로 변환되어 평가의 관련 컨트롤 항목에 첨부됩니다.

라이선스가 부여된 두 개의 제품(SQL Service 2017Oracle Database Enterprise Edition)을 사용하고 있다고 가정해 보겠습니다. 먼저 GetLicenseManagerSummary 작업에서 ListLicenseConfigurations API를 호출하면, 이 API는 사용자 계정의 라이선스 구성 세부 정보를 제공합니다. 그런 다음 ListUsageForLicenseConfigurationListAssociationsForLicenseConfiguration을 호출하여 각 라이선스 구성에 대한 추가 컨텍스트 데이터를 추가합니다. 마지막으로 라이선스 구성 데이터를 증거로 변환하여 프레임워크의 각 컨트롤에 첨부합니다 (4.5 - SQL Server 2017 고객 관리형 라이선스3.0.4 - Oracle Database Enterprise Edition 고객 관리형 라이선스).

프레임워크의 컨트롤 범위에 포함되지 않는 라이선스 제품을 사용하는 경우, 해당 라이선스 구성 데이터가 다음 컨트롤의 증거로 첨부됩니다. 5.0 - 기타 라이선스에 대한 고객 관리형 라이선스

추가 리소스