본문 바로가기

기타

[AWS] S3 사용하기

이미지를 저장하고 사용하기 위해 aws의 s3를 사용했다.

무료 조건

무료 조건은 이렇게.

아직 바리바리 서비스는 데모버전이라 5GB를 넘을 것 같지는 않다.

지난 학교 축제때 s3비용을 물어보니까 6만원 정도 나왔다고 한다..ㄷㄷ 생각보다 많이 나옴.


s3 버킷을 만들고 사용하는 건 쉽다.

이렇게...만들어줌

어짜피 수정은 가능하고...이미지에 모든 사람들이 접근할 수 있어야 하니까 엑세스는 설정해줬는데...이렇게하면 접근이 안된다.

업로드한 파일에 접근하려고 하면 아래와 같은 오류가 뜬다.

This XML file does not appear to have any style information associated with it. The document tree is shown below.

엑세스 퍼블릭을 설정해주자!

버킷>내 버킷>권한>버킷정책편집으로 들어가면 버킷 정책을 수정할 수 있다.이때 정책 예제로 들어가서 아래와 같이 설정한다. Actions는 일단 GETObject이랑 PUTObject으로 해주었다.그리고 ARN은 버킷정책 편집에 있음.

정책 예제

이 후 Add Statement를 누르면 예제가 나온다. 그걸 복사한다.

복붙

정책에 복붙.

Resource 뒤에 /*를 안붙이면 오류가 나고 저장이 안된다.

권한>CORS 설정도 해주었다.

CORS

[
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "HEAD",
            "GET",
            "PUT",
            "POST",
            "DELETE"
        ],
        "AllowedOrigins": [
            "*"
        ],
        "ExposeHeaders": []
    }
]

폴더

알아보기 쉽게 폴더를 나누어 이미지를 저장했다.

폴더에 들어가면 내가 업로드한 이미지들이 있다.

ACL

각 이미지에서 ACL을 설정할 수 있다.

위 사진처럼 편집을 눌러서 읽기 권한을 허용해주면 모든 사람이 이미지를 읽을 수 있다.

사실 처음에 위 퍼블릭 엑세스 설정이 제대로 되지 않아서...직접해준건데 버킷 퍼블릭 엑세스가 제대로 됐으면 안해도 된다.

뭘 모자이크 해야하지

이미지 속성은 이렇게 보인다.

객체 URL을 DataGrip에 넣어주면 프론트가 알아서 잘 보여준다.


참고

https://velog.io/@otterji/AWS-S3-%ED%8D%BC%EB%B8%94%EB%A6%AD-%EB%B2%84%ED%82%B7-%EC%83%9D%EC%84%B1%ED%95%98%EA%B8%B0#7-cors-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0

 

AWS S3 퍼블릭 버킷 생성하기

Amazon Simple Storage Service(Amazon S3)는 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스입니다. 모든 규모와 업종의 고객은 Amazon S3를 사용하여 데이터 레이크, 웹

velog.io

https://gksdudrb922.tistory.com/224

 

[AWS] S3 버킷 퍼블릭 엑세스 설정

AWS S3 버킷을 퍼블릭하게 열어두고 사용할 때가 많다. 이번에는 S3 퍼블릭 엑세스에 대한 기본 세팅을 설명한다. 퍼블릭 엑세스 차단 기본적으로 아무 설정 없이 버킷을 생성하면 모든 퍼블릭 엑

gksdudrb922.tistory.com