본문 바로가기

AWS

(6)
S3 presignedUrl 생성 , presignedUrl이용해서 S3,DB에 이미지저장 서버에서 직접 multipart를 받아 S3 버킷에 업로드하면 서버쪽에서 multipart 파일을 쥐고 있어야 하는 둥 리소스 낭비가 크므로 S3에 접근할 수 있는 Presigned url을 생성하여 클라이언트가 직접 업로드하게 한다. https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/dev/PresignedUrlUploadObjectJavaSDK.html presigned url 이란 AWS S3 버킷에 바로 파일을 업로드 할 수 있는 URL을 말한다. 생성 및 사용 const aws = require("aws-sdk") const {AWS_ACCESS_KEY , AWS_SECRET_KEY} = process.env const s3 = new aws.S3({ ac..
s3 deleteObject S3에서 이미지나 다른 정적 파일들을 보관하는 경우, 삭제할 필요성이 있다. 선언 const aws = require("aws-sdk") const {AWS_ACCESS_KEY , AWS_SECRET_KEY} = process.env const s3 = new aws.S3({ accessKeyId:AWS_ACCESS_KEY, secretAccessKey:AWS_SECRET_KEY }) module.exports = {s3} 단일 오브젝트 삭제 s3.deleteObject({Bucket:"image-upload2" , Key:`raw/${image.key}`} , //aws에서 파일삭제 (err, data) => { if (err) { throw err; } console.log('s3 deleteObje..
multer-s3 multer,multer-3 nodejs 미들웨어로 S3는 Amazon Simple Storage Service로, 인터넷용 스토리지 서비스입니다. 쉽게 AWS에서 제공하는 파일 저장 공간이라고 생각하시면 됩니다. multer-s3를 사용하여 이미지 업로드 시 로컬 서버가 아닌 S3에 이미지를 업로드하게 됩니다. 설치 npm install multer multer-s3 설정 ImageUpload.js const multer = require('multer'); const {v4: uuid} = require('uuid') const mime = require("mime-types"); const multerS3 = require("multer-s3") //aws const {s3} = require("...
IAM 유저생성 AWS Identity and Access Management(IAM)은 AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스입니다. IAM을 사용하여 리소스를 사용하도록 인증(로그인) 및 권한 부여(권한 있음)된 대상을 제어합니다.(S3 백엔드에서 접근하는 정책을 설정하는구간입니다. 클라이언트에서 이미지 조회하는 getobject 기능을 넘어선 이미지삭제,수정같은 백엔드 정책을 설정합니다.) 일딴 IAM을 설정을 하기위해서 , 정책을 만든뒤 사용자에 연결을 해야됩니다. 우선 정책설정 페이지에 들어가서, 적용할 서비스를 선택합니다. 저는 S3 서비스를 이용하기 위해서 S3를 선택해줍니다. 쓰기에서 DeleteObject와 PutObject만 체크해줍니다. 전에 만든 resource를 obje..
S3+CloudFront 0. CloudFront 란? Amazon CloudFront는 .html, .css, .js 및 이미지 파일과 같은 정적 및 동적 웹 콘텐츠를 사용자에게 더 빨리 배포하도록 지원하는 웹 서비스 CloudFront는 엣지 로케이션이라고 하는 데이터 센터의 전 세계 네트워크를 통해 콘텐츠를 제공 사용자가 콘텐츠를 요청하면 지연 시간이 가장 낮은 엣지 로케이션으로 요청이 라우팅되므로 가능한 최고의 성능으로 콘텐츠가 제공 1. S3 버킷 생성 test-cf-cdn 라는 버킷명으로 도쿄리전에 생성 생성한 버킷에 이미지를 하나 업로드 하였다. default 설정으로 버킷의 모든 퍼블릭 엑세스가 차단되어있으므로 외부에서 이미지에 접근 할 수 없는 상태이다. 2. CloudFront Distribution 생성 AW..
S3 1. 🔍 S3(Simple,Storage, Service)란 S3는 AWS(Amazon Web Service)에서 제공하는 인터넷 스토리지 서비스입니다. S3(Simple Storage Service) 를 뜻합니다. ✅ S3의 장점 높은 내구도를 자랑하며 정보를 안전하게 저장 할 수 있습니다. 저렴한 비용으로 사용이 가능합니다(ec2에 이미지, 영상등을 저장하며 비용이 만만치 않습니다.) 보안성이 뛰어납니다 ( SSL을 통하여 데이터 전송과 암호화를 하므로 해킹 걱정이 적습니다.) 속도가 빠릅니다 (각 지역에 맞게 선택하며, 업/다운로드 시 지역시간 최소화를 위한 멀티 파트 업로드를 지원합니다. 2. 📑 S3 버킷 만들기 1) 버킷 만들기 클릭 2) 버킷 이름, 리전 입력 3) 퍼블릭 액세스 설정 실무에..