<aside> <img src="/icons/reorder_gray.svg" alt="/icons/reorder_gray.svg" width="40px" />
목차
</aside>
<aside> 🛠
상품 등록 시 이미지 업로드가 정상적으로 이루어지지 않고,
클라이언트 측에서 HTTP 403 오류 또는 AccessDenied
응답을 받는 문제가 발생했다.
AccessDenied
페이지 출력
</aside>상품 등록 시 이미지 업로드가 정상적으로 이루어지지 않고,
클라이언트 측에서 HTTP 403 오류 또는 AccessDenied
응답을 받는 문제가 발생했다.
AccessDenied
페이지 출력<aside> 🛠
문제 항목 | 내용 |
---|---|
IAM 권한 부족 | EC2에 설정된 IAM Role 또는 접근 Key에 S3 업로드 권한 누락 |
CORS 정책 미설정 | S3 Bucket CORS 설정이 되어 있지 않아 브라우저에서 차단됨 |
Content-Type 누락 | 파일 업로드 시 Content-Type 이 지정되지 않아 S3에서 거부 |
버킷 퍼블릭 접근 제한 | 버킷 정책에서 public-read 설정이 없었고, 기본적으로 모든 요청이 차단됨 |
</aside> |
<aside> 🛠
선택지 | 이유 | 최종 결정 |
---|---|---|
IAM 정책 수정 | 서비스 계정에 s3:PutObject , s3:GetObject 권한 부여 |
✅ 적용 |
CORS 설정 추가 | 프론트에서 직접 S3에 요청 → 브라우저 CORS 허용 필요 | ✅ 적용 |
버킷 정책 수정 | S3 객체 읽기 권한을 public-read로 최소한 열어야 이미지 조회 가능 | ✅ 적용 |
Content-Type 설정 명시 | 업로드 시 HTTP 헤더에 Content-Type 명시 |
✅ 적용 |
</aside>