AWS S3 시간 제한 암호화 보안 토큰으로 임시 다운로드 링크 URL 생성방법
( Generating Temporary File Download URLs with Security Token )
- S3 권한 설정 : 파일이 존재하는 'S3 버킷의 폴더'에 별도의 보안 정책(Deny) 설정이 없어야 한다.
//-------------------------------------
$bucket = "S3버킷이름";
$path = "upload/up.zip";
$filename = "save_name.zip"; // 사용자에게 저장될 파일 이름
//-------------------------------------
- 방법 1
* 라라벨 코드
$url = \Storage::disk('s3')->temporaryUrl(
$path,
now()->addMinute(), // 다운로드 가능한 시간 설정
['ResponseContentDisposition' => 'attachment; filename ="' . $filename . '"']
);
//-------------------------------------
- 방법2
*AWS SDK 코드
$s3Client = \Storage::disk('s3')->getDriver()->getAdapter()->getClient();
$cmd = $s3Client->getCommand('GetObject', [
'Bucket' => $bucket,
'Key' => $path,
'ResponseContentDisposition' => 'attachment; filename ="' . $filename . '"',
]);
$request = $s3Client->createPresignedRequest($cmd, '+10 minutes');
$url = (string) $request->getUri();
'Code > Web' 카테고리의 다른 글
AWS EC2 아이피 차단 방법 (0) | 2022.03.27 |
---|---|
Nginx 웹서버 로그 분석기 , GoAccess (0) | 2022.03.27 |
XML 파일에서 태그 찾아서 삭제 명령(command line) (0) | 2021.05.10 |
오라클 클라우드 서비스 가격 (0) | 2021.05.09 |
AWS EBS 저장장치 버스트 잔고 관리 (gp2 vs gp3) (0) | 2021.04.22 |