

# 메타데이터 테이블 구성에 대한 권한 설정
<a name="metadata-tables-permissions"></a>

메타데이터 테이블 구성을 만들려면 메타데이터 테이블 구성을 만들고 관리하며 메타데이터 테이블이 저장되는 메타데이터 테이블과 테이블 버킷을 만들고 관리하는 데 필요한 AWS Identity and Access Management(IAM) 권한이 있어야 합니다.

메타데이터 테이블 구성을 생성하고 관리하려면 다음 권한이 있어야 합니다.
+ `s3:CreateBucketMetadataTableConfiguration` - 이 권한을 사용하면 범용 버킷에 대한 메타데이터 테이블 구성을 생성할 수 있습니다. 메타데이터 테이블 구성을 만들려면 다음 섹션에 설명된 대로 S3 테이블 권한을 포함한 추가 권한이 필요합니다. 필요한 권한 목록의 요약은 [버킷 작업 및 권한](using-with-s3-policy-actions.md#using-with-s3-policy-actions-related-to-buckets) 섹션을 참조하세요.
+ `s3:GetBucketMetadataTableConfiguration` - 이 권한을 사용하면 메타데이터 테이블 구성에 대한 정보를 검색할 수 있습니다.
+ `s3:DeleteBucketMetadataTableConfiguration` - 이 권한을 사용하면 메타데이터 테이블 구성을 삭제할 수 있습니다.
+ `s3:UpdateBucketMetadataJournalTableConfiguration` - 이 권한을 사용하면 저널 테이블 구성을 업데이트하여 저널 테이블 레코드를 만료시킬 수 있습니다.
+ `s3:UpdateBucketMetadataInventoryTableConfiguration` - 이 권한을 사용하면 인벤토리 테이블 구성을 업데이트하여 인벤토리 테이블을 활성화하거나 비활성화할 수 있습니다. 인벤토리 테이블 구성을 업데이트하려면 S3 테이블 권한을 포함한 추가 권한이 필요합니다. 필요한 권한 목록은 [버킷 작업 및 권한](using-with-s3-policy-actions.md#using-with-s3-policy-actions-related-to-buckets) 섹션을 참조하세요.
**참고**  
`s3:CreateBucketMetadataTableConfiguration`, `s3:GetBucketMetadataTableConfiguration` 및 `s3:DeleteBucketMetadataTableConfiguration` 권한은 V1 및 V2 S3 Metadata 구성 모두에 사용됩니다. V2의 경우 해당 API 작업의 이름은 `CreateBucketMetadataConfiguration`, `GetBucketMetadataConfiguration` 및 `DeleteBucketMetadataConfiguration`입니다.

테이블 및 테이블 버킷을 생성하고 작업하려면 특정 `s3tables` 권한이 있어야 합니다. 메타데이터 테이블 구성을 생성하려면 최소한 다음 `s3tables` 권한이 있어야 합니다.
+ `s3tables:CreateTableBucket` - 이 권한을 사용하면 AWS 관리형 테이블 버킷을 만들 수 있습니다. 계정 및 동일한 리전의 모든 메타데이터 테이블 구성은 `aws-s3`라는 단일 AWS 관리형 테이블 버킷에 저장됩니다. 자세한 내용은 [메타데이터 테이블 작동 방식](metadata-tables-overview.md#metadata-tables-how-they-work) 및 [Working with AWS managed table buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-aws-managed-buckets.html)를 참조하세요.
+ `s3tables:CreateNamespace` - 이 권한을 사용하면 테이블 버킷에 네임스페이스를 생성할 수 있습니다. 메타데이터 테이블은 보통 `b_general_purpose_bucket_name` 네임스페이스를 사용합니다. 메타데이터 테이블 네임스페이스에 대한 자세한 내용은 [메타데이터 테이블 작동 방식](metadata-tables-overview.md#metadata-tables-how-they-work) 섹션을 참조하세요.
+ `s3tables:CreateTable` - 이 권한을 사용하면 메타데이터 테이블을 만들 수 있습니다.
+ `s3tables:GetTable` - 이 권한을 사용하면 메타데이터 테이블에 대한 정보를 검색할 수 있습니다.
+ `s3tables:PutTablePolicy` - 이 권한을 사용하면 메타데이터 테이블 정책을 추가하거나 업데이트할 수 있습니다.
+ `s3tables:PutTableEncryption` - 이 권한을 사용하면 메타데이터 테이블에 대한 서버 측 암호화를 설정할 수 있습니다. AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)로 메타데이터 테이블을 암호화하려면 추가 권한이 필요합니다. 자세한 내용은 [Permissions for SSE-KMS](#metadata-kms-permissions)를 참조하세요.
+ `kms:DescribeKey` - 이 권한을 사용하면 KMS 키에 대한 정보를 검색할 수 있습니다.
+ `s3tables:PutTableBucketPolicy` - 이 권한을 사용하면 새 테이블 버킷 정책을 생성하거나 업데이트할 수 있습니다.

모든 테이블 및 테이블 버킷 권한에 대한 자세한 내용은 [Access management for S3 Tables](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.html)을 참조하세요.

**중요**  
또한 메타데이터 테이블을 쿼리할 수 있도록 테이블 버킷을 AWS 분석 서비스와 통합하려면 추가 권한이 필요합니다. 자세한 내용은 [Integrating Amazon S3 Tables with AWS analytics services](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-aws.html)를 참조하세요.

**SSE-KMS에 대한 권한**  
AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)로 메타데이터 테이블을 암호화하려면 추가 권한이 있어야 합니다.

1. 사용자 또는 AWS Identity and Access Management(IAM) 역할에 다음 권한이 필요합니다. IAM 콘솔([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/))을 사용해 이러한 권한을 부여할 수 있습니다.

   1. 테이블 암호화 구성: `s3tables:PutTableEncryption`

   1. 사용된 AWS KMS 키의 `kms:DescribeKey`

1. KMS 키에 대한 리소스 정책에는 다음 권한이 필요합니다. AWS KMS 콘솔([https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms))을 사용하여 이러한 권한을 부여할 수 있습니다.

   1. `metadata.s3.amazonaws.com` 및 `maintenance.s3tables.amazonaws.com`에 `kms:GenerateDataKey` 권한 부여

   1. `metadata.s3.amazonaws.com` 및 `maintenance.s3tables.amazonaws.com`에 `kms:Decrypt` 권한 부여

   1. AWS 위탁자 간접 호출에 대한 `kms:DescribeKey` 권한

이러한 권한 외에도 테이블을 암호화하는 데 사용되는 고객 관리형 KMS 키가 여전히 존재하고 활성 상태이며 범용 버킷과 동일한 리전에 있는지 확인합니다.

**예제 정책**  
메타데이터 테이블 및 테이블 버킷을 생성하고 작업하려면 다음 예시 정책을 사용할 수 있습니다. 이 정책에서는 메타데이터 테이블 구성을 적용하는 범용 버킷을 `amzn-s3-demo-bucket`이라고 합니다. 이 정책을 사용하려면 `user input placeholders`를 사용자의 정보로 대체합니다.

메타데이터 테이블 구성을 만들 때 메타데이터 테이블이 AWS 관리형 테이블 버킷에 저장됩니다. 계정 및 동일한 리전의 모든 메타데이터 테이블 구성은 `aws-s3`라는 단일 AWS 관리형 테이블 버킷에 저장됩니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "PermissionsToWorkWithMetadataTables",
            "Effect": "Allow",
            "Action": [
                "s3:CreateBucketMetadataTableConfiguration",
                "s3:GetBucketMetadataTableConfiguration",
                "s3:DeleteBucketMetadataTableConfiguration",
                "s3:UpdateBucketMetadataJournalTableConfiguration",
                "s3:UpdateBucketMetadataInventoryTableConfiguration",
                "s3tables:*",
                "kms:DescribeKey"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3",
                "arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3/table/*"
            ]
        }
    ]
}
```

------

메타데이터 테이블을 쿼리하려면 다음 예제 정책을 사용할 수 있습니다. 메타데이터 테이블이 SSE-KMS로 암호화된 경우 표시된 대로 `kms:Decrypt` 권한이 필요합니다. 이 정책을 사용하려면 `user input placeholders`를 사용자의 정보로 대체합니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "PermissionsToQueryMetadataTables",
            "Effect": "Allow",
            "Action": [
                "s3tables:GetTable",
                "s3tables:GetTableData",
                "s3tables:GetTableMetadataLocation",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3",
                "arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3/table/*"
            ]
        }
    ]
}
```

------