

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

# Elastic Beanstalk 인스턴스 프로파일 관리
<a name="iam-instanceprofile"></a>

인스턴스 프로파일은 인스턴스가 시작될 때 Amazon EC2 인스턴스에 역할 정보를 전달하는 데 사용할 수 있는 AWS Identity and Access Management (IAM) 역할의 컨테이너입니다.

 AWS 계정에 EC2 인스턴스 프로파일이 없는 경우 IAM 서비스를 사용하여 프로파일을 생성해야 합니다. 그런 다음 생성한 새 환경에 EC2 인스턴스 프로파일을 할당할 수 있습니다. Elastic Beanstalk 콘솔의 **환경 생성** 단계에서는 IAM 콘솔에 대한 액세스 권한을 제공하므로 필요한 권한이 포함된 EC2 인스턴스 프로파일을 생성할 수 있습니다.

**참고**  
이전에 Elastic Beanstalk는 AWS 계정이 환경을 `aws-elasticbeanstalk-ec2-role` 처음 생성할 때 라는 기본 EC2 인스턴스 프로파일을 생성했습니다. 이 인스턴스 프로파일에는 기본 관리형 정책이 포함되었습니다. 계정에 이미 이 인스턴스 프로파일이 있는 경우 사용자 환경에 계속 할당할 수 있습니다.  
그러나 최근 AWS 보안 지침에서는 AWS 서비스가 다른 AWS 서비스인 EC2에 대한 신뢰 정책이 있는 역할을 자동으로 생성하는 것을 허용하지 않습니다. 이러한 보안 지침 때문에 Elastic Beanstalk는 더 이상 기본 `aws-elasticbeanstalk-ec2-role` 인스턴스 프로파일을 생성하지 않습니다.



**관리형 정책**  
Elastic Beanstalk는 사용자 환경이 다양한 사용 사례를 충족할 수 있도록 여러 관리형 정책을 제공합니다. 환경의 기본 사용 사례를 충족하려면 이러한 정책을 EC2 인스턴스 프로파일의 역할에 연결해야 합니다.
+ **AWSElasticBeanstalkWebTier** – 애플리케이션에서 Amazon S3에 로그를 업로드하고 AWS X-Ray에 디버깅 정보를 업로드할 수 있는 권한을 부여합니다. 관리형 정책 콘텐츠를 확인하려면 *AWS  관리형 정책 참조 안내서*의 [AWSElasticBeanstalkWebTier](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSElasticBeanstalkWebTier.html) 페이지를 참조하세요.
+ **AWSElasticBeanstalkWorkerTier** – 대기열 관리, 리더 선출, 정기적 작업을 비롯하여 로그 업로드, 디버깅, 측정치 게시, 작업자 인스턴스 작업 등에 대한 권한을 부여합니다. 관리형 정책 콘텐츠를 확인하려면 *AWS  관리형 정책 참조 안내서*의 [AWSElasticBeanstalkWorkerTier](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSElasticBeanstalkWorkerTier.html) 페이지를 참조하세요.
+ **AWSElasticBeanstalkMulticontainerDocker** – Amazon Elastic Container Service에서 Docker 환경의 클러스터 작업을 조정할 수 있는 권한을 부여합니다. 관리형 정책 콘텐츠를 확인하려면 *AWS  관리형 정책 참조 안내서*의 [AWSElasticBeanstalkMulticontainerDocker](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSElasticBeanstalkMulticontainerDocker.html) 페이지를 참조하세요.



**중요**  
Elastic Beanstalk 관리형 정책은 세부 권한을 부여하지 않으며, Elastic Beanstalk 애플리케이션 작업에 잠재적으로 필요할 수 있는 모든 권한을 부여합니다. 경우에 따라 관리형 정책의 권한을 추가로 제한할 수 있습니다. 한 사용 사례의 예제는 [환경 간 Amazon S3 버킷 액세스 방지](AWSHowTo.iam.cross-env-s3-access.md) 단원을 참조하세요.  
관리형 정책은 사용자가 솔루션에 추가하여 Elastic Beanstalk가 관리하지 않는 사용자 지정 리소스에 대한 권한도 다루지 않습니다. 사용 권한, 최소 필수 권한 또는 사용자 지정 리소스 권한을 세부적으로 설정하려면 [사용자 지정 정책](AWSHowTo.iam.managed-policies.md#AWSHowTo.iam.policies)을 사용합니다.

**EC2에 대한 신뢰 관계 정책**  
환경의 EC2 인스턴스에서 필수적인 역할을 수임하도록 허용하려면 다음과 같이 인스턴스 프로파일에서 Amazon EC2를 신뢰 관계 정책의 신뢰할 수 있는 엔터티로 지정해야 합니다.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "ec2.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

권한을 사용자 지정하려면 정책을 기본 인스턴스 프로파일에 연결된 역할에 추가하거나 제한된 권한 세트를 보유한 인스턴스 프로파일을 직접 생성합니다.

[AI 기반 환경 분석](health-ai-analysis.md) 기능을 사용하려면 인스턴스 프로파일에 `bedrock:InvokeModel`, `bedrock:ListFoundationModels``elasticbeanstalk:DescribeEvents`, 및 `elasticbeanstalk:DescribeEnvironmentHealth` 권한을 추가합니다. 이러한 권한을 통해 Elastic Beanstalk는 Amazon Bedrock을 사용하고 환경 데이터에 액세스하여 로그, 이벤트 및 인스턴스 상태를 분석할 수 있습니다.

**Topics**
+ [인스턴스 프로파일 생성](#iam-instanceprofile-create)
+ [기본 인스턴스 프로파일에 권한 추가](#iam-instanceprofile-addperms)
+ [사용자 인스턴스 프로파일에 할당된 권한 확인](#iam-instanceprofile-verify)
+ [만료된 기본 인스턴스 프로파일 업데이트](#iam-instanceprofile-update)

## 인스턴스 프로파일 생성
<a name="iam-instanceprofile-create"></a>

인스턴스 프로파일은 표준 IAM 역할을 둘러싼 래퍼로서 EC2 인스턴스에서 역할을 수임하도록 허용합니다. 기본 Elastic Beanstalk 관리형 정책이 포함된 인스턴스 프로파일을 생성할 수 있습니다. 추가 인스턴스 프로파일을 만들어 다양한 애플리케이션에 대한 권한을 사용자 지정할 수도 있습니다. 또는 해당 기능을 사용하지 않는 경우 작업자 계층 또는 ECS 관리형 Docker 환경에 대한 권한을 부여하는 두 개의 관리형 정책이 포함되지 않은 인스턴스 프로파일을 만들 수 있습니다.

**기본 관리형 정책이 포함된 인스턴스 프로파일을 생성하려면**

1. IAM 콘솔에서 [**역할(Roles)** 페이지](https://console.aws.amazon.com/iam/home#roles)를 엽니다.

1. **역할 생성(Create role)**을 선택합니다.

1. **신뢰할 수 있는 엔터티 유형**에서 **AWS 서비스**를 선택합니다.

1. **서비스 또는 사용 사례**에서 **Elastic Beanstalk**를 선택하세요.

1. **사용 사례**에서 **Elastic Beanstalk – 컴퓨팅**을 선택합니다.

1. **다음**을 선택합니다.

1. **역할 이름**을 입력합니다.

   Elastic Beanstalk 콘솔이 제안하는 기본 역할 이름 `aws-elasticbeanstalk-ec2-role`을 입력할 수 있습니다.

1. **권한 정책**에 다음이 포함되어 있는지 확인한 후 **다음**을 선택합니다.
   + `AWSElasticBeanstalkWebTier`
   + `AWSElasticBeanstalkWorkerTier`
   + `AWSElasticBeanstalkMulticontainerDocker`

1. **역할 생성**을 선택합니다.

**선택한 관리형 정책이 포함된 인스턴스 프로파일을 생성하려면**

1. IAM 콘솔에서 [**역할(Roles)** 페이지](https://console.aws.amazon.com/iam/home#roles)를 엽니다.

1. **역할 생성**을 선택합니다.

1. **신뢰할 수 있는 엔터티 유형**에서 **AWS 서비스**를 선택합니다.

1. **사용 사례**에서 **EC2**를 선택합니다.

1. **다음**을 선택합니다.

1. Elastic Beanstalk에서 제공되는 적절한 관리형 정책과 애플리케이션에 필요한 권한을 제공하는 추가 정책을 연결합니다.

1. **다음**을 선택합니다.

1. 역할 이름을 입력합니다.

1. (선택 사항) 태그를 역할에 추가합니다.

1. **역할 생성**을 선택합니다.

## 기본 인스턴스 프로파일에 권한 추가
<a name="iam-instanceprofile-addperms"></a>

애플리케이션이 기본 인스턴스 프로파일에서 권한이 부여되지 않은 AWS APIs 또는 리소스에 액세스하는 경우 IAM 콘솔에서 권한을 부여하는 정책을 추가합니다.

**기본 인스턴스 프로파일에 연결된 역할에 정책을 추가하려면**

1. IAM 콘솔에서 [역할(Roles)](https://console.aws.amazon.com/iam/home#roles) 페이지를 엽니다.

1. EC2 인스턴스 프로파일로 할당된 역할을 선택합니다.

1. **권한** 탭에서 **정책 연결**을 선택합니다.

1. 애플리케이션이 사용하는 추가 서비스의 관리형 정책을 선택합니다. 예: `AmazonS3FullAccess` 또는 `AmazonDynamoDBFullAccess`.

1. **정책 연결(Attach policies)**을 선택합니다.

## 사용자 인스턴스 프로파일에 할당된 권한 확인
<a name="iam-instanceprofile-verify"></a>

기본 인스턴스 프로파일에 할당된 권한은 만들어진 시기, 환경을 마지막으로 시작한 시간, 사용한 클라이언트 등에 따라 다를 수 있습니다. IAM 콘솔에서 기본 인스턴스 프로파일의 권한을 확인할 수 있습니다.

**기본 인스턴스 프로파일의 권한을 확인하려면**

1. IAM 콘솔에서 [**역할(Roles)** 페이지](https://console.aws.amazon.com/iam/home#roles)를 엽니다.

1. EC2 인스턴스 프로파일로 할당된 역할을 선택합니다.

1. **권한** 탭에서 역할에 연결된 정책 목록을 검토합니다.

1. 정책이 부여하는 권한을 보려면 해당 정책을 선택합니다.

## 만료된 기본 인스턴스 프로파일 업데이트
<a name="iam-instanceprofile-update"></a>

기본 인스턴스 프로파일에 필요한 권한이 없는 경우 EC2 인스턴스 프로파일에 할당된 역할에 관리형 정책을 수동으로 추가할 수 있습니다.

**기본 인스턴스 프로파일에 연결된 역할에 관리형 정책을 추가하려면**

1. IAM 콘솔에서 [**역할(Roles)** 페이지](https://console.aws.amazon.com/iam/home#roles)를 엽니다.

1. EC2 인스턴스 프로파일로 할당된 역할을 선택합니다.

1. **권한** 탭에서 **정책 연결**을 선택합니다.

1. **AWSElasticBeanstalk**를 입력하여 정책을 필터링합니다.

1. 다음 정책을 선택한 후 **정책 연결**을 선택합니다.
   + `AWSElasticBeanstalkWebTier`
   + `AWSElasticBeanstalkWorkerTier`
   + `AWSElasticBeanstalkMulticontainerDocker`