728x90
728x90
S3 보안 및 버킷 정책 사용자 기반 보안 정책 IAM 정책 : IAM 사용자는 IAM 정책을 가지고 특정 서비스에 대한 권한을 허가 받는다. 만약 어떤 유저가 IAM 정책을 통해 Amazon S3 버킷에 액세스하는 권한을 받으면 S3 서비스를 사용할 수 있게 된다. 리소스 기반 보안 정책 버킷 정책 : 악명 높은 S3 버킷 정책이다. S3 콘솔에서 설정 가능한 버킷에 대한 전반적인 규칙들로, S3 버킷에서 보안 주체가 무엇을 할 수 있는지 없는지를 결정하는 정책이다. 이를 통해, S3 버킷으로의 교차 계정 액세스가 활성화된다. Object Access Control List(ACL) : 객체 레벨에서 액세스 규칙을 설정한다. Bucket Access Control List(ACL) : 버킷 레벨에서 액..
S3 객체 암호화 아마존 S3 에 객체를 업로드할 경우 해당 객체로 접근하지 못하게끔 보호해야 한다. 객체를 보호하기 위해 사용하는 암호화 방식이 4가지가 있다. SSE-S3 : AWS 가 관리하는 키를 사용하여 S3 객체를 암호화하는 방법이다. SSE-KMS : AWS 의 Key Management 서비스를 사용하여 암호화 키를 관리하는 방법이다. SSE-C : 사용자가 만든 암호화 키를 관리할 때 사용하는 방법이다. 클라이언트 측 암호화 방식 특정 상황에서 어떤 방법을 사용하여 암호화 해야 하는지를 묻는 문제가 나온다. SSE-S3 이 방식은 아마존 S3 에서 관리하는 키를 사용하여 암호화하는 방법이다. S3 객체는 서버 측에서 암호화된다. 암호화 알고리즘으로는 AES-256 을 사용한다. SSE-S..
S3 버킷 및 객체 s3 는 객체를 저장하게 해주는 시스템이자 서비스이다. 즉, 파일이 버킷 또는 디렉토리에 있고 각 버킷은 고유한 이름을 갖는다. 이미 사용 중인 이름을 사용하여 버킷을 만들 수는 없다. Objects Objects 는 키를 갖는다. 키는 파일의 전체 경로이다. 만약 버킷 이름이 my-bucket 이고, 객체 이름이 my_file.txt 라고 한다.(s3://my-bucket/my_file.txt) 이 경우 키는 my_file.txt 가 된다. 만약 s3 버킷 내에 my_folder1/another_folder 폴더 안에 my_file.txt 가 있는 경우라면, 전체 경로는 s3://my-bucket/my_folder1/another_folder/my_file.txt 가 되고 키는 my..
Beanstalk 개요 위 그림처럼 환경 설정과 아키텍쳐 구축이 모두 끝난 아키텍쳐가 있다. 동일한 아키텍쳐를 계속해서 만드는 것은 귀찮은 일이다. 로드 밸런서 설정, 서브넷 설정, Route 53 설정 등..동일한 인프라를 또 생성하는 것은 말도 안되는 일이다. 이 때 필요한 것이 Beanstalk 이다. Elastic Beanstalk 는 이러한 절차를 모두 자동으로 만들어주며 수정도 손쉽게 할 수 있는 환경을 제공한다. 한마디로 Elastic Beanstalk 는 웹 애플리케이션/웹 서비스를 배포하고, 확장하고, 관리하는 데 있어 쉽고 빠르게 할 수 있도록 돕는 완전 관리형 서비스이다. Beanstalk 에선 각각의 구성 요소들을 컨트롤 할 수 있지만 하나의 인터페이스에 모든 구성 요소들이 통합되어..
애플리케이션을 빠르게 인스턴스로 만들기 웹 사이트를 운영하기 위해서 EC2 인스턴스에 애플리케이션을 어떻게 설치하고 배포하는지 다루지는 않았다. 애플리케이션을 설치하고 모든 환경 설정을 마치는 데는 시간이 오래 걸린다. 이 시간을 줄일 수 있는 방법이 있을까? EC2 인스턴스에서 Golden AMI 를 사용할 수 있다. Golden AMI 는 애플리케이션과 OS 종속성 등 모든 환경 설정을 사전에 설치 및 구성하고 난 후에 AMI 를 만드는 것이다. 이렇게 하면 환경 구성을 할 필요 없이 바로 EC2 인스턴스를 생성할 수 있다. Golden AMI 는 클라우드에서 사용하는 아주 흔한 패턴이다. User Data 를 통해 인스턴스를 부트 스트래핑할 수 있는데, 부트 스트래핑은 인스턴스가 처음 시작될 때 환..
MyWordPress.com 개요 stateful 한 웹 애플리케이션 MyWordPress 가 있다. 모든 EC2 인스턴스들이 데이터베이스에 접근 가능하다. 사용자 정보나 블로그 내용 등, 모든 정보들이 데이터베이스에 저장되야 한다. 글로벌하게 확장할 수 있어야 한다. MyWordPress.com 이전과 동일한 구성을 갖는다. Route 53, ELB, ASG 그리고 Multi AZ 를 사용하여 재해에 대비한다. RDS 로는 MySQL 대신 Aurora 를 사용하여 글로벌하게 확장할 수 있도록 한다. Aurora 를 사용하면 Multi AZ, 읽기 전용 복제본, 글로벌 데이터베이스 등등 여러 기능을 사용할 수 있다. 말 그대로 글로벌하게 확장 가능하다. 하나의 가용 영역 1에는 EC2 인스턴스와 그에 연..