AWS S3 Access denied 에러 (+ 버킷 정책 했는데도 안될때)

치즈말랑이·2022년 2월 14일
2

S3 버킷 생성 하고 IAM도 설정하고 퍼블릭액세스 차단도 다 풀어줬는데
access denied가 뜨면서 runserver 했을때 css파일이 불러와지지 않았다.

버킷 들어가서 권한 -> 버킷 정책에다가

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1405592139000",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::버킷이름/*",
                "arn:aws:s3:::버킷이름"
            ]
        }
    ]
}

이렇게 적으면 퍼블릭 설정이 되면서 access가 된다.

02/16 추가
S3 버킷과 IAM 계정을 새로 만들어서 똑같이 해줬는데도 계속 다음과 같은 에러가 떳다.

An error occurred (AccessDenied) when calling the PutObject operation"

구글에 찾아보니 settings.py 에서 AWS_DEFAULT_ACL = None 로 바꾼 후 정상적으로 작동되는것을 확인 한 후에 다시 'public-read'로 바꾸라고 해서 해봤더니 된다.출처

댓글에 다음과 같이 적혀 있다.
I think this is because AWS by default sets Block new public ACLs and uploading public objects to True for new buckets. If you set this to False in the permissions tab, you should be able to set AWS_DEFAULT_ACL='public-read'

profile
공부일기

0개의 댓글