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}/*"
            ]
        }
    ]
}

더 알아보기 (Learn more)