Amazon S3: 특정 S3 버킷으로 관리 범위 제한하기
Amazon S3: 특정 S3 버킷으로 관리 범위 제한하기
이 예시는 Amazon S3 버킷 관리를 해당 버킷으로만 제한하는 자격 증명 기반 정책을 만드는 방법을 보여드려요. 이 정책은 모든 Amazon S3 액션을 수행할 권한을 부여하지만, Amazon S3를 제외한 모든 AWS 서비스에 대한 액세스는 거부해요. 아래 예시를 참고하세요.
이 정책에 따르면 S3 버킷이나 S3 객체 리소스에서 수행할 수 있는 Amazon S3 액션에만 접근할 수 있어요.
출처: 문서
본문
이 정책은 AWS API나 AWS CLI에서 프로그래매틱하게 작업을 완료하는 데 필요한 권한을 부여해요. 예시 정책에서 이탤릭체로 표시된 자리표시자 텍스트를 본인 정보로 바꾼 뒤, create a policy 또는 edit a policy의 지침을 따라 적용하면 돼요.
이 정책을 이 정책이 거부하는 액션을 허용하는 다른 정책(예: AmazonS3FullAccess 또는 AmazonEC2FullAccess AWS 관리형 정책)과 함께 사용하면 액세스가 거부돼요. 명시적 거부 스테이트먼트가 허용 스테이트먼트보다 우선하기 때문이에요. 자세한 내용은 How AWS enforcement code logic evaluates requests to allow or deny access 문서를 참고하세요.
경고
NotAction과 NotResource는 주의해서 사용해야 하는 고급 정책 요소예요. 이 정책은 Amazon S3를 제외한 모든 AWS 서비스에 대한 액세스를 거부해요. 이 정책을 사용자에게 연결하면 다른 서비스에 권한을 부여하는 다른 정책은 무시되고 액세스가 거부돼요.
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::bucket-name",
"arn:aws:s3:::bucket-name/*"
]
},
{
"Effect": "Deny",
"NotAction": "s3:*",
"NotResource": [
"arn:aws:s3:::bucket-name",
"arn:aws:s3:::bucket-name/*"
]
}
]
}