이번 포스팅에서는 AWS의 IAM에 대해서 간단하게 정리해보고자 한다. 저번에 S3 저장소 버킷을 만들고 권한과 관련된 설정을 할 때, AWS의 IAM을 활용하여 사용자를 만들고 권한을 배정하였다. 그렇다면, 여기서 말하는 IAM은 정확히 무엇일까? IAM AWS 공식 문서에서 IAM을 다음과 같이 정의하고 있다. AWS Identity and Access Management(IAM)은 AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스입니다. IAM을 사용하여 리소스를 사용하도록 인증(로그인) 및 권한 부여(권한 있음)된 대상을 제어합니다. 역시, 정의만 봐서는 쉽게 와닿지가 않는다. 쉽게 요약하자면, AWS를 이용하는 사용자에게 권한을 부여해서 AWS 내의 자원을 안전하게 사용할 수 있..
📜 전체보기
이번 포스팅에서는 기존 S3에 파일을 저장하고, 접근하도록 구현된 SpringBoot 프로젝트(워디 프로젝트)를 AWS에서 배포한 CloudFront를 경유하도록 설정해보고자 한다. 시작하기에 앞서, AWS CloudFront를 배포한 상황에서 시작하려고 한다. AWS CloudFront를 배포하는 방법은 다음 포스팅을 참고하도록 하자. [CloudFront ] AWS CloudFront 배포하기 이전 포스팅에서 S3 버킷을 생성하고, Spring boot를 활용하여 해당 S3에 파일을 업로드하는 방법에 대해서 알아보았다. 이번 포스팅에서는 CloudFront에 대해 간단히 알아보고, AWS CloudFront 서비스를 이 willco.tistory.com AwsS3Service 수정 현재 S3에 파일을..
이전 포스팅에서 S3 버킷을 생성하고, Spring boot를 활용하여 해당 S3에 파일을 업로드하는 방법에 대해서 알아보았다. 이번 포스팅에서는 CloudFront에 대해 간단히 알아보고, AWS CloudFront 서비스를 이용하여 CDN을 구축해보고자 한다. 이후, 다음 포스팅에서는 배포한 CloudFront 경로로 파일을 접근할 수 있게 Spring boot 프로젝트 코드를 수정하고자 한다. CloudFront AWS CloudFront는 정적, 동적 콘텐츠를 빠르게 응답하기 위한 캐시 기능을 제공하는 CDN 서비스이다. CloudFront는 캐싱을 지원하기 때문에 S3에 저장된 콘텐츠를 직접 접근하지 않아도 되어 S3의 비용이 감소된다. 또한 사용자의 위치에서 가까운 프록시 서버의 캐싱 데이터를..
저번 포스팅에서는 Spring boot로 로컬에 파일 업로드를 구현하였다. 이번에는 앞에서 구현한 파일 업로드를 로컬이 아닌 AWS의 S3 저장소에 저장할 수 있도록 바꿔보려고 한다. S3를 사용해야 되는 이유와 S3를 연동하는데 필요한 AWS 준비과정은 저번 포스팅에 모두 정리해두었다. [AWS S3] AWS S3 저장소 만들기 S3를 사용하는 이유 저번 포스팅에서는 Spring boot로 로컬에 파일 업로드를 구현하였다. 이번에는 앞에서 구현한 파일 업로드를 로컬이 아닌 AWS의 S3 저장소에 저장할 수 있도록 바꿔보려고 한다. willco.tistory.com 의존성 추가 및 yml 파일 설정 AWS S3를 이용하기 위해서는 build.gradle에 다음 코드를 추가해주자. //aws s3 impl..
S3를 사용하는 이유 로컬에 파일을 저장해도 기능은 문제없는데, 왜 S3를 써야 할까? S3는 AWS 클라우드 서비스 중 저장소 역할을 하는 온라인 스토리지 서비스이다. 로컬에 파일을 저장하는 건 언젠가 용량에 한계가 올 것이고, 그때마다 추가적인 용량 확장 작업과 설정을 해줘야 하는 번거로움이 예정되어 있다. 클라우드 서비스인 S3를 활용하면 무제한에 가까운 저장을 할 수 있기 때문에 이런 문제에서 벗어날 수 있다. 그러면 EC2와 같은 클라우드 서버에도 저장이 가능하다고 생각할 수 있다. 생각한 것처럼 EC2와 같은 서버에도 파일을 저장할 수 있지만, 요금 측면이나 활용도 측면에서 S3를 활용하는 것이 훨씬 좋은 선택이다. S3 버킷 만들기 먼저 AWS S3를 활용하기 위해서는 AWS 계정이 필요하다..