

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

# AWS Config 전송 채널에 대한 Amazon S3 버킷에 대한 권한
<a name="s3-bucket-policy"></a>

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

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

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

**Topics**
+ [IAM 역할 사용 시](#required-permissions-in-another-account)
+ [서비스 연결 역할 사용 시](#required-permissions-using-servicelinkedrole)
+ [AWS Config 액세스 권한 부여](#granting-access-in-another-account)
+ [교차 계정 전송](#required-permissions-cross-account)

## IAM 역할을 사용할 때 Amazon S3 버킷에 필요한 권한
<a name="required-permissions-in-another-account"></a>

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

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

**최소 권한**  
Amazon S3 `HeadBucket` API에는 `s3:ListBucket` 작업이 필요합니다.

## 서비스 연결 역할을 사용할 때 Amazon S3 버킷에 필요한 권한
<a name="required-permissions-using-servicelinkedrole"></a>

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

## Amazon S3 버킷에 대한 AWS Config 액세스 권한 부여
<a name="granting-access-in-another-account"></a>

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

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

1. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)에서 S3 콘솔을 엽니다.

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

1. **권한**을 선택합니다.

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

1. 다음 정책을 **버킷 정책 편집기** 창으로 복사합니다.
**보안 모범 사례**  
`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"
           }
         }
       }
     ]
   }
   ```

------

1. 버킷 정책에서 다음 값을 바꿉니다.
   + *amzn-s3-demo-bucket* - AWS Config 가 구성 기록 및 스냅샷을 제공하는 Amazon S3 버킷의 이름입니다.
   + *[선택 사항] prefix* - Amazon S3 버킷 안에 폴더 같은 조직을 만들기 위해 객체 키에 선택적으로 추가할 수 있습니다.
   + *sourceAccountID* - AWS Config 가 구성 기록 및 스냅샷을 전송하는 계정의 ID입니다.

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

`AWS:SourceAccount` 조건은 AWS Config 작업을 지정된 로 제한합니다 AWS 계정. 단일 S3 버킷에 전달하는 조직 내 다중 계정 구성의 경우 서비스 연결 역할 대신 AWS Organizations 조건 키가 있는 IAM 역할을 사용합니다. 예를 들어 `AWS:PrincipalOrgID`입니다. 자세한 내용은 *AWS Organizations 사용 설명서*의 [조직 내 액세스 권한 관리](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions_overview.html) 섹션을 참조하세요.

`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 버킷에 필요한 권한
<a name="required-permissions-cross-account"></a>

 AWS Config 가 구성 기록과 스냅샷을 다른 계정의 Amazon S3 버킷에 전송하도록 구성된 경우(교차 계정 설정), 전송 채널에 지정된 구성 레코더와 S3 버킷이 다른 경우 AWS 계정다음 권한이 필요합니다.
+ 구성 레코더에 할당하는 IAM 역할에는 `s3:ListBucket` 작업을 수행할 수 있는 명시적 권한이 필요합니다. 이는가이 IAM 역할로 Amazon S3 [HeadBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_RESTBucketHEAD.html) 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",
}
```