디렉터리 버킷용 IAM ID 기반 정책
디렉터리 버킷용 IAM ID 기반 정책 (IAM identity-based policies for directory buckets)
디렉터리 버킷을 만들기 전에 AWS Identity and Access Management(IAM) 역할 또는 사용자에게 필요한 권한을 부여해야 해요. 아래 예제 정책은 CreateSession API 작업(Zonal 엔드포인트[객체 수준] API 작업에서 사용)과 모든 Regional 엔드포인트(버킷 수준) API 작업에 대한 접근을 허용해요. 이 정책은 CreateSession API 작업을 모든 디렉터리 버킷에서 사용하도록 허용하지만, Regional 엔드포인트 API 작업은 지정된 디렉터리 버킷에서만 사용하도록 허용해요. 이 예제 정책을 사용하려면 사용자 입력 자리표시자를 직접 채워 넣어야 해요.
출처: 문서
본문
참고
모범 사례로서 작업 수행에 필요한 권한만 부여하세요(최소 권한). 이 정책에서 사용 사례에 필요하지 않은 작업은 제거하세요. S3 Express One Zone 작업의 전체 목록은 Service Authorization Reference의 S3 Express One Zone 작업, 리소스, 조건 키 를 참고하세요.
예제 — 디렉터리 버킷 접근용 ID 기반 정책
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowRegionalEndpointAPIs",
"Effect": "Allow",
"Action": [
"s3express:CreateBucket",
"s3express:DeleteBucket",
"s3express:DeleteBucketPolicy",
"s3express:GetBucketPolicy",
"s3express:PutBucketPolicy",
"s3express:GetEncryptionConfiguration",
"s3express:PutEncryptionConfiguration",
"s3express:GetLifecycleConfiguration",
"s3express:PutLifecycleConfiguration",
"s3express:GetInventoryConfiguration",
"s3express:PutInventoryConfiguration",
"s3express:GetMetricsConfiguration",
"s3express:PutMetricsConfiguration"
],
"Resource": "arn:aws:s3express:region:account-id:bucket/bucket-base-name--zone-id--x-s3"
},
{
"Sid": "AllowListAndCreateSession",
"Effect": "Allow",
"Action": [
"s3express:ListAllMyDirectoryBuckets",
"s3express:CreateSession"
],
"Resource": "*"
}
]
}
이 정책에는 두 개의 문(statement)이 있어요.
- 첫 번째 문은 특정 디렉터리 버킷의 Regional 엔드포인트(버킷 수준) API 작업에 대한 권한을 부여해요. 사용 사례에 필요하지 않은 작업은 제거할 수 있어요.
- 두 번째 문은
ListAllMyDirectoryBuckets와CreateSession에 대한 권한을 부여해요. 이 작업들은 리소스 수준 권한을 지원하지 않으므로Resource가"*"이에요.CreateSession권한은PutObject,GetObject,DeleteObject같은 모든 Zonal 엔드포인트(객체 수준) API 작업을 활성화해요.