Amazon S3: IAM 사용자가 본인 S3 홈 디렉터리에 접근하게 허용하기
Amazon S3: IAM 사용자가 본인 S3 홈 디렉터리에 접근하게 허용하기 (프로그래매틱 및 콘솔)
이 예시는 IAM 사용자가 S3에서 본인 홈 디렉터리 버킷 객체에 접근할 수 있게 허용하는 자격 증명 기반 정책을 만드는 방법을 보여드려요. 홈 디렉터리는 home 폴더와 개별 사용자용 폴더를 포함하는 버킷이에요. 이 정책은 프로그래매틱 액세스와 콘솔 액세스 모두에 대한 권한을 정의해요.
출처: 문서
본문
예시 정책에서 이탤릭체로 표시된 자리표시자 텍스트를 본인 정보로 바꾼 뒤, create a policy 또는 edit a policy의 지침을 따라 적용하면 돼요.
이 정책은 IAM 역할을 사용할 때는 동작하지 않아요. IAM 역할을 사용할 때는 aws:username 변수를 사용할 수 없기 때문이에요. 프린시펄 키 값에 대한 자세한 내용은 Principal key values 문서를 참고하세요.
{
"Version":"2012-10-17",
"Statement": [
{
"Sid": "S3ConsoleAccess",
"Effect": "Allow",
"Action": [
"s3:GetAccountPublicAccessBlock",
"s3:GetBucketAcl",
"s3:GetBucketLocation",
"s3:GetBucketPolicyStatus",
"s3:GetBucketPublicAccessBlock",
"s3:ListAccessPoints",
"s3:ListAllMyBuckets"
],
"Resource": "*"
},
{
"Sid": "ListObjectsInBucket",
"Effect": "Allow",
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket",
"Condition": {
"StringLike": {
"s3:prefix": [
"",
"home/",
"home/${aws:username}/*"
]
}
}
},
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::amzn-s3-demo-bucket/home/${aws:username}",
"arn:aws:s3:::amzn-s3-demo-bucket/home/${aws:username}/*"
]
}
]
}