AWS Config 전송 채널에 대한 Amazon S3 버킷에 대한 권한 - AWS Config

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

AWS Config 전송 채널에 대한 Amazon S3 버킷에 대한 권한

중요

이 페이지에서는 AWS Config 전송 채널에 대한 Amazon S3 버킷을 설정합니다. 이 페이지는 AWS Config 구성 레코더가 기록할 수 있는 AWS::S3::Bucket 리소스 유형에 대한 것이 아닙니다.

기본적으로 Amazon S3 버킷 및 객체는 프라이빗입니다. 버킷 AWS 계정 (리소스 소유자)을 생성한 에만 액세스 권한이 있습니다. 리소스 소유자는 액세스 정책을 생성하여 다른 리소스 및 사용자에게 액세스 권한을 부여할 수 있습니다.

가 AWS Config 자동으로 S3 버킷을 생성하면 필요한 권한이 추가됩니다. 그러나 기존 S3 버킷을 지정하는 경우 이러한 권한을 수동으로 추가해야 합니다.

IAM 역할을 사용할 때 Amazon S3 버킷에 필요한 권한

AWS Config 는 구성 레코더에 할당한 IAM 역할을 사용하여 계정의 S3 버킷에 구성 기록 및 스냅샷을 전달합니다. 교차 계정 전송의 경우 AWS Config 먼저 할당된 IAM 역할을 사용하려고 시도합니다. 버킷 정책이 IAM 역할에 WRITE 액세스 권한을 부여하지 않으면 AWS Config 는 config.amazonaws.com 서비스 위탁자를 사용합니다. 버킷 정책은 전송을 완료하기 위해 config.amazonaws.com.rproxy.govskope.caWRITE 액세스 권한을 부여해야 합니다. 전송에 성공하면는 교차 계정 S3 버킷에 전달하는 모든 객체의 소유권을 AWS Config 유지합니다.

AWS Config 는 구성 레코더에 할당한 IAM 역할로 Amazon S3 HeadBucket API를 호출하여 S3 버킷의 존재 여부와 위치를 확인합니다. 에서 확인하는 AWS Config 데 필요한 권한이 없는 경우 AWS CloudTrail 로그에 AccessDenied 오류가 표시됩니다. 그러나 AWS Config 는에 S3 버킷이 존재하는지 여부와 그 위치를 확인하는 데 필요한 권한이 없더라도 구성 기록과 스냅샷을 AWS Config 전달할 수 있습니다.

최소 권한

Amazon S3 HeadBucket API에는 s3:ListBucket 작업이 필요합니다.

서비스 연결 역할을 사용할 때 Amazon S3 버킷에 필요한 권한

AWS Config 서비스 연결 역할에는 Amazon S3 버킷에 객체를 넣을 수 있는 권한이 없습니다. 서비스 연결 역할을 AWS Config 사용하여를 설정한 경우 AWS Config 는 config.amazonaws.com 서비스 보안 주체를 사용하여 구성 기록 및 스냅샷을 제공합니다. 계정 또는 교차 계정 대상의 S3 버킷 정책에는 AWS Config 서비스 보안 주체가 객체를 작성할 수 있는 권한이 포함되어야 합니다.

Amazon S3 버킷에 대한 AWS Config 액세스 권한 부여

다음 단계를 완료하면가 Amazon S3 버킷 AWS Config 에 구성 기록 및 스냅샷을 전달할 수 있습니다.

  1. S3 버킷이 있는 계정을 AWS Management Console 사용하여에 로그인합니다.

  2. https://console.aws.amazon.com/s3/에서 S3 콘솔을 엽니다.

  3. 구성 항목을 전달하는 데 사용할 버킷 AWS Config 을 선택한 다음 속성을 선택합니다.

  4. 권한을 선택합니다.

  5. [Edit Bucket Policy]를 선택합니다.

  6. 다음 정책을 버킷 정책 편집기 창으로 복사합니다.

    보안 모범 사례

    AWS:SourceAccount 조건으로 버킷 정책의 액세스를 제한하는 것이 좋습니다. 이렇게 하면 AWS Config 가 예상 사용자만을 대신하여 액세스 권한을 부여받습니다.

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "AWSConfigBucketPermissionsCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketExistenceCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketDelivery", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/[optional] prefix/AWSLogs/sourceAccountID/Config/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "AWS:SourceAccount": "sourceAccountID" } } } ] }
  7. 버킷 정책에서 다음 값을 바꿉니다.

    • amzn-s3-demo-bucket - AWS Config 가 구성 기록 및 스냅샷을 제공하는 Amazon S3 버킷의 이름입니다.

    • [선택 사항] prefix - Amazon S3 버킷 안에 폴더 같은 조직을 만들기 위해 객체 키에 선택적으로 추가할 수 있습니다.

    • sourceAccountID - AWS Config 가 구성 기록 및 스냅샷을 전송하는 계정의 ID입니다.

  8. 저장을 선택한 후 닫기를 선택합니다.

AWS:SourceAccount 조건은 AWS Config 작업을 지정으로 제한합니다 AWS 계정. 단일 S3 버킷에 전달하는 조직 내 다중 계정 구성의 경우 서비스 연결 역할 대신 AWS Organizations 조건 키가 있는 IAM 역할을 사용합니다. 예를 들어 AWS:PrincipalOrgID입니다. 자세한 내용은 AWS Organizations 사용 설명서조직 내 액세스 권한 관리 섹션을 참조하세요.

AWS:SourceArn 조건은 지정된 전송 채널로 AWS Config 작업을 제한합니다. AWS:SourceArn 형식은 arn:aws:config:sourceRegion:123456789012입니다.

예를 들어 계정 123456789012의 미국 동부(버지니아 북부) 리전에 있는 전송 채널에 대한 S3 버킷 액세스를 제한하려면 다음 조건을 추가합니다.

"ArnLike": {"AWS:SourceArn": "arn:aws:config:us-east-1:123456789012:"}

교차 계정을 전송할 때 Amazon S3 버킷에 필요한 권한

AWS Config 가 구성 기록과 스냅샷을 다른 계정(교차 계정 설정)의 Amazon S3 버킷으로 전송하도록 구성된 경우 AWS 계정, 전송 채널에 지정된 구성 레코더와 S3 버킷이 다른 경우 다음 권한이 필요합니다.

  • 구성 레코더에 할당하는 IAM 역할에는 s3:ListBucket 작업을 수행할 수 있는 명시적 권한이 필요합니다. 이는가이 IAM 역할로 Amazon S3 HeadBucket API를 AWS Config 호출하여 버킷 위치를 결정하기 때문입니다.

  • S3 버킷 정책에는 구성 레코더에 할당된 IAM 역할에 대한 권한이 포함되어야 합니다.

다음은 버킷 정책 구성의 예제입니다.

{ "Sid": "AWSConfigBucketExistenceCheck", "Effect": "Allow", "Principal": { "AWS": "IAM Role-Arn assigned to the configuration recorder" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket", }