728x90
[Spring, AWS] S3 객체별로 접근권한 설정하기
프로필 사진 API를 추가 구현하면서 이미지 접근권한을 다시 설정해야할 필요가 생겼다.
velog.io
문제
새로운 파일이 추가되면 ACL을 사용하여 퍼블릭 설정을 해줘야한다.
aws에서 폴더를 생성 후 그 폴더에 ACL을 사용해서 퍼블릭으로 설정해주면, 그 순간에 해당 폴더 안에 있는 객체들도 다 퍼블릭 설정이 먹힌다고 한다.
하지만 나는 폴더를 만들지 않았음
결국 폴더를 만들든 만들지 않든, 새로운 객체가 생성되면 일일이 AWS에 들어가서 ACL로 퍼블릭 설정을 해줘야한다는 말이다..
객체 업로드할 때 이런 ACL 권한을 포함해서 업로드 하는 방법이 있다고 한다.
객체 업로드 시 PublicRead 권한 포함해서 업로드
amazonS3Client.putObject(new PutObjectRequest(
bucket, username+fileName,file.getInputStream(),metadata)
.withCannedAcl(CannedAccessControlList.PublicRead)
);
해결 후
728x90
'트러블슈팅' 카테고리의 다른 글
ERROR: failed to solve: eclipse-temurin:17-jdk-alpine: failed to resolve source metadata for docker.io/library/eclipse-temurin:17-jdk-alpine: no match for platform in manifest: not found (0) | 2024.09.06 |
---|---|
zsh: command not found: docker (0) | 2024.09.05 |
S3에 올린 이미지 Access Denied(1) (0) | 2024.09.04 |
AWS Lambda CORS 설정 (0) | 2024.08.26 |
[git] .gitignore 적용이 안된다 (0) | 2024.06.29 |