S3 Util 분석하기 ver2.

작심삼일·2024년 6월 18일

1

S3Presigner presigner = S3Presigner.create();

S3 sdk 요청을 수행할 수 있도록한다. 추가적인 인증없이 실행되도록

예시코드

해줌.

본인코드

S3Presigner presigner = S3Presigner.create();

        GetObjectRequest objectRequest = GetObjectRequest.builder()
                .bucket(cloudProperties.getBucketName())
                .key(uuid)
                .build();

        GetObjectPresignRequest presignRequest = GetObjectPresignRequest.builder()
//                .signatureDuration(Duration.ofHours(1)) // The URL will expire in 10 minutes
                .getObjectRequest(objectRequest)
                .build();

        PresignedGetObjectRequest presignedRequest = presigner.presignGetObject(presignRequest);

        return presignedRequest.url().toExternalForm();

https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/s3/presigner/S3Presigner.html

2

return presignedRequest.url().toExternalForm();

Presigned request ?

Presigned URL이란?
S3에 직접 파일을 업로드 하기 위해서는 해당 S3에 대한 접근 권한을 인증해야 합니다.
접근 권한에 대한 인증을 마치면 S3에 업로드 할 수 있는 URL 을 발급해 주는데, 이 URL을 presigned URL이라고 합니다. 발급 받은 presigned URL을 이용하면 브라우저에서 AWS S3 버킷에 바로 파일을 업로드 할 수 있습니다.

모든 출처
https://docs.oracle.com/javase/8/docs/api/overview-summary.html

https://sdk.amazonaws.com/java/api/latest/index.html

https://velog.io/@mimi0905/Presigned-URL%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%98%EC%97%AC-S3%EB%A1%9C-%ED%8C%8C%EC%9D%BC-%EC%97%85%EB%A1%9C%EB%93%9C

profile
still searching....

0개의 댓글