Amazon EC2 인스턴스에서 실행되는 애플리케이션에 대한 IAM 역할 - Amazon EC2 Auto Scaling

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon EC2 인스턴스에서 실행되는 애플리케이션에 대한 IAM 역할

Amazon EC2 인스턴스에서 실행되는 애플리케이션이 다른 AWS 서비스에 액세스하려면 자격 증명이 필요하며, 이러한 자격 증명을 안전하게 제공하려면 IAM 역할을 사용합니다. 이 역할은 애플리케이션이 다른 AWS 리소스에 액세스할 때 사용할 수 있는 임시 권한을 제공합니다. 역할의 권한에 따라 애플리케이션에서 수행할 수 있는 작업이 결정됩니다.

Auto Scaling 그룹 인스턴스의 경우, 시작 템플릿 또는 시작 구성을 생성하고 인스턴스와 연결할 인스턴스 프로파일을 선택해야 합니다. 인스턴스 프로파일은 인스턴스가 시작될 때 Amazon EC2가 인스턴스에 IAM 역할을 전달하도록 허용하는 IAM 역할을 위한 컨테이너입니다. 먼저, 리소스에 액세스하는 데 필요한 모든 권한을 가진 IAM 역할을 생성합니다. AWS 그런 다음, 인스턴스 프로파일을 생성하고 여기에 그 역할을 할당합니다.

참고

모범 사례로, 애플리케이션에 필요한 다른 AWS 서비스 역할에 대한 최소한의 권한을 갖도록 역할을 생성하는 것이 좋습니다.

필수 조건

Amazon EC2에서 실행 중인 애플리케이션이 수임할 수 있는 IAM 역할을 생성합니다. 나중에 역할을 부여받은 애플리케이션이 필요한 API 호출을 할 수 있도록 적절한 권한을 선택하세요.

SDK AWS CLI 또는 AWS SDK 중 하나 대신 IAM 콘솔을 사용하는 경우 콘솔은 자동으로 인스턴스 프로필을 생성하여 해당하는 역할과 동일한 이름을 지정합니다.

IAM 역할을 생성하려면(콘솔)
  1. https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 왼쪽의 탐색 창에서 역할을 선택합니다.

  3. 역할 생성을 선택합니다.

  4. 신뢰할 수 있는 엔터티 선택(Select trusted entity)에서 AWS 서비스( service)를 선택합니다.

  5. 사용 사례에 대해 EC2를 선택하고 다음(Next)을 선택합니다.

  6. 가능하다면, 권한 정책을 사용하기 위한 정책을 선택하거나 정책 생성을 선택하여 새 브라우저 탭을 열고 완전히 새로운 정책을 생성합니다. 자세한 내용은 IAM 사용자 설명서에서 IAM 정책 생성을 참조하세요. 정책을 생성하면 탭을 닫고 원래 탭으로 돌아갑니다. 서비스에게 부여하려는 권한 정책 옆의 확인란을 선택합니다.

  7. (선택 사항) 권한 경계를 선택합니다. 이는 서비스 역할에 사용할 수 있는 고급 기능입니다. 자세한 정보는 IAM 사용 설명서IAM 엔터티의 권한 범위를 참조하세요.

  8. 다음을 선택합니다.

  9. 이름 지정, 검토 및 생성(Name, review, and create) 페이지에서 역할 이름(Role name)에 이 역할의 목적을 식별하는 데 도움이 되는 역할 이름을 입력합니다. 이 이름은 AWS 계정내에서 고유해야 합니다. 다른 AWS 리소스가 역할을 참조할 수 있으므로 역할을 생성한 후에는 역할 이름을 편집할 수 없습니다.

  10. 역할을 검토한 다음 역할 생성을 선택합니다.

IAM 권한

IAM 자격 증명 기반 정책을 사용하여 새 IAM 역할에 대한 액세스를 제어합니다. iam:PassRole 권한은 인스턴스 프로파일을 지정하는 시작 템플릿을 사용하여 Auto Scaling 그룹을 생성 또는 업데이트하는 IAM 자격 증명(사용자 또는 역할)에 필요합니다.

다음 예제 정책에서는 이름이 qateam-로 시작하는 IAM 역할만 전달할 수 있는 권한을 부여합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::account-id:role/qateam-*", "Condition": { "StringEquals": { "iam:PassedToService": [ "ec2.amazonaws.com", "ec2.amazonaws.com.cn" ] } } } ] }
중요

Amazon EC2 Auto Scaling에서 시작 템플릿을 사용하는 Auto Scaling 그룹에 대한 iam:PassRole 작업 권한을 검증하는 방법에 대한 자세한 내용은 ec2:RunInstances 및 iam:PassRole에 대한 권한 검증(을)를 참조하세요.

시작 템플릿 생성

를 사용하여 시작 템플릿을 생성할 때는 고급 세부 정보 섹션의 IAM 인스턴스 프로필에서 역할을 선택합니다. AWS Management Console자세한 설명은 고급 설정을 사용하여 시작 템플릿 생성 섹션을 참조하세요.

에서 create-launch-template명령을 사용하여 시작 템플릿을 생성할 때는 다음 AWS CLI예와 같이 IAM 역할의 인스턴스 프로필 이름을 지정하십시오.

aws ec2 create-launch-template --launch-template-name my-lt-with-instance-profile --version-description version1 \ --launch-template-data '{"ImageId":"ami-04d5cc9b88example","InstanceType":"t2.micro","IamInstanceProfile":{"Name":"my-instance-profile"}}'

다음 사항도 참조하십시오.

Amazon EC2에 대한 IAM 역할을 알아보고 사용하는 데 도움이 되는 자세한 정보는 다음을 참조하세요.