테스트이기 때문에 s3를 만든다 하더라도 테스트 후 바로 지우세요
가장 먼저 IAM 에서 루트 사용자로 액세스 키를 발급받아서 .CSV 파일을 로컬에 가져왔으며
S3-ACCESS-KEY및SECRET ACCESS KEY를 받아왔다. 추후에 .env 파일에서 사용될것이다.
S3를 생성하고 버킷에 권한 - 정책을 설정한다.
내 정책은 다음과 같다. Resource는 arn 주소에 버킷에있는 /* 하위 디렉토리에 대한 접근을 허가하는 것이다.
{
"Version": "2012-10-17",
"Id": "testPolicy",
"Statement": [
{
"Sid": "Stmt1658663877057",
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:DeleteObject",
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::s3-client-test/*"
}
]
}
이후 npm init을 한 프로젝트에 설치되는 것들은 다음과 같다.
npm list로 확인해보면 위 2개는 3점 버전대로 잘 설치되었다. 버전 이슈가 있을수도 있어서 확인해야한다.
.env 파일에 s3관련 키값들을 잘 넣어주었다.
S3Client 설정 코드는 다음과 같다.
env에 설정한 키-벨류값들을 가져와서 유저 인증을한다.
이후 upload라는 함수를 만드는데 s3인증 객체와 bucket 이름을 적어준다.
api 를 하나 만들어주는데 upload.single('custom')을 잘 확인해야한다.
custom이라는 이름으로 jpg파일을 업로드해야 multer에서 제대로 인식하고 가져올 수가 있다.
실행시키고 s3를 확인해보면
파일이 정상적으로 업로드 되는 것을 확인 할 수 있다.
AWS S3 적용하기 (0) | 2022.08.02 |
---|---|
EC2 연결 [SSH, Key] (0) | 2022.07.31 |
CACHE 캐시 에 관하여 (0) | 2022.07.30 |
Amazon 의 기본 개념 [ Amazon S3 , CloudFront] (0) | 2022.07.29 |
댓글 영역