새 서버를 파면서 S3도 새로 만들었다!
근데
s3에 이미지를 올리고, 반환된 객체 url을 누르면
s3를 새로 만들다가 뭘 잘못했는지 빈 창에 Access Denied 라고 뜨면서 이미지가 로드되지 않았다
이럴때!!
S3에 버킷정책을 생성해서 액세스 권한을 주면 해결이 된다.
AWS > S3 > 버킷 > 문제의 버킷 클릭
속성 > ARN 복사
권한 > 버킷 정책 > 편집 > 정책 생성기
Select Type of Policy: S3 Bucket Policy
Principal: *
Actions: Get Object
Amazon Resource Name (ARN): 위에서 복사한 ARN
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement1",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my-bucket-name/*"
}
]
}
모든 사용자에게 읽기권한을 주는 정책이다.
Add > Generate
생성된 Json 형태의 정책을 복사해
버킷정책 > 편집 화면에 붙여넣어 적용하면 해결된다.
GetObject 액션인 경우 Resource를 객체로 명시해줘야 하므로
ARN 뒤에 /* 를 붙여줘야 한다.
'오류 해결 > AWS' 카테고리의 다른 글
[AWS] IAM 계정 권한 설정 했는데도 리소스 접근 불가일 때 (1) | 2025.06.12 |
---|---|
[S3] Presigned URL 사용해보기 2 / 고용량 파일 업로드 시 CPU 사용량 100% 혹은 서버 터질 때 (0) | 2024.12.10 |
[S3] Presigned URL 사용해보기 1 / 고용량 파일 업로드 시 CPU 사용량 100% 혹은 서버 터질 때 (1) | 2024.12.06 |
[RDS/MySQL] RDS DB 연결 안될때, 연결 시간초과 오류 뜰 때 (1) | 2024.06.17 |