Design Secure Applications And Architectures
AWS Certified Solutions Architect Associate
AWS 리소스에 대한 보안 액세스를 설계하는 방법
Networking and Content Delivery
상황
AWS에서 실행되는 애플리케이션에서 전 세계적으로 배포된 구독자에게 컨텐츠를 제공하고 있다.
애플리케이션은 ALB(Application Load Balancer) 뒤에 private subnet에 있는 EC2 인스턴스 그룹을 사용하고 있다.
저작권 제한 업데이트로 인하여 특정 국가에 대한 접근을 차단하기 위한 방법은?
답변
CloudFront를 사용하여 애플리케이션을 제공하고, 차단된 국가에 대한 액세스를 거부할 수 있다.
CloudFront는 컨텐츠를 제공하는 지리적 제한기능을 구현하는 가장 쉽고 효과적인 방법이다.
기술 정리
CloudFront
사용자가 컨텐츠를 요청하면 CloudFront는 일반적으로 사용자의 위치에 관계없이 요청된 컨텐츠를 제공한다.
특정 국가의 사용자가 컨텐츠에 액세스하지 못하도록 해야 하는 경우 CloudFront 지역 제한기능을 사용할 수 있다.
지역제한 기능이란?
사용자가 승인된 국가의 허용 목록에 있는 국가에 속한 경우 컨텐츠에 엑세스 할 수 있도록 허용
사용자가 금지된 국가의 블랙리스트에 있는 국가에 속한 경우 사용자가 컨텐츠에 액세스 불가
저작권의 이유로 컨텐츠를 배포할 권한이 없는 국가에서 요청이 온 경우 CloudFront 지역제한을 통해 요청을 차단할 수 있다.
VPC-Gateway
상황
VPC에는 여러 EC2 인스턴스가 포함되어 있다.
해당 인스턴스는 DynamoDB에 대한 API 호출을 수행해야 하는 상황에서 API 호출이 인터넷을 통과하지 않도록 하길 원할 때 선택할 수 있는 솔루션은?
답변
엔드포인트에 대한 라우팅 테이블 리스트를 생성, DynamoDB용 게이트웨이 엔드포인트를 생성
DynamoDB 및 S3는 인터페이스 엔드포인트가 아니라 게이트웨이 엔드포인트를 지원한다.
게이트웨이 엔드포인트를 사용하여 VPC에 엔드포인트를 생성하고 서비스에 대한 엑세스를 허용하는 정책을 연결한 다음 라우팅 테이블 리스트를 생성할 라우팅 테이블을 지정한다.
IAM
상황
EC2 Launcher Type을 사용하는 EC2 컨테이너 인스턴스에서 실행 중인 애플리케이션에는 DynamoDB에 데이터를 쓰기 위한 사용 권한이 필요하다.
응용 프로그램을 실행하는 특정 ECS Task에만 이러한 권한을 할당하려면 어떻게 해야 할까?
답변
DynamoDB에 대한 사용권한이 있는 IAM 정책을 생성하고 taskRoleArn 매개 변수를 사용하여 Task에 할당한다.
기술 설명
Amazon ECS에서 특정 작업에 대한 사용 권한을 지정하려면 IAM Role for Tasks를 사용한다.
권한 정책은 작업 정의를 생성할 때 또는 AWS CLI 또는 SDK를 사용하여 IAM 작업 역할 재정의를 사용하여 작업에 적용할 수 있다.
taskRoleArn 매개변수는 정책을 지정하는 데 사용된다.
보안 애플리케이션 계층을 설계하는 방법
IAM
상황
EC2 생성 시에 특정 ECS 컨테이너 인스턴스에서 실행되는 애플리케이션에는 DynamoDB에 데이터를 쓸 수 있는 권한을 주기 위한 방법은?
답변
특정 ECS 작업에만 권한을 할당하기 위해서는 해당 작업에 대한 IAM 역할을 사용해야 한다.
DynamoDB에 대한 권한이 있는 IAM 정책을 생성하고 taskRoleArn 파라미터를 사용하여 작업을 할당한다.
기술 정리
IAM
권한 정책은 작업 정의를 생성할 때 또는 AWS CLI 또는 SDK를 사용하여 IAM 작업 역할 재정의를 사용하여 작업에 적용할 수 있다.
taskRoleArn 매개변수는 정책을 지정하는데 사용된다.
적절한 데이터 보안 옵션을 선택하는 방법
Last updated