

 **이 페이지 개선에 도움 주기** 

이 사용자 가이드에 기여하려면 모든 페이지의 오른쪽 창에 있는 **GitHub에서 이 페이지 편집** 링크를 선택합니다.

# Amazon EKS용 자격 증명 및 액세스 관리
<a name="security-iam"></a>

 AWS Identity and Access Management(IAM)는 AWS 리소스에 대한 관리자의 액세스를 안전하게 제어하는 데 도움이 되는 AWS 서비스입니다. IAM 관리자는 어떤 사용자가 Amazon EKS 리소스를 사용할 수 있는 *인증*(로그인) 및 *권한*(권한 있음)을 받을 수 있는지를 제어합니다. IAM은 추가 비용 없이 사용할 수 있는 AWS 서비스입니다.

## 대상
<a name="security-iam-audience"></a>

AWS ID 및 액세스 관리(IAM)를 사용하는 방법은 Amazon EKS에서 수행하는 작업에 따라 다릅니다.

 **서비스 사용자** – Amazon EKS 서비스를 사용하여 작업을 수행하는 경우 필요한 자격 증명과 권한을 관리자가 제공합니다. 다른 Amazon EKS 기능을 사용하여 작업을 수행한다면 추가 권한이 필요할 수 있습니다. 액세스 권한 관리 방법을 이해하면 관리자에게 올바른 권한을 요청하는 데 도움이 됩니다. Amazon EKS의 기능에 액세스할 수 없다면 [IAM 문제 해결](security-iam-troubleshoot.md) 부분을 참조하세요.

 **서비스 관리자** – 사내 Amazon EKS 리소스를 책임지고 있다면 Amazon EKS에 대한 완전한 액세스 권한이 있을 것입니다. 서비스 관리자는 서비스 사용자가 액세스해야 하는 Amazon EKS 기능과 리소스를 결정합니다. 그런 다음 IAM 관리자에게 요청을 제출하여 서비스 사용자의 권한을 변경해야 합니다. 이 페이지의 정보를 검토하여 IAM의 기본 개념을 이해합니다. 귀사에서 Amazon EKS와 함께 IAM을 사용하는 방법에 대해 자세히 알아보려면 [Amazon EKS가 IAM과 작동하는 방식](security-iam-service-with-iam.md) 부분을 참조하세요.

 **IAM 관리자** - IAM 관리자라면 Amazon EKS에 대한 액세스 관리 정책 작성 방법을 자세히 알고 싶을 수도 있습니다. IAM에서 사용할 수 있는 Amazon EKS 자격 증명 기반 정책 예제를 보려면 [Amazon EKS 자격 증명 기반 정책 예제](security-iam-id-based-policy-examples.md) 부분을 참조하세요.

## ID를 통한 인증
<a name="security-iam-authentication"></a>

인증은 ID 자격 증명을 사용하여 AWS에 로그인하는 방식입니다. AWS 계정 루트 사용자나 IAM 사용자로 또는 IAM 역할을 수임하여 *인증*(AWS에 로그인)되어야 합니다.

ID 소스를 통해 제공된 자격 증명을 사용하여 페더레이션 ID로 AWS에 로그인할 수 있습니다. AWS IAM ID 센터 사용자, 회사의 통합 인증, Google 또는 Facebook 자격 증명은 페더레이션 ID의 예입니다. 페더레이션 ID로 로그인할 때 관리자가 이전에 IAM 역할을 사용하여 ID 페더레이션을 설정했습니다. 연동을 사용하여 AWS에 액세스하면 간접적으로 역할을 수임합니다.

사용자 유형에 따라AWS Management Console 또는 AWS 액세스 포털에 로그인할 수 있습니다. AWS 로그인에 대한 자세한 내용은 * AWS 로그인 사용 설명서*에서 [AWS 계정에 로그인하는 방법](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html)을 참조하세요.

AWS에 프로그래밍 방식으로 액세스하는 경우, AWS에서는 보안 인증 정보를 사용하여 요청에 암호화 방식으로 서명할 수 있는 소프트웨어 개발 키트(SDK) 및 명령줄 인터페이스(CLI)를 제공합니다. AWS 도구를 사용하지 않는 경우 요청에 직접 서명해야 합니다. 권장 방법을 사용하여 요청에 직접 서명하는 방법에 대한 자세한 내용은 *IAM 사용 설명서*의 [AWS API 요청에 서명](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-signing.html)을 참조하세요.

사용하는 인증 방법에 상관없이 추가 보안 정보를 제공해야 할 수도 있습니다. 예를 들어, AWS는 다중 인증(MFA)을 사용하여 계정의 보안을 강화하는 것을 권장합니다. 자세한 내용은 * AWS IAM ID 센터 사용 설명서*의 [Multi-factor 인증](https://docs.aws.amazon.com/singlesignon/latest/userguide/enable-mfa.html)과 *IAM 사용 설명서*의 [AWS에서 다단계 인증(MFA) 사용](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html)을 참조하세요.

### AWS 계정 루트 사용자
<a name="security-iam-authentication-rootuser"></a>

AWS 계정을 생성할 때는 해당 계정의 모든 AWS 서비스 및 리소스에 대한 완전한 액세스 권한이 있는 단일 로그인 ID로 시작합니다. 이 자격 증명은 AWS 계정 *루트 사용자*라고 하며, 계정을 생성할 때 사용한 이메일 주소와 암호로 로그인하여 액세스합니다. 일상적인 작업에 루트 사용자를 사용하지 않을 것을 강력히 권장합니다. 루트 사용자 자격 증명을 보호하고 루트 사용자만 수행할 수 있는 작업을 수행하는 데 사용합니다. 루트 사용자로 로그인해야 하는 전체 작업 목록은 *IAM 사용 설명서*의 [루트 사용자 자격 증명이 필요한 작업](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)을 참조하세요.

### IAM 사용자 및 그룹
<a name="security-iam-authentication-iamuser"></a>

[https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)는 단일 개인 또는 애플리케이션에 대한 특정 권한을 가지고 있는 AWS 계정 내 ID입니다. 가능하면 암호 및 액세스 키와 같은 장기 자격 증명이 있는 IAM 사용자를 생성하는 대신 임시 자격 증명을 사용하는 것이 좋습니다. 하지만 IAM 사용자의 장기 자격 증명이 필요한 특정 사용 사례가 있는 경우, 액세스 키를 교체하는 것이 좋습니다. 자세한 내용은 *IAM 사용 설명서*의 [장기 보안 인증이 필요한 사용 사례의 경우, 정기적으로 액세스 키 교체](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#rotate-credentials)를 참조하세요.

[IAM 그룹](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html)은 IAM 사용자 컬렉션을 지정하는 자격 증명입니다. 사용자는 그룹으로 로그인할 수 없습니다. 그룹을 사용하여 여러 사용자의 권한을 한 번에 지정할 수 있습니다. 그룹을 사용하면 대규모 사용자 집합의 권한을 더 쉽게 관리할 수 있습니다. 예를 들어, IAMAdmins**라는 그룹이 있고 이 그룹에 IAM 리소스를 관리할 권한을 부여할 수 있습니다.

사용자는 역할과 다릅니다. 사용자는 한 사람 또는 애플리케이션과 고유하게 연결되지만, 역할은 해당 역할이 필요한 사람이라면 누구나 수임할 수 있습니다. 사용자는 영구적인 장기 보안 인증 정보를 가지고 있지만, 역할은 임시 보안 인증만 제공합니다. 자세한 정보는 *IAM 사용 설명서*의 [IAM 사용자를 만들어야 하는 경우(역할이 아님)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html#id_which-to-choose)를 참조하세요.

### IAM 역할
<a name="security-iam-authentication-iamrole"></a>

[https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)은 특정 권한을 가지고 있는 AWS 계정 내 ID입니다. IAM 사용자와 유사하지만, 특정 개인과 연결되지 않습니다. [역할 전환](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)하여 AWS Management Console에서 IAM 역할을 임시로 수임할 수 있습니다. AWS CLI 또는 AWS API 작업을 직접 호출하거나 사용자 지정 URL을 사용하여 역할을 수임할 수 있습니다. 역할 사용 방법에 대한 자세한 정보는 *IAM 사용 설명서*의 [IAM 역할 사용](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html)을 참조하세요.

임시 보안 인증이 있는 IAM 역할은 다음과 같은 상황에서 유용합니다.
+  **페더레이션 사용자 액세스** - 페더레이션 ID에 권한을 부여하려면 역할을 생성하고 해당 역할의 권한을 정의합니다. 페더레이션 ID가 인증되면 역할이 연결되고 역할에 정의된 권한이 부여됩니다. 페더레이션 역할에 대한 자세한 내용은 *IAM 사용 설명서*의 [서드 파티 ID 공급자의 역할 만들기](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp.html)를 참조하세요. IAM Identity Center를 사용하는 경우, 권한 집합을 구성합니다. 인증 후 ID가 액세스할 수 있는 항목을 제어하기 위해 IAM Identity Center는 권한 집합을 IAM의 역할과 연관짓습니다. 권한 집합에 대한 자세한 내용은 * AWS IAM Identity Center 사용 설명서*의 [권한 집합](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)을 참조하세요.
+  **임시 IAM 사용자 권한** - IAM 사용자 또는 역할은 IAM 역할을 수임하여 특정 작업에 대한 다양한 권한을 임시로 받을 수 있습니다.
+  **교차 계정 액세스** - IAM 역할을 사용하여 다른 계정의 사용자(신뢰할 수 있는 보안 주체)가 내 계정의 리소스에 액세스하도록 허용할 수 있습니다. 역할은 교차 계정 액세스를 부여하는 기본적인 방법입니다. 그러나 일부 AWS 서비스를 사용하면 역할을 (프록시로 사용하는 대신) 리소스에 정책을 직접 연결할 수 있습니다. 교차 계정 액세스에 대한 역할과 리소스 기반 정책의 차이점을 알아보려면 **IAM 사용 설명서의 [IAM의 교차 계정 리소스 액세스](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)를 참조하세요.
+  **교차 서비스 액세스** - 일부 AWS 서비스는 다른 AWS 서비스의 기능을 사용합니다. 예를 들어, 서비스에서 직접 호출하면 일반적으로 해당 서비스는 Amazon EC2에서 애플리케이션을 실행하거나 Amazon S3에 객체를 저장합니다. 서비스는 직접 호출하는 보안 주체의 권한을 사용하거나, 서비스 역할을 사용하거나, 또는 서비스 연결 역할을 사용하여 이 작업을 수행할 수 있습니다.
  +  **전달 액세스 세션(FAS)** - IAM 사용자 또는 역할을 사용하여 AWS에서 작업을 수행하는 사람은 보안 주체로 간주됩니다. 일부 서비스를 사용하는 경우, 다른 서비스에서 다른 작업을 시작하는 작업을 수행할 수 있습니다. FAS는 AWS 서비스를 직접 호출하는 주체의 권한을 요청하는 AWS 서비스와 결합하여 다운스트림 서비스에 요청합니다. FAS 요청은 서비스에서 완료를 위해 다른 AWS 서비스 또는 리소스와의 상호 작용이 필요한 요청을 받은 경우에만 이루어집니다. 이 경우, 두 작업을 모두 수행할 수 있는 권한이 있어야 합니다. FAS 요청 시 정책 세부 정보는 [전달 액세스 세션](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html)을 참조하세요.
  +  **서비스 역할** - 서비스 역할은 서비스가 사용자를 대신하여 작업을 수행하기 위해 맡는 [IAM 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)입니다. IAM 관리자는 IAM 내에서 서비스 역할을 생성, 수정 및 삭제할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [AWS서비스에 대한 권한을 위임할 역할 생성](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)을 참조하세요.
  +  **서비스 연결 역할** - 서비스 연결 역할은 AWS 서비스에 연결된 서비스 역할의 한 유형입니다. 서비스는 사용자를 대신하여 태스크를 수행하기 위해 역할을 수임할 수 있습니다. 서비스 연결 역할은 AWS계정에 나타나고, 서비스가 소유합니다. IAM 관리자는 서비스 연결 역할의 권한을 볼 수 있지만 편집은 할 수 없습니다.
+  **Amazon EC2에서 실행 중인 애플리케이션** – IAM 역할을 사용하여 EC2 인스턴스에서 실행되고 AWS CLI 또는 AWS API 요청을 수행하는 애플리케이션의 임시 자격 증명을 관리할 수 있습니다. 이는 EC2 인스턴스 내에 액세스 키를 저장할 때 권장되는 방법입니다. EC2 인스턴스에 AWS역할을 할당하고 해당 역할을 모든 애플리케이션에서 사용할 수 있도록 하려면 인스턴스에 연결된 인스턴스 프로필을 생성합니다. 인스턴스 프로필에는 역할이 포함되어 있으며 EC2 인스턴스에서 실행되는 프로그램이 임시 보안 인증을 얻을 수 있습니다. 자세한 정보는 *IAM 사용 설명서*의 [IAM 역할을 사용하여 Amazon EC2 인스턴스에서 실행되는 애플리케이션에 권한 부여](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html)를 참조하세요.

IAM 역할을 사용할지 또는 IAM 사용자를 사용할지를 알아보려면 [IAM 사용 설명서](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html#id_which-to-choose_role)의 *IAM 역할(사용자 대신)을 생성하는 경우,*를 참조하세요.

## 정책을 사용한 액세스 관리
<a name="security-iam-access-manage"></a>

정책을 생성하고 AWS ID 또는 리소스에 연결하여 AWS에서 내 액세스를 제어합니다. 정책은 ID 또는 리소스와 연결될 때 해당 권한을 정의하는 AWS의 객체입니다. AWS는 보안 주체(사용자, 루트 사용자 또는 역할 세션)가 요청을 보낼 때 이러한 정책을 평가합니다. 정책에서 권한은 요청이 허용되거나 거부되는 지를 결정합니다. 대부분의 정책은 AWS에 JSON 문서로 저장됩니다. JSON 정책 문서의 구조와 콘텐츠에 대한 자세한 내용은 *IAM 사용 설명서*의 [JSON 정책 개요](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json)를 참조하세요.

관리자는 AWSJSON 정책을 사용하여 누가 무엇에 액세스할 수 있는지를 지정할 수 있습니다. 즉, 어떤 **보안 주체**가 어떤 **리소스**와 어떤 **조건**에서 **작업**을 수행할 수 있는지를 지정할 수 있습니다.

기본적으로, 사용자 및 역할에는 어떠한 권한도 없습니다. 사용자에게 사용자가 필요한 리소스에서 작업을 수행할 권한을 부여하려면 IAM 관리자가 IAM 정책을 생성하면 됩니다. 그런 다음 관리자가 IAM 정책을 역할에 추가하고, 사용자가 역할을 수임할 수 있습니다.

IAM 정책은 작업을 수행하기 위해 사용하는 방법과 상관없이 작업에 대한 권한을 정의합니다. 예를 들어, `iam:GetRole` 작업을 허용하는 정책이 있다고 가정합니다. 해당 정책이 있는 사용자는 AWS Management Console, AWS CLI 또는 AWS API에서 역할 정보를 가져올 수 있습니다.

### 자격 증명 기반 정책
<a name="security-iam-access-manage-id-based-policies"></a>

ID 기반 정책은 IAM 사용자, 사용자 그룹 또는 역할과 같은 ID에 연결할 수 있는 JSON 권한 정책 문서입니다. 이러한 정책은 사용자와 역할이 어떤 리소스와 어떤 조건에서 어떤 작업을 수행할 수 있는지를 제어합니다. 자격 증명 기반 정책을 생성하는 방법을 알아보려면 *IAM 사용 설명서*의 [IAM 정책 생성](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)을 참조하세요.

보안 인증 기반 정책은 *인라인 정책* 또는 *관리형 정책*으로 한층 더 분류할 수 있습니다. 인라인 정책은 단일 사용자, 그룹 또는 역할에 직접 포함됩니다. 관리형 정책은 AWS 계정에 속한 다수의 사용자, 그룹 및 역할에게 독립적으로 추가할 수 있는 정책입니다. 관리형 정책에는 AWS 관리형 정책과 고객 관리형 정책이 포함되어 있습니다. 관리형 정책 또는 인라인 정책을 선택하는 방법을 알아보려면 *IAM 사용 설명서*의 [관리형 정책과 인라인 정책의 선택](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#choosing-managed-or-inline)을 참조하세요.

### 리소스 기반 정책
<a name="security-iam-access-manage-resource-based-policies"></a>

리소스 기반 정책은 리소스에 연결하는 JSON 정책 설명서입니다. 리소스 기반 정책의 예제는 IAM *역할 신뢰 정책*과 Amazon S3 *버킷 정책*입니다. 리소스 기반 정책을 지원하는 서비스에서 서비스 관리자는 이러한 정책을 사용하여 특정 리소스에 대한 액세스를 통제할 수 있습니다. 정책이 연결된 리소스의 경우 정책은 지정된 위탁자가 해당 리소스와 어떤 조건에서 어떤 작업을 수행할 수 있는지를 정의합니다. 리소스 기반 정책에서 [보안 주체를 지정](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html)해야 합니다. 보안 주체에는 계정, 사용자, 역할, 페더레이션 사용자 또는 AWS 서비스가 포함될 수 있습니다.

리소스 기반 정책은 해당 서비스에 있는 인라인 정책입니다. 리소스 기반 정책에서는 IAM의 AWS 관리형 정책을 사용할 수 없습니다.

### 액세스 제어 목록(ACL)
<a name="security-iam-access-manage-acl"></a>

액세스 제어 목록(ACL)은 어떤 위탁자(계정 멤버, 사용자 또는 역할)가 리소스에 액세스할 수 있는 권한을 가지고 있는지를 제어합니다. ACL은 JSON 정책 문서 형식을 사용하지 않지만 리소스 기반 정책과 유사합니다.

Amazon S3, AWS WAF 및 Amazon VPC는 ACL을 지원하는 대표적인 서비스입니다. ACL에 관한 자세한 내용은 *Amazon Simple Storage Service 개발자 가이드*의 [액세스 제어 목록(ACL) 개요](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html)를 참조하세요.

### 기타 정책 타입
<a name="security-iam-access-manage-other-policies"></a>

 AWS는 비교적 일반적이지 않은 추가 정책 유형을 지원합니다. 이러한 정책 타입은 더 일반적인 정책 유형에 따라 사용자에게 부여되는 최대 권한을 설정할 수 있습니다.
+  **권한 경계** – 권한 경계는 ID 기반 정책에 따라 IAM 엔터티(IAM 사용자 또는 역할)에 부여할 수 있는 최대 권한을 설정하는 고급 기능입니다. 개체에 대한 권한 경계를 설정할 수 있습니다. 그 결과로 얻는 권한은 객체의 자격 증명 기반 정책과 그 권한 경계의 교집합입니다. `Principal` 필드에서 사용자나 역할을 지정하는 리소스 기반 정책은 권한 경계를 통해 제한되지 않습니다. 이러한 정책 중 하나에 포함된 명시적 거부는 허용을 재정의합니다. 권한 경계에 대한 자세한 정보는 *IAM 사용 설명서*의 [IAM 엔티티에 대한 권한 경계](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)를 참조하세요.
+  **서비스 제어 정책(SCPs)** – SCP는 AWS조직에서 조직 또는 조직 단위(OU)에 대한 최대 권한을 지정하는 JSON 정책입니다. AWS Organizations는 비즈니스가 소유하는 여러 AWS 계정을 그룹화하고 중앙에서 관리할 수 있는 서비스입니다. 조직에서 모든 기능을 활성화할 경우, 서비스 제어 정책(SCP)을 임의의 또는 모든 계정에 적용할 수 있습니다. SCP는 각 AWS 계정 루트 사용자를 비롯하여 멤버 계정의 엔터티에 대한 권한을 제한합니다. SCP에 대한 자세한 내용은 * AWS 조직 사용 설명서*에서 [서비스 제어 정책](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)을 참조하세요.
+  **세션 정책** – 세션 정책은 역할 또는 페더레이션 사용자에 대해 임시 세션을 프로그래밍 방식으로 생성할 때 파라미터로 전달하는 고급 정책입니다. 결과적으로 얻는 세션의 권한은 사용자 또는 역할의 자격 증명 기반 정책과 세션 정책의 교집합입니다. 또한 권한을 리소스 기반 정책에서 가져올 수도 있습니다. 이러한 정책 중 하나에 포함된 명시적 거부는 허용을 재정의합니다. 자세한 내용은 *IAM 사용 설명서*의 [세션 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session)을 참조하세요.

### 여러 정책 유형
<a name="security-iam-access-manage-multiple-policies"></a>

여러 정책 유형이 요청에 적용되는 경우, 결과 권한은 이해하기가 더 복잡합니다. 여러 정책 유형이 관련될 때 AWS가 요청을 허용할지를 결정하는 방법을 알아보려면 IAM 사용 설명서**의 [정책 평가 로직](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html)을 참조하세요.

# Amazon EKS가 IAM과 작동하는 방식
<a name="security-iam-service-with-iam"></a>

IAM을 사용하여 Amazon EKS에 대한 액세스를 관리하기 전에 Amazon EKS에서 사용할 수 있는 IAM 기능을 이해해야 합니다. Amazon EKS 및 기타 AWS 서비스에서 IAM을 사용하는 방법을 자세히 알아보려면 *IAM 사용 설명서*의 [IAM으로 작업하는 AWS 서비스](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)를 참조하세요.

**Topics**
+ [Amazon EKS 자격 증명 기반 정책](#security-iam-service-with-iam-id-based-policies)
+ [Amazon EKS 리소스 기반 정책](#security-iam-service-with-iam-resource-based-policies)
+ [Amazon EKS 태그를 기반으로 권한 부여](#security-iam-service-with-iam-tags)
+ [Amazon EKS IAM 역할](#security-iam-service-with-iam-roles)

## Amazon EKS 자격 증명 기반 정책
<a name="security-iam-service-with-iam-id-based-policies"></a>

IAM ID 기반 정책을 사용하면 허용되거나 거부되는 작업과 리소스뿐 아니라 작업이 허용되거나 거부되는 조건을 지정할 수 있습니다. Amazon EKS는 특정 작업, 리소스 및 조건 키를 지원합니다. JSON 정책에서 사용하는 모든 요소에 대해 알아보려면 *IAM 사용자 설명서*의 [IAM JSON 정책 요소 참조](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)를 참조하세요.

### 작업
<a name="security-iam-service-with-iam-id-based-policies-actions"></a>

관리자는 AWSJSON 정책을 사용하여 누가 무엇에 액세스할 수 있는지를 지정할 수 있습니다. 즉, 어떤 **보안 주체**가 어떤 **리소스**와 어떤 **조건**에서 **작업**을 수행할 수 있는지를 지정할 수 있습니다.

JSON 정책의 `Action` 요소는 정책에서 액세스를 허용하거나 거부하는 데 사용할 수 있는 작업을 설명합니다. 일반적으로 정책 작업의 이름은 연결된 AWSAPI 작업의 이름과 동일합니다. 일치하는 API 작업이 없는 *권한 전용 작업* 같은 몇 가지 예외도 있습니다. 정책에서 여러 작업이 필요한 몇 가지 작업도 있습니다. 이러한 추가 작업을 일컬어 *종속 작업*이라고 합니다.

연결된 작업을 수행할 수 있는 권한을 부여하기 위한 정책에 작업을 포함하세요.

Amazon EKS의 정책 작업은 작업 앞에 `eks:` 접두사를 사용합니다. 예를 들어, Amazon EKS 클러스터에 대한 기술 정보를 다운로드할 수 있는 권한을 부여하려면 정책에 `DescribeCluster` 작업을 포함합니다. 정책 문에는 `Action` 또는 `NotAction` 요소가 포함되어야 합니다.

명령문 하나에 여러 태스크를 지정하려면 다음과 같이 쉼표로 구분합니다.

```
"Action": ["eks:action1", "eks:action2"]
```

와일드카드(\$1)를 사용하여 여러 작업을 지정할 수 있습니다. 예를 들어, `Describe`라는 단어로 시작하는 모든 태스크를 지정하려면 다음 태스크를 포함합니다.

```
"Action": "eks:Describe*"
```

Amazon EKS 작업의 목록을 보려면 *서비스 인증 참조*의 [Amazon Elastic Kubernetes Service에서 정의한 작업](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelastickubernetesservice.html#amazonelastickubernetesservice-actions-as-permissions)을 참조하세요.

### 리소스
<a name="security-iam-service-with-iam-id-based-policies-resources"></a>

관리자는 AWS JSON 정책을 사용하여 누가 무엇에 액세스할 수 있는지를 지정할 수 있습니다. 즉, 어떤 **보안 주체**가 어떤 **리소스**와 어떤 **조건**에서 **작업**을 수행할 수 있는지를 지정할 수 있습니다.

`Resource` JSON 정책 요소는 작업이 적용되는 하나 이상의 객체를 지정합니다. 문에는 `Resource`또는 `NotResource`요소가 반드시 추가되어야 합니다. 모범 사례에 따라 [Amazon 리소스 이름(ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html)을 사용하여 리소스를 지정합니다. *리소스 수준 권한*이라고 하는 특정 리소스 유형을 지원하는 작업에 대해 이를 수행할 수 있습니다.

작업 나열과 같이 리소스 수준 권한을 지원하지 않는 작업의 경우, 와일드카드(\$1)를 사용하여 명령문이 모든 리소스에 적용됨을 나타냅니다.

```
"Resource": "*"
```

Amazon EKS 클러스터 리소스의 ARN은 다음과 같습니다.

```
            arn:aws:eks:region-code:account-id:cluster/cluster-name
```

ARN 형식에 대한 자세한 내용은 [Amazon 리소스 이름(ARN) 및 AWS 서비스 네임스페이스](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)를 참조하세요.

예를 들어, 문에서 이름이 *my-cluster*인 클러스터를 지정하려면 다음 ARN을 사용하세요.

```
"Resource": "arn:aws:eks:region-code:111122223333:cluster/my-cluster"
```

특정 계정 및 AWS 리전에 속한 모든 클러스터를 지정하려면 와일드카드(\$1)를 사용합니다.

```
"Resource": "arn:aws:eks:region-code:111122223333:cluster/*"
```

리소스 생성 작업과 같은 일부 Amazon EKS 작업은 특정 리소스에서 수행할 수 없습니다. 이러한 경우, 와일드카드(\$1)를 사용해야 합니다.

```
"Resource": "*"
```

Amazon EKS 리소스 유형 및 해당 ARN의 목록을 보려면 *서비스 인증 참조*의 [Amazon Elastic Kubernetes Service에서 정의한 리소스](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelastickubernetesservice.html#amazonelastickubernetesservice-resources-for-iam-policies)를 참조하세요. 각 리소스의 ARN을 지정할 수 있는 작업을 알아보려면 [Amazon Elastic Kubernetes Service에서 정의한 작업](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelastickubernetesservice.html#amazonelastickubernetesservice-actions-as-permissions)을 참조하세요.

### 조건 키
<a name="security-iam-service-with-iam-id-based-policies-conditionkeys"></a>

Amazon EKS는 자체 조건 키 세트를 정의하며 일부 글로벌 조건 키 사용도 지원합니다. 모든 AWS전역 조건 키를 보려면 IAM 사용 설명서의 [AWS전역 조건 컨텍스트 키](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)를 참조하세요.**

OpenID Connect 공급자를 클러스터에 연결할 때 조건 키를 설정할 수 있습니다. 자세한 내용은 [IAM; 정책 예](authenticate-oidc-identity-provider.md#oidc-identity-provider-iam-policy) 섹션을 참조하세요.

모든 Amazon EC2 작업은 `aws:RequestedRegion` 및 `ec2:Region` 조건 키를 지원합니다. 자세한 내용은 [예제: 특정 AWS 리전으로 액세스 제한](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ExamplePolicies_EC2.html#iam-example-region)을 참조하세요.

Amazon EKS 조건 키 목록을 보려면 *서비스 인증 참조*의 [Amazon Elastic Kubernetes Service의 조건 키](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelastickubernetesservice.html#amazonelastickubernetesservice-policy-keys)를 참조하세요. 조건 키를 사용할 수 있는 작업과 리소스를 알아보려면 [Amazon Elastic Kubernetes Service에서 정의한 작업](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelastickubernetesservice.html#amazonelastickubernetesservice-actions-as-permissions)을 참조하세요.

### 예제
<a name="security-iam-service-with-iam-id-based-policies-examples"></a>

Amazon EKS 자격 증명 기반 정책 예제를 보려면 [Amazon EKS 자격 증명 기반 정책 예제](security-iam-id-based-policy-examples.md) 섹션을 참조하세요.

Amazon EKS 클러스터를 생성할 경우, 클러스터를 생성하는 [IAM 보안 주체](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal)에게는 Amazon EKS 제어 영역의 클러스터 역할 기반 액세스 제어(RBAC) 구성에 `system:masters` 권한이 자동으로 부여됩니다. 이 보안 주체는 표시되는 구성에 나타나지 않으므로 클러스터를 원래 생성한 보안 주체를 추적해야 합니다. 추가 IAM 위탁자에 클러스터와 상호 작용할 수 있는 기능을 부여하려면 Kubernetes 내에서 `aws-auth ConfigMap`을 편집하고 `aws-auth ConfigMap`에 지정하는 `group`의 이름으로 Kubernetes `rolebinding` 또는 `clusterrolebinding`을 생성합니다.

ConfigMap 작업에 대한 자세한 내용은 [IAM 사용자 및 역할에 Kubernetes API에 대한 액세스 권한 부여](grant-k8s-access.md) 세션을 참조하세요.

## Amazon EKS 리소스 기반 정책
<a name="security-iam-service-with-iam-resource-based-policies"></a>

Amazon EKS는 리소스 기반 정책을 지원하지 않습니다.

## Amazon EKS 태그를 기반으로 권한 부여
<a name="security-iam-service-with-iam-tags"></a>

Amazon EKS 리소스에 태그를 연결하거나 Amazon EKS에 대한 요청에서 태그를 전달할 수 있습니다. 태그에 근거하여 액세스를 제어하려면 `aws:ResourceTag/key-name `, `aws:RequestTag/key-name `또는 `aws:TagKeys`조건 키를 사용하여 정책의 [조건 요소](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)에 태그 정보를 제공합니다. Amazon EKS 리소스 태깅에 대한 자세한 내용은 [태그를 사용하여 Amazon EKS 리소스 구성](eks-using-tags.md) 섹션을 참조하세요. 조건 키의 태그를 사용할 수 있는 작업에 대한 자세한 내용은 [Service Authorization Reference](https://docs.aws.amazon.com/service-authorization/latest/reference/reference.html)에서 [Amazon EKS가 정의한 작업](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelastickubernetesservice.html#amazonelastickubernetesservice-actions-as-permissions)을 참조하세요.

## Amazon EKS IAM 역할
<a name="security-iam-service-with-iam-roles"></a>

IAM [역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)은 특정 권한을 가지고 있는 AWS 계정 내 엔터티입니다.

### Amazon EKS에서 임시 자격 증명 사용
<a name="security-iam-service-with-iam-roles-tempcreds"></a>

임시 보안 인증을 사용하여 페더레이션을 통해 로그인하거나, IAM 역할을 맡거나, 교차 계정 역할을 맡을 수 있습니다. [AssumeRole 또는 [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html) 같은 AWS](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) STS API 작업을 직접 호출하여 임시 보안 자격 증명을 가져옵니다.

Amazon EKS는 임시 자격 증명 사용을 지원합니다.

### 서비스 연결 역할
<a name="security-iam-service-with-iam-roles-service-linked"></a>

 [서비스 연결 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-service-linked-role)을 사용하면 AWS 서비스에서 다른 서비스의 리소스에 액세스하여 사용자 대신 작업을 완료할 수 있습니다. 서비스 연결 역할은 IAM 계정에 나타나고 서비스가 소유합니다. 관리자는 서비스 연결 역할의 권한을 볼 수 있지만 편집은 할 수 없습니다.

Amazon EKS는 서비스 연결 역할을 지원합니다. Amazon EKS 서비스 연결 역할 생성 또는 관리에 대한 자세한 내용은 [Amazon EKS에 대해 서비스 연결 역할 사용](using-service-linked-roles.md) 섹션을 참조하세요.

### 서비스 역할
<a name="security-iam-service-with-iam-roles-service"></a>

이 기능을 사용하면 서비스가 사용자를 대신하여 [서비스 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-service-role)을 수임할 수 있습니다. 이 역할을 사용하면 서비스가 다른 서비스의 리소스에 액세스해 사용자를 대신해 작업을 완료할 수 있습니다. 서비스 역할은 IAM 계정에 나타나고, 해당 계정이 소유합니다. 즉, IAM 관리자가 이 역할에 대한 권한을 변경할 수 있습니다. 그러나 권한을 변경하면 서비스의 기능이 손상될 수 있습니다.

Amazon EKS는 서비스 역할을 지원합니다. 자세한 내용은 [Amazon EKS 클러스터 IAM 역할](cluster-iam-role.md) 및 [Amazon EKS 노드 IAM 역할](create-node-role.md) 섹션을 참조하세요.

### Amazon EKS에서 IAM 역할 선택
<a name="security-iam-service-with-iam-roles-choose"></a>

Amazon EKS에서 클러스터 리소스를 생성할 경우 Amazon EKS가 사용자 대신 다른 여러 AWS 리소스에 액세스하도록 허용하는 역할을 선택해야 합니다. 이전에 서비스 역할을 생성한 경우 Amazon EKS는 선택할 수 있는 역할 목록을 제공합니다. Amazon EKS 관리형 정책이 연결된 역할을 선택하는 것이 중요합니다. 자세한 내용은 [기존 클러스터 역할 확인](cluster-iam-role.md#check-service-role) 및 [기존 노드 역할 확인](create-node-role.md#check-worker-node-role) 섹션을 참조하세요.

# Amazon EKS 자격 증명 기반 정책 예제
<a name="security-iam-id-based-policy-examples"></a>

기본적으로 IAM 사용자 및 역할은 Amazon EKS 리소스를 생성하거나 수정할 수 있는 권한이 없습니다. 또한 AWS Management Console, AWS CLI 또는 AWS API를 사용해 작업을 수행할 수 없습니다. IAM 관리자는 지정된 리소스에서 특정 API 작업을 수행할 수 있는 권한을 사용자와 역할에게 부여하는 IAM 정책을 생성해야 합니다. 그런 다음 관리자는 해당 권한이 필요한 IAM 사용자 또는 그룹에 이러한 정책을 연결해야 합니다.

이러한 예제 JSON 정책 문서를 사용하여 IAM ID 기반 정책을 생성하는 방법을 알아보려면 *IAM 사용자 설명서*의 [JSON 탭에서 정책 생성](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor)을 참조하세요.

Amazon EKS 클러스터를 생성할 경우, 클러스터를 생성하는 [IAM 보안 주체](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal)에게는 Amazon EKS 제어 영역의 클러스터 역할 기반 액세스 제어(RBAC) 구성에 `system:masters` 권한이 자동으로 부여됩니다. 이 보안 주체는 표시되는 구성에 나타나지 않으므로 클러스터를 원래 생성한 보안 주체를 추적해야 합니다. 추가 IAM 위탁자에 클러스터와 상호 작용할 수 있는 기능을 부여하려면 Kubernetes 내에서 `aws-auth ConfigMap`을 편집하고 `aws-auth ConfigMap`에 지정하는 `group`의 이름으로 Kubernetes `rolebinding` 또는 `clusterrolebinding`을 생성합니다.

ConfigMap 작업에 대한 자세한 내용은 [IAM 사용자 및 역할에 Kubernetes API에 대한 액세스 권한 부여](grant-k8s-access.md) 세션을 참조하세요.

**Topics**
+ [정책 모범 사례](#security-iam-service-with-iam-policy-best-practices)
+ [Amazon EKS 콘솔 사용](#security-iam-id-based-policy-examples-console)
+ [IAM 사용자가 자체 권한을 볼 수 있도록 허용](#security-iam-id-based-policy-examples-view-own-permissions)
+ [AWS Cloud에서 Kubernetes 클러스터 생성](#policy-create-cluster)
+ [Outpost에서 로컬 Kubernetes 클러스터 생성](#policy-create-local-cluster)
+ [Kubernetes 클러스터 업데이트](#policy-example1)
+ [모든 클러스터 나열 또는 설명](#policy-example2)

## 정책 모범 사례
<a name="security-iam-service-with-iam-policy-best-practices"></a>

ID 기반 정책에 따라 계정에서 사용자가 Amazon EKS 리소스를 생성, 액세스 또는 삭제할 수 있는지 여부가 결정됩니다. 이 작업으로 인해 AWS 계정에 비용이 발생할 수 있습니다. 자격 증명 기반 정책을 생성하거나 편집할 때는 다음 지침과 권장 사항을 따릅니다.
+  **AWS 관리형 정책으로 시작하고 최소 권한을 향해 나아가기** - 사용자 및 워크로드에 권한 부여를 시작하려면 많은 일반 사용 사례에 대한 권한을 부여하는 *AWS 관리형 정책*을 사용합니다. AWS 계정에서 사용할 수 있습니다. 사용 사례에 고유한 AWS고객 관리형 정책을 정의하여 권한을 줄이는 것이 좋습니다. 자세한 내용은 *IAM 사용자 설명서*의 [AWS 관리형 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) 또는 [AWS직무에 대한 관리형 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)을 참조하세요.
+  **최소 권한 적용** – IAM 정책을 사용하여 권한을 설정하는 경우, 작업을 수행하는 데 필요한 권한만 부여합니다. 이렇게 하려면 *최소 권한*으로 알려진 특정 조건에서 특정 리소스에 대해 수행할 수 있는 작업을 정의합니다. IAM을 사용하여 권한을 적용하는 방법에 대한 자세한 정보는 *IAM 사용자 설명서*에 있는 [IAM의 정책 및 권한](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)을 참조하세요.
+  **IAM 정책의 조건을 사용하여 액세스 추가 제한** – 정책에 조건을 추가하여 작업 및 리소스에 대한 액세스를 제한할 수 있습니다. 예를 들어, SSL을 사용하여 모든 요청을 전송해야 한다고 지정하는 정책 조건을 작성할 수 있습니다. AWS CloudFormation와 같이, 특정 AWS 서비스를 통해 사용되는 경우에만 서비스 작업에 대한 액세스 권한을 부여할 수도 있습니다. 자세한 내용은 *IAM 사용자 설명서*의 [IAM JSON 정책 요소: 조건](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)을 참조하세요.
+  **IAM Access Analyzer를 통해 IAM 정책을 확인하여 안전하고 기능적인 권한 보장** - IAM Access Analyzer에서는 IAM 정책 언어(JSON)와 모범 사례가 정책에서 준수되도록 새로운 및 기존 정책을 확인합니다. IAM Access Analyzer는 100개 이상의 정책 확인 항목과 실행 가능한 추천을 제공하여 안전하고 기능적인 정책을 작성하도록 돕습니다. 자세한 정보는 *IAM 사용 설명서*의 [IAM Access Analyzer 정책 검증](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)을 참조하세요.
+  **다중 인증(MFA) 필요** – AWS 계정에 IAM 사용자 또는 루트 사용자가 필요한 시나리오가 있는 경우, 추가 보안을 위해 MFA를 설정합니다. API 작업을 직접적으로 직접 호출할 때 MFA가 필요하면 정책에 MFA 조건을 추가합니다. 자세한 정보는 *IAM 사용 설명서*의 [MFA 보호 API 액세스 구성](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html)을 참조하세요.

IAM의 모범 사례에 대한 자세한 내용은 *IAM 사용 설명서*의 [IAM의 보안 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)를 참조하세요.

## Amazon EKS 콘솔 사용
<a name="security-iam-id-based-policy-examples-console"></a>

Amazon EKS 콘솔에 액세스하려면 [IAM 보안 주체](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal)는 최소한의 권한 집합이 있어야 합니다. 이러한 권한은 보안 주체가 AWS 계정에서 Amazon EKS 리소스에 대한 세부 정보를 나열하고 볼 수 있도록 허용합니다. 최소 필수 권한보다 더 제한적인 보안 인증 정보 기반 정책을 만들면 콘솔이 해당 정책이 연결된 보안 주체에 대해 의도대로 작동하지 않습니다.

이러한 IAM 보안 주체가 Amazon EKS 콘솔을 계속 사용할 수 있도록 하려면 `AmazonEKSAdminPolicy`와 같은 고유한 자체 이름으로 정책을 생성합니다. 정책을 보안 주체에게 연결하세요. 자세한 정보는 *IAM 사용 설명서*의 [IAM 자격 증명 권한 추가 및 제거](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) 섹션을 참조하세요.

**중요**  
다음 정책 예를 사용하면 보안 주체는 콘솔의 **구성** 탭에 표시되는 정보를 볼 수 있습니다. AWS Management Console에 있는 **개요**와 **리소스** 탭에서 정보를 보려면 위탁자에게 Kubernetes 권한도 필요합니다. 자세한 내용은 [필수 권한](view-kubernetes-resources.md#view-kubernetes-resources-permissions) 섹션을 참조하세요.

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "eks:*"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "eks.amazonaws.com"
                }
            }
        }
    ]
}
```

AWS CLI 또는 AWS API만 직접 호출하는 보안 주체에는 최소 콘솔 권한을 허용할 필요가 없습니다. 그 대신, 수행하려는 API 작업과 일치하는 작업에만 액세스할 수 있도록 합니다.

## IAM 사용자가 자체 권한을 볼 수 있도록 허용
<a name="security-iam-id-based-policy-examples-view-own-permissions"></a>

이 예제는 IAM 사용자가 자신의 사용자 ID에 연결된 인라인 및 관리형 정책을 볼 수 있도록 허용하는 정책을 생성하는 방법을 보여 줍니다. 이 정책에는 콘솔에서 또는 AWS CLI나 AWS API를 사용하여 프로그래밍 방식으로 이 작업을 완료할 수 있는 권한이 포함됩니다.

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS Cloud에서 Kubernetes 클러스터 생성
<a name="policy-create-cluster"></a>

이 예제 정책에는 *us-west-2* AWS 리전에서 *my-cluster*라는 Amazon EKS 클러스터를 생성하는 데 필요한 최소 권한이 포함되어 있습니다. AWS 리전을 클러스터를 생성할 AWS 리전으로 바꿀 수 있습니다. AWS Management Console에 **정책의 작업이 리소스 수준 권한을 지원하지 않으므로 `All resources`를 선택해야 합니다.**라는 경고가 표시되면 무시해도 됩니다. 계정에 이미 *AWSServiceRoleForAmazonEKS* 역할이 있는 경우 정책에서 `iam:CreateServiceLinkedRole` 작업을 제거할 수 있습니다. 계정에 Amazon EKS 클러스터를 생성한 적이 있다면 삭제하지 않는 한 이 역할이 이미 존재합니다.

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "eks:CreateCluster",
            "Resource": "arn:aws:eks:us-west-2:111122223333:cluster/my-cluster"
        },
        {
            "Effect": "Allow",
            "Action": "iam:CreateServiceLinkedRole",
            "Resource": "arn:aws:iam::111122223333:role/aws-service-role/eks.amazonaws.com/AWSServiceRoleForAmazonEKS",
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "iam:AWSServiceName": "eks"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::111122223333:role/cluster-role-name"
        }
    ]
}
```

## Outpost에서 로컬 Kubernetes 클러스터 생성
<a name="policy-create-local-cluster"></a>

이 예제 정책에는 *us-west-2* AWS 리전의 Outposts에서 *my-cluster*라는 Amazon EKS 로컬 클러스터를 만드는 데 필요한 최소 권한이 포함되어 있습니다. AWS 리전을 클러스터를 생성할 AWS 리전으로 바꿀 수 있습니다. AWS Management Console에 **정책의 작업이 리소스 수준 권한을 지원하지 않으므로 `All resources`를 선택해야 합니다.**라는 경고가 표시되면 무시해도 됩니다. 계정에 이미 `AWSServiceRoleForAmazonEKSLocalOutpost` 역할이 있는 경우 정책에서 `iam:CreateServiceLinkedRole` 작업을 제거할 수 있습니다. 계정의 Outpost에 Amazon EKS 로컬 클러스터를 생성한 적이 있다면 삭제하지 않는 한 이 역할이 이미 존재합니다.

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "eks:CreateCluster",
            "Resource": "arn:aws:eks:us-west-2:111122223333:cluster/my-cluster"
        },
        {
            "Action": [
                "ec2:DescribeSubnets",
                "ec2:DescribeVpcs",
                "iam:GetRole"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Effect": "Allow",
            "Action": "iam:CreateServiceLinkedRole",
            "Resource": "arn:aws:iam::111122223333:role/aws-service-role/outposts.eks-local.amazonaws.com/AWSServiceRoleForAmazonEKSLocalOutpost"
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:PassRole",
                "iam:ListAttachedRolePolicies"
            ],
            "Resource": "arn:aws:iam::111122223333:role/cluster-role-name"
        },
        {
            "Action": [
                "iam:CreateInstanceProfile",
                "iam:TagInstanceProfile",
                "iam:AddRoleToInstanceProfile",
                "iam:GetInstanceProfile",
                "iam:DeleteInstanceProfile",
                "iam:RemoveRoleFromInstanceProfile"
            ],
            "Resource": "arn:aws:iam::*:instance-profile/eks-local-*",
            "Effect": "Allow"
        }
    ]
}
```

## Kubernetes 클러스터 업데이트
<a name="policy-example1"></a>

이 예제 정책에는 us-west-2 AWS 리전에서 *my-cluster*라는 클러스터를 업데이트하는 데 필요한 최소 권한이 포함되어 있습니다.

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "eks:UpdateClusterVersion",
            "Resource": "arn:aws:eks:us-west-2:111122223333:cluster/my-cluster"
        }
    ]
}
```

## 모든 클러스터 나열 또는 설명
<a name="policy-example2"></a>

이 예제 정책에는 계정의 모든 클러스터를 나열하고 설명하는 데 필요한 최소 권한이 포함되어 있습니다. [IAM 보안 주체](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal)는 `update-kubeconfig` AWS CLI 명령을 사용하기 위해 클러스터를 나열하고 설명할 수 있어야 합니다.

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "eks:DescribeCluster",
                "eks:ListClusters"
            ],
            "Resource": "*"
        }
    ]
}
```

# Amazon EKS에 대해 서비스 연결 역할 사용
<a name="using-service-linked-roles"></a>

Amazon Elastic Kubernetes Service는 AWS ID 및 액세스 관리(IAM) [서비스 연결 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-service-linked-role)을 사용합니다. 서비스 연결 역할은 Amazon EKS에 직접 연결된 고유한 유형의 IAM 역할입니다. 서비스 연결 역할은 Amazon EKS에서 사전 정의하며 서비스에서 다른 AWS 서비스를 자동으로 직접 호출하기 위해 필요한 모든 권한을 포함합니다.

**Topics**
+ [Amazon EKS 클러스터에 대한 역할 사용](using-service-linked-roles-eks.md)
+ [Amazon EKS 노드 그룹에 대한 역할 사용](using-service-linked-roles-eks-nodegroups.md)
+ [Amazon EKS Fargate 프로필에 역할 사용](using-service-linked-roles-eks-fargate.md)
+ [역할을 사용하여 Amazon EKS에 Kubernetes 클러스터 연결](using-service-linked-roles-eks-connector.md)
+ [Outpost에서 Amazon EKS 로컬 클러스터에 대한 역할 사용](using-service-linked-roles-eks-outpost.md)
+ [Amazon EKS 대시보드에 역할 사용](using-service-linked-roles-eks-dashboard.md)

# Amazon EKS 클러스터에 대한 역할 사용
<a name="using-service-linked-roles-eks"></a>

Amazon Elastic Kubernetes Service는 AWS ID 및 액세스 관리(IAM) [서비스 연결 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-service-linked-role)을 사용합니다. 서비스 연결 역할은 Amazon EKS에 직접 연결된 고유한 유형의 IAM 역할입니다. 서비스 연결 역할은 Amazon EKS에서 사전 정의하며 서비스에서 다른 AWS 서비스를 자동으로 호출하기 위해 필요한 모든 권한을 포함합니다.

필요한 권한을 수동으로 추가할 필요가 없으므로 서비스 연결 역할은 Amazon EKS를 더 쉽게 설정할 수 있습니다. Amazon EKS에서 서비스 연결 역할의 권한을 정의하므로 다르게 정의되지 않은 한, Amazon EKS만 해당 역할을 수임할 수 있습니다. 정의된 권한에는 신뢰 정책과 권한 정책이 포함되며 이 권한 정책은 다른 IAM 엔티티에 연결할 수 없습니다.

먼저 관련 리소스를 삭제한 후에만 서비스 연결 역할을 삭제할 수 있습니다. 이렇게 하면 리소스에 대한 액세스 권한을 실수로 삭제할 수 없기 때문에 Amazon EKS 리소스가 보호됩니다.

서비스 연결 역할을 지원하는 기타 서비스에 대한 자세한 내용은 [IAM으로 작업하는 AWS 서비스](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)를 참조하고 **서비스 연결 역할** 열에 **예**가 있는 서비스를 찾으세요. 해당 서비스에 대한 서비스 연결 역할 설명서를 보려면 링크가 있는 **예**를 선택합니다.

## Amazon EKS에 대한 서비스 연결 역할 권한
<a name="service-linked-role-permissions-eks"></a>

Amazon EKS는 `AWSServiceRoleForAmazonEKS`이라는 서비스 연결 역할을 사용합니다. 이 역할을 통해 Amazon EKS는 계정의 클러스터를 관리할 수 있습니다. 연결된 정책은 이 역할이 네트워크 인터페이스, 보안 그룹, 로그 및 VPC와 같은 리소스를 관리하도록 허용합니다.

**참고**  
`AWSServiceRoleForAmazonEKS` 서비스 연결 역할은 클러스터 생성에 필요한 역할과 다릅니다. 자세한 내용은 [Amazon EKS 클러스터 IAM 역할](cluster-iam-role.md) 섹션을 참조하세요.

`AWSServiceRoleForAmazonEKS` 서비스 연결 역할은 역할을 위임하기 위해 다음 서비스를 신뢰합니다.
+  `eks.amazonaws.com` 

역할 권한 정책은 Amazon EKS가 지정된 리소스에서 다음 작업을 완료하도록 허용합니다.
+  [AmazonEKSServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSServiceRolePolicy.html) 

IAM 엔터티(사용자, 그룹, 역할 등)가 서비스 링크 역할을 생성하고 편집하거나 삭제할 수 있도록 권한을 구성할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 권한](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 생성
<a name="create-service-linked-role-eks"></a>

서비스 링크 역할은 수동으로 생성할 필요가 없습니다. AWS Management Console, AWS CLI 또는 AWS API에서 클러스터를 생성하면 Amazon EKS에서 서비스 연결 역할이 자동으로 생성됩니다.

이 서비스 연결 역할을 삭제했다가 다시 생성해야 하는 경우 동일한 프로세스를 사용하여 계정에서 역할을 다시 생성할 수 있습니다. 클러스터를 생성할 때 Amazon EKS에서는 서비스 연결 역할을 다시 생성합니다.

## Amazon EKS에 대한 서비스 연결 역할 편집
<a name="edit-service-linked-role-eks"></a>

Amazon EKS에서는 `AWSServiceRoleForAmazonEKS` 서비스 연결 역할을 편집하도록 허용하지 않습니다. 서비스 링크 역할을 생성한 후에는 다양한 개체가 역할을 참조할 수 있기 때문에 역할 이름을 변경할 수 없습니다. 하지만 IAM을 사용하여 역할의 설명을 편집할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 편집](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 삭제
<a name="delete-service-linked-role-eks"></a>

서비스 연결 역할이 필요한 기능 또는 서비스가 더 이상 필요 없는 경우에는 해당 역할을 삭제하는 것이 좋습니다. 따라서 적극적으로 모니터링하거나 유지하지 않는 미사용 엔터티가 없도록 합니다. 단, 서비스 연결 역할을 정리해야 수동으로 삭제할 수 있습니다.

### 서비스 연결 역할을 정리
<a name="service-linked-role-review-before-delete-eks"></a>

IAM을 사용하여 서비스 연결 역할을 삭제하기 전에 먼저 역할에서 사용되는 리소스를 삭제해야 합니다.

**참고**  
리소스를 삭제하려고 할 때 Amazon EKS 서비스가 역할을 사용 중이면 삭제에 실패할 수 있습니다. 이 문제가 발생하면 몇 분 기다렸다가 작업을 다시 시도하세요.

1. [Amazon EKS 콘솔](https://console.aws.amazon.com/eks/home#/clusters)을 엽니다.

1. 좌측 탐색 창에서 **클러스터**를 선택합니다.

1. 클러스터에 노드 그룹 또는 Fargate 프로필이 있는 경우 클러스터를 삭제하기 전에 이를 삭제해야 합니다. 자세한 내용을 알아보려면 [클러스터에서 관리형 노드 그룹 삭제](delete-managed-node-group.md) 및 [Fargate 프로필 삭제](delete-fargate-profile.md) 섹션을 참조하세요.

1. **클러스터** 페이지에서 삭제하려는 클러스터를 선택하고 **삭제**를 선택합니다.

1. 삭제 확인 창에 클러스터 이름을 입력한 다음 **삭제**를 선택합니다.

1. 계정의 다른 클러스터에 대해 이 절차를 반복합니다. 모든 삭제 작업이 완료될 때까지 기다립니다.

### 수동으로 서비스 연결 역할 삭제
<a name="slr-manual-delete-eks"></a>

IAM 콘솔, AWS CLI 또는 AWS API를 사용하여 `AWSServiceRoleForAmazonEKS` 서비스 연결 역할을 삭제합니다. 자세한 내용은 IAM 사용 설명서의 [서비스에 연결 역할 삭제](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)**를 참조하세요.

## Amazon EKS 서비스 연결 역할을 지원하는 리전
<a name="slr-regions-eks"></a>

Amazon EKS는 서비스가 제공되는 모든 리전에서 서비스 연결 역할 사용을 지원합니다. 자세한 내용을 알아보려면 [Amazon EKS 엔드포인트 및 할당량](https://docs.aws.amazon.com/general/latest/gr/eks.html)을 참조하세요.

# Amazon EKS 노드 그룹에 대한 역할 사용
<a name="using-service-linked-roles-eks-nodegroups"></a>

Amazon EKS는 AWS ID 및 액세스 관리(IAM) [service-linked 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-service-linked-role)을 사용합니다. 서비스 연결 역할은 Amazon EKS에 직접 연결된 고유한 유형의 IAM 역할입니다. 서비스 연결 역할은 Amazon EKS에서 사전 정의하며 서비스에서 다른 AWS 서비스를 자동으로 호출하기 위해 필요한 모든 권한을 포함합니다.

필요한 권한을 수동으로 추가할 필요가 없으므로 서비스 연결 역할은 Amazon EKS를 더 쉽게 설정할 수 있습니다. Amazon EKS에서 서비스 연결 역할의 권한을 정의하므로 다르게 정의되지 않은 한, Amazon EKS만 해당 역할을 수임할 수 있습니다. 정의된 권한에는 신뢰 정책과 권한 정책이 포함되며 이 권한 정책은 다른 IAM 엔티티에 연결할 수 없습니다.

먼저 관련 리소스를 삭제한 후에만 서비스 연결 역할을 삭제할 수 있습니다. 이렇게 하면 리소스에 대한 액세스 권한을 실수로 삭제할 수 없기 때문에 Amazon EKS 리소스가 보호됩니다.

서비스 연결 역할을 지원하는 기타 서비스에 대한 자세한 내용은 [IAM으로 작업하는 AWS 서비스](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)를 참조하고 **서비스 연결 역할** 열에 **예**가 있는 서비스를 찾으세요. 해당 서비스에 대한 서비스 연결 역할 설명서를 보려면 링크가 있는 **예**를 선택합니다.

## Amazon EKS에 대한 서비스 연결 역할 권한
<a name="service-linked-role-permissions-eks-nodegroups"></a>

Amazon EKS는 `AWSServiceRoleForAmazonEKSNodegroup`이라는 서비스 연결 역할을 사용합니다. 이 역할을 통해 Amazon EKS는 계정의 노드 그룹을 관리할 수 있습니다. 연결된 `AWSServiceRoleForAmazonEKSNodegroup` 정책은 이 역할이 Auto Scaling 그룹, 보안 그룹, 시작 템플릿, IAM 인스턴스 프로파일 등의 리소스를 관리하도록 허용합니다. 자세한 내용은 [AWS 관리형 정책: AWSServiceRoleForAmazonEKSNodegroup](security-iam-awsmanpol.md#security-iam-awsmanpol-awsserviceroleforamazoneksnodegroup) 단원을 참조하십시오.

`AWSServiceRoleForAmazonEKSNodegroup` 서비스 연결 역할은 역할을 위임하기 위해 다음 서비스를 신뢰합니다.
+  `eks-nodegroup.amazonaws.com` 

역할 권한 정책은 Amazon EKS가 지정된 리소스에서 다음 작업을 완료하도록 허용합니다.
+  [AWSServiceRoleForAmazonEKSNodegroup](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSServiceRoleForAmazonEKSNodegroup.html) 

IAM 엔터티(사용자, 그룹, 역할 등)가 서비스 링크 역할을 생성하고 편집하거나 삭제할 수 있도록 권한을 구성할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 권한](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 생성
<a name="create-service-linked-role-eks-nodegroups"></a>

서비스 링크 역할은 수동으로 생성할 필요가 없습니다. AWS Management Console, AWS CLI 또는 AWS API에서 관리형 노드 그룹을 생성하면 Amazon EKS에서 서비스 연결 역할이 자동으로 생성됩니다.

**중요**  
이러한 서비스 연결 역할은 해당 역할이 지원하는 기능을 사용하는 다른 서비스에서 작업을 완료했을 경우 계정에 나타날 수 있습니다. Amazon EKS 서비스가 서비스 연결 역할을 지원하기 시작한 2017년 1월 1일 이전에 이 서비스를 사용했다면 Amazon EKS가 사용자 계정에 AWSServiceRoleForAmazonEKSNodegroup 역할을 이미 생성했습니다. 자세한 내용은 [내 IAM 계정에 표시되는 새 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_roles.html#troubleshoot_roles_new-role-appeared)을 참조하세요.

### Amazon EKS(AWS API)에서 서비스 연결 역할 생성
<a name="create-service-linked-role-service-api-eks-nodegroups"></a>

서비스 링크 역할은 수동으로 생성할 필요가 없습니다. AWS Management Console, AWS CLI 또는 AWS API에서 관리형 노드 그룹을 생성하면 Amazon EKS에서 서비스 연결 역할이 자동으로 생성됩니다.

이 서비스 연결 역할을 삭제했다가 다시 생성해야 하는 경우 동일한 프로세스를 사용하여 계정에서 역할을 다시 생성할 수 있습니다. 다른 관리형 노드 그룹을 생성할 때 Amazon EKS가 서비스 연결 역할을 다시 생성합니다.

## Amazon EKS에 대한 서비스 연결 역할 편집
<a name="edit-service-linked-role-eks-nodegroups"></a>

Amazon EKS에서는 `AWSServiceRoleForAmazonEKSNodegroup` 서비스 연결 역할을 편집하도록 허용하지 않습니다. 서비스 링크 역할을 생성한 후에는 다양한 개체가 역할을 참조할 수 있기 때문에 역할 이름을 변경할 수 없습니다. 하지만 IAM을 사용하여 역할의 설명을 편집할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 편집](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 삭제
<a name="delete-service-linked-role-eks-nodegroups"></a>

서비스 연결 역할이 필요한 기능 또는 서비스가 더 이상 필요 없는 경우에는 해당 역할을 삭제하는 것이 좋습니다. 따라서 적극적으로 모니터링하거나 유지하지 않는 미사용 엔터티가 없도록 합니다. 단, 서비스 연결 역할을 정리해야 수동으로 삭제할 수 있습니다.

### 서비스 연결 역할을 정리
<a name="service-linked-role-review-before-delete-eks-nodegroups"></a>

IAM을 사용하여 서비스 연결 역할을 삭제하기 전에 먼저 역할에서 사용되는 리소스를 삭제해야 합니다.

**참고**  
리소스를 삭제하려고 할 때 Amazon EKS 서비스가 역할을 사용 중이면 삭제에 실패할 수 있습니다. 이 문제가 발생하면 몇 분 기다렸다가 작업을 다시 시도하세요.

1. [Amazon EKS 콘솔](https://console.aws.amazon.com/eks/home#/clusters)을 엽니다.

1. 좌측 탐색 창에서 **클러스터**를 선택합니다.

1. **컴퓨팅** 탭을 선택합니다.

1. **노드 그룹** 섹션에서 삭제할 노드 그룹을 선택합니다.

1. 삭제 확인 창에 노드 그룹 이름을 입력한 다음 **삭제**를 선택합니다.

1. 클러스터의 다른 노드 그룹에 대해 이 절차를 반복합니다. 모든 삭제 작업이 완료될 때까지 기다립니다.

### 수동으로 서비스 연결 역할 삭제
<a name="slr-manual-delete-eks-nodegroups"></a>

IAM 콘솔, AWS CLI 또는 AWS API를 사용하여 `AWSServiceRoleForAmazonEKSNodegroup` 서비스 연결 역할을 삭제합니다. 자세한 내용은 IAM 사용 설명서의 [서비스에 연결 역할 삭제](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)**를 참조하세요.

## Amazon EKS 서비스 연결 역할을 지원하는 리전
<a name="slr-regions-eks-nodegroups"></a>

Amazon EKS는 서비스가 제공되는 모든 리전에서 서비스 연결 역할 사용을 지원합니다. 자세한 내용을 알아보려면 [Amazon EKS 엔드포인트 및 할당량](https://docs.aws.amazon.com/general/latest/gr/eks.html)을 참조하세요.

# Amazon EKS Fargate 프로필에 역할 사용
<a name="using-service-linked-roles-eks-fargate"></a>

Amazon EKS는 AWS ID 및 액세스 관리(IAM) [service-linked 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-service-linked-role)을 사용합니다. 서비스 연결 역할은 Amazon EKS에 직접 연결된 고유한 유형의 IAM 역할입니다. 서비스 연결 역할은 Amazon EKS에서 사전 정의하며 서비스에서 다른 AWS 서비스를 자동으로 호출하기 위해 필요한 모든 권한을 포함합니다.

필요한 권한을 수동으로 추가할 필요가 없으므로 서비스 연결 역할은 Amazon EKS를 더 쉽게 설정할 수 있습니다. Amazon EKS에서 서비스 연결 역할의 권한을 정의하므로 다르게 정의되지 않은 한, Amazon EKS만 해당 역할을 수임할 수 있습니다. 정의된 권한에는 신뢰 정책과 권한 정책이 포함되며 이 권한 정책은 다른 IAM 엔티티에 연결할 수 없습니다.

먼저 관련 리소스를 삭제한 후에만 서비스 연결 역할을 삭제할 수 있습니다. 이렇게 하면 리소스에 대한 액세스 권한을 실수로 삭제할 수 없기 때문에 Amazon EKS 리소스가 보호됩니다.

서비스 연결 역할을 지원하는 기타 서비스에 대한 자세한 내용은 [IAM으로 작업하는 AWS 서비스](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)를 참조하고 **서비스 연결 역할** 열에 **예**가 있는 서비스를 찾으세요. 해당 서비스에 대한 서비스 연결 역할 설명서를 보려면 링크가 있는 **예**를 선택합니다.

## Amazon EKS에 대한 서비스 연결 역할 권한
<a name="service-linked-role-permissions-eks-fargate"></a>

Amazon EKS는 `AWSServiceRoleForAmazonEKSForFargate`이라는 서비스 연결 역할을 사용합니다. 이 역할을 통해 Amazon EKS Fargate는 Fargate 포드에 필요한 VPC 네트워킹을 구성할 수 있습니다. 연결된 정책을 통해 역할은 탄력적 네트워크 인터페이스를 생성 및 삭제하고 탄력적 네트워크 인터페이스 및 리소스를 설명할 수 있습니다.

`AWSServiceRoleForAmazonEKSForFargate` 서비스 연결 역할은 역할을 수임하기 위해 다음 서비스를 신뢰합니다.
+  `eks-fargate.amazonaws.com` 

역할 권한 정책은 Amazon EKS가 지정된 리소스에서 다음 작업을 완료하도록 허용합니다.
+  [AmazonEKSForFargateServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSForFargateServiceRolePolicy.html) 

IAM 엔터티(사용자, 그룹, 역할 등)가 서비스 링크 역할을 생성하고 편집하거나 삭제할 수 있도록 권한을 구성할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 권한](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 생성
<a name="create-service-linked-role-eks-fargate"></a>

서비스 링크 역할은 수동으로 생성할 필요가 없습니다. AWS Management Console, AWS CLI 또는 AWS API에서 Fargate 프로필을 생성하면 Amazon EKS에서 서비스 연결 역할이 자동으로 생성됩니다.

**중요**  
이러한 서비스 연결 역할은 해당 역할이 지원하는 기능을 사용하는 다른 서비스에서 작업을 완료했을 경우 계정에 나타날 수 있습니다. Amazon EKS 서비스가 서비스 연결 역할을 지원하기 시작한 2019년 12월 13일 이전에 이 서비스를 사용했다면 Amazon EKS가 사용자 계정에 AWSServiceRoleForAmazonEKSForFargate 역할을 이미 생성했습니다. 자세한 내용을 알아보려면 [내 IAM 계정에 표시되는 새 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_roles.html#troubleshoot_roles_new-role-appeared)을 참조하세요.

### Amazon EKS(AWS API)에서 서비스 연결 역할 생성
<a name="create-service-linked-role-service-api-eks-fargate"></a>

서비스 링크 역할은 수동으로 생성할 필요가 없습니다. AWS Management Console, AWS CLI 또는 AWS API에서 Fargate 프로필을 생성하면 Amazon EKS에서 서비스 연결 역할이 자동으로 생성됩니다.

이 서비스 연결 역할을 삭제했다가 다시 생성해야 하는 경우 동일한 프로세스를 사용하여 계정에서 역할을 다시 생성할 수 있습니다. 다른 관리형 노드 그룹을 생성할 때 Amazon EKS가 서비스 연결 역할을 다시 생성합니다.

## Amazon EKS에 대한 서비스 연결 역할 편집
<a name="edit-service-linked-role-eks-fargate"></a>

Amazon EKS에서는 `AWSServiceRoleForAmazonEKSForFargate` 서비스 연결 역할을 편집하도록 허용하지 않습니다. 서비스 링크 역할을 생성한 후에는 다양한 개체가 역할을 참조할 수 있기 때문에 역할 이름을 변경할 수 없습니다. 하지만 IAM을 사용하여 역할의 설명을 편집할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 편집](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 삭제
<a name="delete-service-linked-role-eks-fargate"></a>

서비스 연결 역할이 필요한 기능 또는 서비스가 더 이상 필요 없는 경우에는 해당 역할을 삭제하는 것이 좋습니다. 따라서 적극적으로 모니터링하거나 유지하지 않는 미사용 엔터티가 없도록 합니다. 단, 서비스 연결 역할을 정리해야 수동으로 삭제할 수 있습니다.

### 서비스 연결 역할을 정리
<a name="service-linked-role-review-before-delete-eks-fargate"></a>

IAM을 사용하여 서비스 연결 역할을 삭제하기 전에 먼저 역할에서 사용되는 리소스를 삭제해야 합니다.

**참고**  
리소스를 삭제하려고 할 때 Amazon EKS 서비스가 역할을 사용 중이면 삭제에 실패할 수 있습니다. 이 문제가 발생하면 몇 분 기다렸다가 작업을 다시 시도하세요.

1. [Amazon EKS 콘솔](https://console.aws.amazon.com/eks/home#/clusters)을 엽니다.

1. 좌측 탐색 창에서 **클러스터**를 선택합니다.

1. **클러스터** 페이지에서 클러스터를 선택합니다.

1. **컴퓨팅** 탭을 선택합니다.

1. **Fargate 프로필** 섹션에 Fargate 프로필이 있는 경우 각각 개별적으로 선택한 다음 **삭제**를 선택합니다.

1. 삭제 확인 창에 프로필 이름을 입력한 다음 **삭제**를 선택합니다.

1. 클러스터의 다른 Fargate 프로필과 계정의 다른 클러스터에 대해 이 절차를 반복합니다.

### 수동으로 서비스 연결 역할 삭제
<a name="slr-manual-delete-eks-fargate"></a>

IAM 콘솔, AWS CLI 또는 AWS API를 사용하여 AWSServiceRoleForAmazonEKSForFargate 서비스 연결 역할을 삭제합니다. 자세한 내용은 IAM 사용 설명서의 [서비스에 연결 역할 삭제](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)**를 참조하세요.

## Amazon EKS 서비스 연결 역할을 지원하는 리전
<a name="slr-regions-eks-fargate"></a>

Amazon EKS는 서비스가 제공되는 모든 리전에서 서비스 연결 역할 사용을 지원합니다. 자세한 내용을 알아보려면 [Amazon EKS 엔드포인트 및 할당량](https://docs.aws.amazon.com/general/latest/gr/eks.html)을 참조하세요.

# 역할을 사용하여 Amazon EKS에 Kubernetes 클러스터 연결
<a name="using-service-linked-roles-eks-connector"></a>

Amazon EKS는 AWS ID 및 액세스 관리(IAM) [service-linked 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-service-linked-role)을 사용합니다. 서비스 연결 역할은 Amazon EKS에 직접 연결된 고유한 유형의 IAM 역할입니다. 서비스 연결 역할은 Amazon EKS에서 사전 정의하며 서비스에서 다른 AWS 서비스를 자동으로 직접 호출하기 위해 필요한 모든 권한을 포함합니다.

필요한 권한을 수동으로 추가할 필요가 없으므로 서비스 연결 역할은 Amazon EKS를 더 쉽게 설정할 수 있습니다. Amazon EKS에서 서비스 연결 역할의 권한을 정의하므로 다르게 정의되지 않은 한, Amazon EKS만 해당 역할을 수임할 수 있습니다. 정의된 권한에는 신뢰 정책과 권한 정책이 포함되며 이 권한 정책은 다른 IAM 엔터티에 연결할 수 없습니다.

먼저 관련 리소스를 삭제한 후에만 서비스 연결 역할을 삭제할 수 있습니다. 이렇게 하면 리소스에 대한 액세스 권한을 실수로 삭제할 수 없기 때문에 Amazon EKS 리소스가 보호됩니다.

서비스 연결 역할을 지원하는 기타 서비스에 대한 자세한 내용은 [IAM으로 작업하는 AWS 서비스](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)를 참조하고 **서비스 연결 역할** 열에 **예**가 있는 서비스를 찾으세요. 해당 서비스에 대한 서비스 연결 역할 설명서를 보려면 **예(Yes)** 링크를 선택합니다.

## Amazon EKS에 대한 서비스 연결 역할 권한
<a name="service-linked-role-permissions-eks-connector"></a>

Amazon EKS는 `AWSServiceRoleForAmazonEKSConnector`이라는 서비스 연결 역할을 사용합니다. 이 역할을 통해 Amazon EKS는 Kubernetes 클러스터를 연결할 수 있습니다. 연결된 정책을 사용하면 역할이 등록된 Kubernetes 클러스터에 연결하는 데 필요한 리소스를 관리할 수 있습니다.

`AWSServiceRoleForAmazonEKSConnector` 서비스 연결 역할은 역할을 수임하기 위해 다음 서비스를 신뢰합니다.
+  `eks-connector.amazonaws.com` 

역할 권한 정책은 Amazon EKS가 지정된 리소스에서 다음 작업을 완료하도록 허용합니다.
+  [AmazonEKSConnectorServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSConnectorServiceRolePolicy.html) 

IAM 엔터티(사용자, 그룹, 역할 등)가 서비스 연결 역할을 생성하고 편집하거나 삭제할 수 있도록 권한을 구성할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 권한](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions) 섹션을 참조하세요.

이 역할은 SSM(Systems Manager) 권한을 사용하여 보안 연결을 설정하고 연결된 Kubernetes 클러스터를 관리합니다.

## Amazon EKS에 대한 서비스 연결 역할 생성
<a name="create-service-linked-role-eks-connector"></a>

클러스터 연결을 위해 서비스 연결 역할을 수동으로 생성할 필요가 없습니다. AWS Management Console, AWS CLI, `eksctl` 또는 AWS API에서 클러스터를 연결하면 Amazon EKS에서 서비스 연결 역할이 자동으로 생성됩니다.

이 서비스 연결 역할을 삭제했다가 다시 생성해야 하는 경우 동일한 프로세스를 사용하여 계정에서 역할을 다시 생성할 수 있습니다. 클러스터를 연결할 때 Amazon EKS에서는 서비스 연결 역할을 다시 생성합니다.

## Amazon EKS에 대한 서비스 연결 역할 편집
<a name="edit-service-linked-role-eks-connector"></a>

Amazon EKS에서는 `AWSServiceRoleForAmazonEKSConnector` 서비스 연결 역할을 편집하도록 허용하지 않습니다. 서비스 연결 역할을 생성한 후에는 다양한 개체가 역할을 참조할 수 있기 때문에 역할 이름을 변경할 수 없습니다. 하지만 IAM을 사용하여 역할의 설명을 편집할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 편집](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 삭제
<a name="delete-service-linked-role-eks-connector"></a>

서비스 연결 역할이 필요한 기능 또는 서비스가 더 이상 필요 없는 경우에는 해당 역할을 삭제하는 것이 좋습니다. 따라서 적극적으로 모니터링하거나 유지하지 않는 미사용 엔터티가 없도록 합니다. 단, 서비스 연결 역할을 정리해야 수동으로 삭제할 수 있습니다.

### 서비스 연결 역할을 정리
<a name="service-linked-role-review-before-delete-eks-connector"></a>

IAM을 사용하여 서비스 연결 역할을 삭제하기 전에 먼저 역할에서 사용되는 리소스를 삭제해야 합니다.

**참고**  
리소스를 삭제하려고 할 때 Amazon EKS 서비스가 역할을 사용 중이면 삭제에 실패할 수 있습니다. 이 문제가 발생하면 몇 분 기다렸다가 작업을 다시 시도하세요.

1. [Amazon EKS 콘솔](https://console.aws.amazon.com/eks/home#/clusters)을 엽니다.

1. 좌측 탐색 창에서 **클러스터**를 선택합니다.

1. **클러스터** 페이지에서 클러스터를 선택합니다.

1. **등록 취소** 탭을 선택한 다음 **확인** 탭을 선택합니다.

### 수동으로 서비스 연결 역할 삭제
<a name="slr-manual-delete-eks-connector"></a>

IAM 콘솔, AWS CLI 또는 AWS API를 사용하여 AWSServiceRoleForAmazonEKSConnector 서비스 연결 역할을 삭제합니다. 자세한 내용은 IAM 사용 설명서의 [서비스에 연결 역할 삭제](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)**를 참조하세요.

# Outpost에서 Amazon EKS 로컬 클러스터에 대한 역할 사용
<a name="using-service-linked-roles-eks-outpost"></a>

Amazon Elastic Kubernetes Service는 AWS ID 및 액세스 관리(IAM) [서비스 연결 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-service-linked-role)을 사용합니다. 서비스 연결 역할은 Amazon EKS에 직접 연결된 고유한 유형의 IAM 역할입니다. 서비스 연결 역할은 Amazon EKS에서 사전 정의하며 서비스에서 다른 AWS 서비스를 자동으로 호출하기 위해 필요한 모든 권한을 포함합니다.

필요한 권한을 수동으로 추가할 필요가 없으므로 서비스 연결 역할은 Amazon EKS를 더 쉽게 설정할 수 있습니다. Amazon EKS에서 서비스 연결 역할의 권한을 정의하므로 다르게 정의되지 않은 한, Amazon EKS만 해당 역할을 수임할 수 있습니다. 정의된 권한에는 신뢰 정책과 권한 정책이 포함되며 이 권한 정책은 다른 IAM 엔티티에 연결할 수 없습니다.

먼저 관련 리소스를 삭제한 후에만 서비스 연결 역할을 삭제할 수 있습니다. 이렇게 하면 리소스에 대한 액세스 권한을 실수로 삭제할 수 없기 때문에 Amazon EKS 리소스가 보호됩니다.

서비스 연결 역할을 지원하는 기타 서비스에 대한 자세한 내용은 [IAM으로 작업하는 AWS 서비스](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)를 참조하고 **서비스 연결 역할** 열에 **예**가 있는 서비스를 찾으세요. 해당 서비스에 대한 서비스 연결 역할 설명서를 보려면 링크가 있는 **예**를 선택합니다.

## Amazon EKS에 대한 서비스 연결 역할 권한
<a name="service-linked-role-permissions"></a>

Amazon EKS는 `AWSServiceRoleForAmazonEKSLocalOutpost`이라는 서비스 연결 역할을 사용합니다. 이 역할을 통해 Amazon EKS는 계정의 로컬 클러스터를 관리할 수 있습니다. 연결된 정책은 이 역할이 네트워크 인터페이스, 보안 그룹, 로그 및 Amazon EC2 인스턴스와 같은 리소스를 관리하도록 허용합니다.

**참고**  
`AWSServiceRoleForAmazonEKSLocalOutpost` 서비스 연결 역할은 클러스터 생성에 필요한 역할과 다릅니다. 자세한 내용은 [Amazon EKS 클러스터 IAM 역할](cluster-iam-role.md) 섹션을 참조하세요.

`AWSServiceRoleForAmazonEKSLocalOutpost` 서비스 연결 역할은 역할을 위임하기 위해 다음 서비스를 신뢰합니다.
+  `outposts.eks-local.amazonaws.com` 

역할 권한 정책은 Amazon EKS가 지정된 리소스에서 다음 작업을 완료하도록 허용합니다.
+  [AmazonEKSServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSServiceRolePolicy.html) 

IAM 엔터티(사용자, 그룹, 역할 등)가 서비스 링크 역할을 생성하고 편집하거나 삭제할 수 있도록 권한을 구성할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 권한](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 생성
<a name="create-service-linked-role-eks-outpost"></a>

서비스 링크 역할은 수동으로 생성할 필요가 없습니다. AWS Management Console, AWS CLI 또는 AWS API에서 클러스터를 생성하면 Amazon EKS에서 서비스 연결 역할이 자동으로 생성됩니다.

이 서비스 연결 역할을 삭제했다가 다시 생성해야 하는 경우 동일한 프로세스를 사용하여 계정에서 역할을 다시 생성할 수 있습니다. 클러스터를 생성할 때 Amazon EKS에서는 서비스 연결 역할을 다시 생성합니다.

## Amazon EKS에 대한 서비스 연결 역할 편집
<a name="edit-service-linked-role-eks-outpost"></a>

Amazon EKS에서는 `AWSServiceRoleForAmazonEKSLocalOutpost` 서비스 연결 역할을 편집하도록 허용하지 않습니다. 서비스 연결 역할을 생성한 후에는 다양한 엔터티가 역할을 참조할 수 있기 때문에 역할 이름을 변경할 수 없습니다. 하지만 IAM을 사용하여 역할의 설명을 편집할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 편집](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 삭제
<a name="delete-service-linked-role-eks-outpost"></a>

서비스 연결 역할이 필요한 기능 또는 서비스가 더 이상 필요 없는 경우에는 해당 역할을 삭제하는 것이 좋습니다. 따라서 적극적으로 모니터링하거나 유지하지 않는 미사용 엔터티가 없도록 합니다. 단, 서비스 연결 역할을 정리해야 수동으로 삭제할 수 있습니다.

### 서비스 연결 역할을 정리
<a name="service-linked-role-review-before-delete-eks-outpost"></a>

IAM을 사용하여 서비스 연결 역할을 삭제하기 전에 먼저 역할에서 사용되는 리소스를 삭제해야 합니다.

**참고**  
리소스를 삭제하려고 할 때 Amazon EKS 서비스가 역할을 사용 중이면 삭제에 실패할 수 있습니다. 이 문제가 발생하면 몇 분 기다렸다가 작업을 다시 시도하세요.

1. [Amazon EKS 콘솔](https://console.aws.amazon.com/eks/home#/clusters)을 엽니다.

1. 왼쪽 탐색 창에서 Amazon EKS **클러스터**를 선택합니다.

1. 클러스터에 노드 그룹 또는 Fargate 프로필이 있는 경우 클러스터를 삭제하기 전에 이를 삭제해야 합니다. 자세한 내용을 알아보려면 [클러스터에서 관리형 노드 그룹 삭제](delete-managed-node-group.md) 및 [Fargate 프로필 삭제](delete-fargate-profile.md) 섹션을 참조하세요.

1. **클러스터** 페이지에서 삭제하려는 클러스터를 선택하고 **삭제**를 선택합니다.

1. 삭제 확인 창에 클러스터 이름을 입력한 다음 **삭제**를 선택합니다.

1. 계정의 다른 클러스터에 대해 이 절차를 반복합니다. 모든 삭제 작업이 완료될 때까지 기다립니다.

### 수동으로 서비스 연결 역할 삭제
<a name="slr-manual-delete-eks-outpost"></a>

IAM 콘솔, AWS CLI 또는 AWS API를 사용하여 `AWSServiceRoleForAmazonEKSLocalOutpost` 서비스 연결 역할을 삭제합니다. 자세한 내용은 IAM 사용 설명서의 [서비스에 연결 역할 삭제](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)**를 참조하세요.

## Amazon EKS 서비스 연결 역할을 지원하는 리전
<a name="slr-regions-eks-connector"></a>

Amazon EKS는 서비스가 제공되는 모든 리전에서 서비스 연결 역할 사용을 지원합니다. 자세한 내용을 알아보려면 [Amazon EKS 엔드포인트 및 할당량](https://docs.aws.amazon.com/general/latest/gr/eks.html)을 참조하세요.

# Amazon EKS 대시보드에 역할 사용
<a name="using-service-linked-roles-eks-dashboard"></a>

Amazon EKS 대시보드는 이 서비스 연결 역할을 사용하여 여러 리전 및 계정의 클러스터 리소스에 대한 정보를 집계합니다. 대시보드는 AWS Organizations와 통합되어 조직의 여러 계정에 대한 정보를 안전하게 읽습니다.

Amazon EKS 대시보드에 대한 자세한 내용은 [EKS 대시보드를 사용하여 클러스터 리소스에 대한 집계된 데이터 보기](cluster-dashboard.md) 섹션을 참조하세요.

## 배경
<a name="_background"></a>

Amazon EKS는 AWS ID 및 액세스 관리(IAM) [service-linked 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-service-linked-role)을 사용합니다. 서비스 연결 역할은 Amazon EKS에 직접 연결된 고유한 유형의 IAM 역할입니다. 서비스 연결 역할은 Amazon EKS에서 사전 정의하며 서비스에서 다른 AWS 서비스를 자동으로 직접 호출하기 위해 필요한 모든 권한을 포함합니다.

필요한 권한을 수동으로 추가할 필요가 없으므로 서비스 연결 역할은 Amazon EKS를 더 쉽게 설정할 수 있습니다. Amazon EKS에서 서비스 연결 역할의 권한을 정의하므로 다르게 정의되지 않은 한, Amazon EKS만 해당 역할을 수임할 수 있습니다. 정의된 권한에는 신뢰 정책과 권한 정책이 포함되며 이 권한 정책은 다른 IAM 엔티티에 연결할 수 없습니다.

먼저 관련 리소스를 삭제한 후에만 서비스 연결 역할을 삭제할 수 있습니다. 이렇게 하면 리소스에 대한 액세스 권한을 실수로 삭제할 수 없기 때문에 Amazon EKS 리소스가 보호됩니다.

서비스 연결 역할을 지원하는 기타 서비스에 대한 자세한 내용은 [IAM으로 작업하는 AWS 서비스](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)를 참조하고 **서비스 연결 역할** 열에 **예**가 있는 서비스를 찾으세요. 해당 서비스에 대한 서비스 연결 역할 설명서를 보려면 링크가 있는 **예**를 선택합니다.

## Amazon EKS에 대한 서비스 연결 역할 권한
<a name="service-linked-role-permissions-eks-dashboard"></a>

Amazon EKS는 `AWSServiceRoleForAmazonEKSDashboard`이라는 서비스 연결 역할을 사용합니다. 이 역할을 통해 Amazon EKS는 클러스터 리소스에 대한 집계된 정보를 포함하여 EKS 대시보드를 생성하고 표시할 수 있습니다. 연결된 `AmazonEKSDashboardServiceRolePolicy` 정책은 이 역할이 Auto Scaling 그룹, 보안 그룹, 시작 템플릿, IAM 인스턴스 프로파일 등의 리소스를 관리하도록 허용합니다. 자세한 내용은 [AWS 관리형 정책: AmazonEKSDashboardServiceRolePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSDashboardServiceRolePolicy) 섹션을 참조하세요.

`AWSServiceRoleForAmazonEKSDashboard` 서비스 연결 역할은 역할을 위임하기 위해 다음 서비스를 신뢰합니다.
+  `dashboard.eks.amazonaws.com` 

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSDashboardServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSDashboardServiceRolePolicy.html#AmazonEKSDashboardServiceRolePolicy-json)를 참조하세요.

IAM 엔터티(사용자, 그룹, 역할 등)가 서비스 링크 역할을 생성하고 편집하거나 삭제할 수 있도록 권한을 구성할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 권한](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 생성
<a name="create-service-linked-role-eks-dashboard"></a>

서비스 링크 역할은 수동으로 생성할 필요가 없습니다. AWS 콘솔에서 대시보드를 활성화하면 Amazon EKS가 서비스 연결 역할을 생성합니다.

EKS 대시보드 활성화에 대한 자세한 내용은 [AWS Organizations와의 EKS 대시보드 통합 구성](cluster-dashboard-orgs.md) 섹션을 참조하세요.

**중요**  
이러한 서비스 연결 역할은 해당 역할이 지원하는 기능을 사용하는 다른 서비스에서 작업을 완료했을 경우 계정에 나타날 수 있습니다.

## Amazon EKS에 대한 서비스 연결 역할 편집
<a name="edit-service-linked-role-eks-dashboard"></a>

Amazon EKS에서는 `AWSServiceRoleForAmazonEKSDashboard` 서비스 연결 역할을 편집하도록 허용하지 않습니다. 서비스 링크 역할을 생성한 후에는 다양한 개체가 역할을 참조할 수 있기 때문에 역할 이름을 변경할 수 없습니다. 하지만 IAM을 사용하여 역할의 설명을 편집할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [서비스 연결 역할 편집](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)을 참조하세요.

## Amazon EKS에 대한 서비스 연결 역할 삭제
<a name="delete-service-linked-role-eks-dashboard"></a>

서비스 연결 역할이 필요한 기능 또는 서비스가 더 이상 필요 없는 경우에는 해당 역할을 삭제하는 것이 좋습니다. 따라서 적극적으로 모니터링하거나 유지하지 않는 미사용 엔터티가 없도록 합니다. 단, 서비스 연결 역할을 정리해야 수동으로 삭제할 수 있습니다.

### 서비스 연결 역할을 정리
<a name="service-linked-role-review-before-delete-eks-dashboard"></a>

IAM을 사용하여 서비스 연결 역할을 삭제하기 전에 먼저 역할에서 사용되는 리소스를 삭제해야 합니다.

**참고**  
리소스를 삭제하려고 할 때 Amazon EKS 서비스가 역할을 사용 중이면 삭제에 실패할 수 있습니다. 이 문제가 발생하면 몇 분 기다렸다가 작업을 다시 시도하세요.

EKS 대시보드 비활성화에 대한 자세한 내용은 [AWS Organizations와의 EKS 대시보드 통합 구성](cluster-dashboard-orgs.md) 섹션을 참조하세요.

### 수동으로 서비스 연결 역할 삭제
<a name="slr-manual-delete-eks-dashboard"></a>

IAM 콘솔, AWS CLI 또는 AWS API를 사용하여 `AWSServiceRoleForAmazonEKSDashboard` 서비스 연결 역할을 삭제합니다. 자세한 내용은 IAM 사용 설명서의 [서비스에 연결 역할 삭제](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)**를 참조하세요.

## Amazon EKS 서비스 연결 역할을 지원하는 리전
<a name="slr-regions-eks-dashboard"></a>

Amazon EKS는 서비스가 제공되는 모든 리전에서 서비스 연결 역할 사용을 지원합니다. 자세한 내용을 알아보려면 [Amazon EKS 엔드포인트 및 할당량](https://docs.aws.amazon.com/general/latest/gr/eks.html)을 참조하세요.

# Amazon EKS 포드 실행 IAM 역할
<a name="pod-execution-role"></a>

AWS Fargate 인프라에서 포드를 실행하려면 Amazon EKS 포드 실행 역할이 필요합니다.

클러스터가 AWS Fargate 인프라에서 포드를 생성하는 경우 Fargate 인프라에서 실행되는 구성 요소는 사용자를 대신하여 AWS API를 직접적으로 직접 호출해야 합니다. 이를 통해 Amazon ECR에서 컨테이너 이미지를 가져오거나 로그를 다른 AWS 서버로 라우팅하는 등의 작업을 수행할 수 있습니다. Amazon EKS 포드 실행 역할은 이 작업을 수행할 수 있는 IAM 권한을 제공합니다.

Fargate 프로필을 생성할 때 프로필을 사용하여 Fargate 인프라에서 실행되는 Amazon EKS 구성 요소의 포드 실행 역할을 지정해야 합니다. 이 역할은 권한 부여를 위해 클러스터의 Kubernetes [역할 기반 액세스 제어](https://kubernetes.io/docs/reference/access-authn-authz/rbac/)(RBAC)에 추가됩니다. 이렇게 하면 Fargate 인프라에서 실행 중인 `kubelet`이 Amazon EKS 클러스터에 등록되어 클러스터에 노드로 표시될 수 있습니다.

**참고**  
Fargate 프로필에는 Amazon EC2 노드 그룹과 다른 IAM 역할이 있어야 합니다.

**중요**  
Fargate 포드에서 실행 중인 컨테이너는 포드 실행 역할과 연결된 IAM 권한을 수임할 수 없습니다. Fargate 포드의 컨테이너에 다른 AWS 서비스에 대한 액세스 권한을 부여하려면 [서비스 계정에 IAM 역할](iam-roles-for-service-accounts.md)을 사용해야 합니다.

Fargate 프로필을 생성하기 전에 [AmazonEKSFargatePodExecutionRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSFargatePodExecutionRolePolicy.html)를 사용하여 IAM 역할을 생성해야 합니다.

## 올바로 구성된 기존 포드 실행 역할 확인
<a name="check-pod-execution-role"></a>

다음 절차를 사용하여 계정에 이미 올바로 구성된 Amazon EKS 포드 실행 역할이 있는지 확인할 수 있습니다. 대리인 보안 문제의 혼동을 방지하려면 역할이 `SourceArn`에 따라 액세스를 제한하는 것이 중요합니다. 필요에 따라 실행 역할을 수정하여 다른 클러스터의 Fargate 프로필에 대한 지원을 포함할 수 있습니다.

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. **역할** 페이지에서 **AmazonEKSFargatePodExecutionRole**에 대한 역할 목록을 검색합니다. 역할이 존재하지 않을 경우 [Amazon EKS 포드 실행 역할 생성](#create-pod-execution-role)을 참조하여 역할을 생성합니다. 역할이 존재하지 않을 경우 역할을 선택합니다.

1. **AmazonEKSFargatePodExecutionRole** 페이지에서 다음을 수행합니다.

   1. **권한**을 선택합니다.

   1. **AmazonEKSFargatePodExecutionRolePolicy** Amazon 관리형 정책이 역할에 연결되어 있는지 확인합니다.

   1. **신뢰 관계**를 선택합니다.

   1. **신뢰 정책 편집**을 선택합니다.

1. **신뢰 정책 편집** 페이지에서 신뢰 관계에 다음 정책이 포함되어 있고 클러스터의 Fargate 프로필에 대한 줄이 있는지 확인합니다. 그렇다면 **취소**를 선택합니다.

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Condition": {
            "ArnLike": {
               "aws:SourceArn": "arn:aws:eks:us-east-1:111122223333:fargateprofile/my-cluster/*"
            }
         },
         "Principal": {
           "Service": "eks-fargate-pods.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

   정책이 일치하지만 클러스터의 Fargate 프로필을 지정하는 줄이 없는 경우 다음 줄을 `ArnLike` 객체의 상단에 추가할 수 있습니다. *region-code*를 클러스터가 있는 AWS 리전으로 바꾸고 *111122223333*을 계정 ID로 바꾸며 *my-cluster*를 클러스터 이름으로 바꿉니다.

   ```
   "aws:SourceArn": "arn:aws:eks:region-code:111122223333:fargateprofile/my-cluster/*",
   ```

   정책이 일치하지 않는 경우 이전 정책 전체를 양식에 복사하고 **업데이트 정책**을 선택합니다. *region-code*를 클러스터가 있는 AWS 리전으로 바꿉니다. 계정의 모든 AWS 리전에서 동일한 역할을 사용하려면 *region-code*를 `*`로 바꾸세요. *my\$1cluster*를 실제 클러스터의 이름으로 바꾸고 *111122223333*을 계정 ID로 바꿉니다. 계정의 모든 클러스터에 대해 동일한 역할을 사용하려는 경우 *my-cluster*를 `*`로 바꾸세요.

## Amazon EKS 포드 실행 역할 생성
<a name="create-pod-execution-role"></a>

클러스터에 대한 Amazon EKS 포드 실행 역할이 아직 없는 경우 AWS Management Console 또는 AWS CLI를 사용하여 생성할 수 있습니다.

 AWS Management Console   

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. **역할** 페이지에서 **역할 생성**을 선택합니다.

1. **신뢰할 수 있는 엔터티 선택** 페이지에서 다음을 수행합니다.

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

   1. **다른 AWS 서비스의 사용 사례** 드롭다운 목록에서 **EKS**를 선택합니다.

   1. **EKS - Fargate 포드**를 선택합니다.

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

1. **권한 추가** 페이지에서 **다음**을 선택합니다.

1. **이름, 검토 및 생성** 페이지에서 다음을 수행합니다.

   1. **역할 이름**에 역할의 고유한 이름(예: `AmazonEKSFargatePodExecutionRole`)을 입력합니다.

   1. **태그 추가(선택사항)**에서 태그를 키-값 페어로 연결하여 메타데이터를 역할에 추가합니다. IAM에서 태그 사용에 대한 자세한 내용을 알아보려면 IAM 사용 설명서의 [IAM 리소스에 태깅](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html)을 참조하세요.

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

1. **역할** 페이지에서 **AmazonEKSFargatePodExecutionRole**에 대한 역할 목록을 검색합니다. 역할을 선택합니다.

1. **AmazonEKSFargatePodExecutionRole** 페이지에서 다음을 수행합니다.

   1. **신뢰 관계**를 선택합니다.

   1. **신뢰 정책 편집**을 선택합니다.

1. **신뢰 정책 편집** 페이지에서 다음 작업을 수행합니다.

   1. 다음 내용을 복사하여 **신뢰 정책 편집** 양식에 붙여 넣습니다. *region-code*를 클러스터가 있는 AWS 리전으로 바꿉니다. 계정의 모든 AWS 리전에서 동일한 역할을 사용하려면 *region-code*를 `*`로 바꾸세요. *my\$1cluster*를 실제 클러스터의 이름으로 바꾸고 *111122223333*을 계정 ID로 바꿉니다. 계정의 모든 클러스터에 대해 동일한 역할을 사용하려는 경우 *my-cluster*를 `*`로 바꾸세요.

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Condition": {
               "ArnLike": {
                  "aws:SourceArn": "arn:aws:eks:us-east-1:111122223333:fargateprofile/my-cluster/*"
               }
            },
            "Principal": {
              "Service": "eks-fargate-pods.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
          }
        ]
      }
      ```

   1. **정책 업데이트**를 선택합니다.

 AWS CLI  

1. 다음 내용을 복사하여 `pod-execution-role-trust-policy.json`라는 파일에 붙여넣습니다. *region-code*를 클러스터가 있는 AWS 리전으로 바꿉니다. 계정의 모든 AWS 리전에서 동일한 역할을 사용하려면 *region-code*를 `*`로 바꾸세요. *my\$1cluster*를 실제 클러스터의 이름으로 바꾸고 *111122223333*을 계정 ID로 바꿉니다. 계정의 모든 클러스터에 대해 동일한 역할을 사용하려는 경우 *my-cluster*를 `*`로 바꾸세요.

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Condition": {
            "ArnLike": {
               "aws:SourceArn": "arn:aws:eks:us-east-1:111122223333:fargateprofile/my-cluster/*"
            }
         },
         "Principal": {
           "Service": "eks-fargate-pods.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

1. 포드 실행 IAM 역할을 생성합니다.

   ```
   aws iam create-role \
     --role-name AmazonEKSFargatePodExecutionRole \
     --assume-role-policy-document file://"pod-execution-role-trust-policy.json"
   ```

1. 필요한 Amazon EKS 관리형 IAM 정책을 역할에 연결합니다.

   ```
   aws iam attach-role-policy \
     --policy-arn arn:aws:iam::aws:policy/AmazonEKSFargatePodExecutionRolePolicy \
     --role-name AmazonEKSFargatePodExecutionRole
   ```

# Amazon EKS Connector IAM 역할
<a name="connector-iam-role"></a>

Kubernetes 클러스터를 연결하여 AWS Management Console에서 볼 수 있습니다. Kubernetes 클러스터에 연결하려면 IAM 역할을 생성합니다.

## 기존 EKS 커넥터 역할 확인
<a name="check-connector-role"></a>

다음 절차를 사용하여 계정에 이미 Amazon EKS Connector 역할이 있는지 확인할 수 있습니다.

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. 역할 목록에서 `AmazonEKSConnectorAgentRole`(을)를 검색합니다. `AmazonEKSConnectorAgentRole`을 포함하는 역할이 존재하지 않을 경우 [Amazon EKS Connector 에이전트 역할 생성](#create-connector-role) 섹션을 참조하여 역할을 생성합니다. `AmazonEKSConnectorAgentRole`을 포함하는 역할이 존재하지 않을 경우, 연결된 정책을 볼 역할을 선택합니다.

1. **권한**을 선택합니다.

1. **AmazonEKSConnector에이전트Policy** 관리형 정책이 역할에 연결되었는지 확인합니다. 정책이 연결된 경우 Amazon EKS 커넥터 역할이 적절히 구성된 것입니다.

1. **신뢰 관계**를 선택한 후 **신뢰 정책 편집**을 선택합니다.

1. 신뢰 관계에 다음 정책이 포함되어 있는지 확인합니다. 신뢰 관계가 다음 정책과 일치하는 경우, **취소**를 선택합니다. 신뢰 관계가 일치하지 않으면 정책을 **신뢰 정책 편집** 창에 복사하고 **정책 업데이트**를 선택합니다.

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

## Amazon EKS Connector 에이전트 역할 생성
<a name="create-connector-role"></a>

AWS Management Console 또는 AWS CloudFormation을 사용하여 커넥터 에이전트 역할을 생성할 수 있습니다.

 AWS CLI  

1. IAM 역할에 사용할 다음과 같은 JSON이 포함된 `eks-connector-agent-trust-policy.json`이라는 이름의 파일을 생성합니다.

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

1. IAM 역할에 사용할 다음과 같은 JSON이 포함된 `eks-connector-agent-policy.json`이라는 이름의 파일을 생성합니다.

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "SsmControlChannel",
               "Effect": "Allow",
               "Action": [
                   "ssmmessages:CreateControlChannel"
               ],
               "Resource": "arn:aws:eks:*:*:cluster/*"
           },
           {
               "Sid": "ssmDataplaneOperations",
               "Effect": "Allow",
               "Action": [
                   "ssmmessages:CreateDataChannel",
                   "ssmmessages:OpenDataChannel",
                   "ssmmessages:OpenControlChannel"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

1. 이전 목록 항목에서 생성한 신뢰 정책 및 정책을 사용하여 Amazon EKS Connector 에이전트 역할을 생성합니다.

   ```
   aws iam create-role \
        --role-name AmazonEKSConnectorAgentRole \
        --assume-role-policy-document file://eks-connector-agent-trust-policy.json
   ```

1. Amazon EKS Connector 에이전트 역할에 정책을 연결합니다.

   ```
   aws iam put-role-policy \
        --role-name AmazonEKSConnectorAgentRole \
        --policy-name AmazonEKSConnectorAgentPolicy \
        --policy-document file://eks-connector-agent-policy.json
   ```

 AWS CloudFormation  

1. 다음 AWS CloudFormation 템플릿을 로컬 시스템의 텍스트 파일에 저장합니다.
**참고**  
이 템플릿은 또한 `registerCluster` API가 직접 호출될 때 생성되는 서비스 링크 역할도 생성합니다. 세부 정보는 [역할을 사용하여 Amazon EKS에 Kubernetes 클러스터 연결](using-service-linked-roles-eks-connector.md) 섹션을 참조하세요.

   ```
   ---
   AWSTemplateFormatVersion: '2010-09-09'
   Description: 'Provisions necessary resources needed to register clusters in EKS'
   Parameters: {}
   Resources:
     EKSConnectorSLR:
       Type: AWS::IAM::ServiceLinkedRole
       Properties:
         AWSServiceName: eks-connector.amazonaws.com
   
     EKSConnectorAgentRole:
       Type: AWS::IAM::Role
       Properties:
         AssumeRolePolicyDocument:
           Version: '2012-10-17'
           Statement:
             - Effect: Allow
               Action: [ 'sts:AssumeRole' ]
               Principal:
                 Service: 'ssm.amazonaws.com'
   
     EKSConnectorAgentPolicy:
       Type: AWS::IAM::Policy
       Properties:
         PolicyName: EKSConnectorAgentPolicy
         Roles:
           - {Ref: 'EKSConnectorAgentRole'}
         PolicyDocument:
           Version: '2012-10-17'
           Statement:
             - Effect: 'Allow'
               Action: [ 'ssmmessages:CreateControlChannel' ]
               Resource:
               - Fn::Sub: 'arn:${AWS::Partition}:eks:*:*:cluster/*'
             - Effect: 'Allow'
               Action: [ 'ssmmessages:CreateDataChannel', 'ssmmessages:OpenDataChannel', 'ssmmessages:OpenControlChannel' ]
               Resource: "*"
   Outputs:
     EKSConnectorAgentRoleArn:
       Description: The agent role that EKS connector uses to communicate with AWS services.
       Value: !GetAtt EKSConnectorAgentRole.Arn
   ```

1. [AWSCloudFormation 콘솔](https://console.aws.amazon.com/cloudformation/)을 엽니다.

1. 새 리소스를 사용한 **스택 생성**을 선택합니다(표준).

1. **템플릿 지정**에서 **템플릿 파일 업로드**를 선택한 다음 **파일 선택**을 선택합니다.

1. 이전에 생성한 파일을 선택한 후 **다음**을 선택합니다.

1. **스택 이름**에 `eksConnectorAgentRole`과 같은 역할 이름을 입력하고 **다음**을 선택합니다.

1. **스택 옵션 구성** 페이지에서 **다음**을 선택합니다. 

1. **검토** 페이지에서 정보를 검토하고, 스택이 IAM 리소스를 생성할 수 있음을 확인한 다음 **스택 생성**을 선택합니다.

# Amazon Elastic Kubernetes Service에 대한 AWS 관리형 정책
<a name="security-iam-awsmanpol"></a>

AWS 관리형 정책은 AWS에 의해 생성되고 관리되는 독립 실행형 정책입니다. AWS 관리형 정책은 사용자, 그룹 및 역할에 권한 할당을 시작할 수 있도록 많은 일반 사용 사례에 대한 권한을 제공하도록 설계되었습니다.

AWS 관리형 정책은 모든 AWS 고객이 사용할 수 있기 때문에 특정 사용 사례에 대해 최소 권한을 부여하지 않을 수 있습니다. 사용 사례에 고유한 [고객 관리형 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)을 정의하여 권한을 줄이는 것이 좋습니다.

AWS 관리형 정책에서 정의한 권한은 변경할 수 없습니다. AWS에서 AWS 관리형 정책에 정의된 권한을 업데이트할 경우, 정책이 연결되어 있는 모든 보안 주체 엔터티(사용자, 그룹 및 역할)에도 업데이트가 적용됩니다. 새로운 AWS 서비스를 시작하거나 새로운 API 작업을 기존 서비스에 이용하는 경우, AWS가 AWS 관리형 정책을 업데이트할 가능성이 높습니다.

자세한 내용은 *IAM 사용자 가이드*의 [AWS 관리형 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)을 참조하세요.

## AWS 관리형 정책: AmazonEKS\$1CNI\$1Policy
<a name="security-iam-awsmanpol-amazoneks-cni-policy"></a>

`AmazonEKS_CNI_Policy`를 IAM 엔터티에 연결할 수 있습니다. Amazon EC2 노드 그룹을 생성하기 전에 이 정책을 [노드 IAM 역할](create-node-role.md)에 연결하거나 Kubernetes용 Amazon VPC CNI 플러그인에 명시적으로 사용되는 IAM 역할에 연결해야 합니다. 이는 사용자를 대신하여 작업을 수행할 수 있도록 합니다. 플러그 인에서만 사용되는 역할에 정책을 연결하는 것이 좋습니다. 자세한 내용은 [Amazon VPC CNI를 통해 포드에 IP 할당](managing-vpc-cni.md) 및 [IRSA를 사용하도록 Amazon VPC CNI 플러그인 구성](cni-iam-role.md)(을)를 참조하세요.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  ** `ec2:*NetworkInterface` 및 `ec2:*PrivateIpAddresses` ** - Amazon VPC CNI 플러그인이 Amazon EKS에서 실행되는 애플리케이션에 네트워킹을 제공하기 위해 포드의 탄력적 네트워크 인터페이스 및 IP 주소 프로비저닝과 같은 작업을 수행하도록 허용합니다.
+  ** `ec2` 읽기 작업** - Amazon VPC CNI 플러그인이 Amazon VPC 서브넷의 사용 가능한 IP 주소 양을 확인하기 위해 인스턴스 및 서브넷 설명과 같은 작업을 수행하도록 허용합니다. VPC CNI는 각 서브넷의 사용 가능한 IP 주소를 사용하여 탄력적 네트워크 인터페이스를 생성할 때 사용 가능한 IP 주소가 가장 많은 서브넷을 선택할 수 있습니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKS\$1CNI\$1Policy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKS_CNI_Policy.html#AmazonEKS_CNI_Policy-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSClusterPolicy
<a name="security-iam-awsmanpol-amazoneksclusterpolicy"></a>

`AmazonEKSClusterPolicy`를 IAM 엔터티에 연결할 수 있습니다. 클러스터를 생성하기 전에 먼저 이 정책이 연결된 [클러스터 IAM 역할](cluster-iam-role.md)이 있어야 합니다. Amazon EKS에서 관리하는 Kubernetes 클러스터는 사용자 대신 다른 AWS 서비스를 직접 호출합니다. 이러한 작업을 수행하여 서비스에 사용하는 리소스를 관리합니다.

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  ** `autoscaling` ** - Auto Scaling 그룹의 구성을 읽고 업데이트합니다. 이러한 권한은 Amazon EKS에서 사용되지 않지만 이전 버전과의 호환성을 위해 정책에 그대로 유지됩니다.
+  ** `ec2` ** - Amazon EC2 노드에 연결된 볼륨 및 네트워크 리소스로 작업합니다. 이는 Kubernetes 컨트롤 플레인이 인스턴스를 클러스터에 조인하고 Kubernetes 영구 볼륨에서 요청한 Amazon EBS 볼륨을 동적으로 프로비저닝 및 관리할 수 있도록 하기 위해 필요합니다.
+  ** `ec2` ** - VPC CNI에 의해 생성된 탄력적 네트워크 인터페이스를 삭제합니다. 이는 VPC CNI가 예기치 않게 종료되는 경우 EKS가 남아 있는 탄력적 네트워크 인터페이스를 정리할 수 있도록 하는 데 필요합니다.
+  **`elasticloadbalancing`** - 탄력적 로드 밸런서를 사용하여 노드를 대상으로 추가합니다. 이는 Kubernetes 제어 플레인이 Kubernetes 서비스에서 요청한 Elastic Load Balancer를 동적으로 프로비저닝할 수 있도록 하기 위해 필요합니다.
+  **`iam`** - 서비스 연결 역할을 생성합니다. 이는 Kubernetes 컨트롤 플레인이 Kubernetes 서비스에서 요청한 Elastic Load Balancer를 동적으로 프로비저닝할 수 있도록 하기 위해 필요합니다.
+  ** `kms` ** – AWS KMS에서 키를 읽습니다. 이는 Kubernetes 컨트롤 플레인이 `etcd`에 저장된 Kubernetes 비밀의 [비밀 암호화](https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/)를 지원하는 데 필요합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSClusterPolicy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSClusterPolicy.html#AmazonEKSClusterPolicy-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSDashboardConsoleReadOnly
<a name="security-iam-awsmanpol-amazoneksdashboardconsolereadonly"></a>

`AmazonEKSDashboardConsoleReadOnly`를 IAM 엔티티에 연결할 수 있습니다.

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  ** `eks` ** - EKS 대시보드 데이터, 리소스 및 클러스터 버전 정보에 대한 읽기 전용 액세스 권한. 이를 통해 EKS 관련 지표와 클러스터 구성 세부 정보를 볼 수 있습니다.
+  ** `organizations` ** - 다음을 포함한 AWS Organizations 정보에 대한 읽기 전용 액세스 권한
  + 조직 세부 정보 및 서비스 액세스 보기
  + 조직 루트, 계정 및 조직 단위 나열
  + 조직 구조 보기

최신 버전의 JSON 정책 문서를 보려면 AWS 관리형 정책 참조 안내서의 [AmazonEKSDashboardConsoleReadOnly](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSDashboardConsoleReadOnly.html#AmazonEKSDashboardConsoleReadOnly-json)를 참조하세요.

## AWS 관리형 정책: AmazonEKSFargatePodExecutionRolePolicy
<a name="security-iam-awsmanpol-amazoneksfargatepodexecutionrolepolicy"></a>

`AmazonEKSFargatePodExecutionRolePolicy`를 IAM 엔터티에 연결할 수 있습니다. Fargate 프로필을 생성하려면 먼저 Fargate 포드 실행 역할을 생성하고 이 정책을 이 역할에 연결해야 합니다. 자세한 내용은 [2단계: Fargate 포드 실행 역할 생성](fargate-getting-started.md#fargate-sg-pod-execution-role) 및 [시작 시 AWS Fargate를 사용하는 포드 정의](fargate-profile.md)(을)를 참조하세요.

이 정책은 Fargate에서 Amazon EKS 포드를 실행하는 데 필요한 다른 AWS 서비스 리소스에 대한 액세스를 제공하는 권한을 역할에 부여합니다.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  **`ecr`** - Fargate에서 실행 중인 포드가 Amazon ECR에 저장된 컨테이너 이미지를 가져오도록 허용합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSFargatePodExecutionRolePolicy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSFargatePodExecutionRolePolicy.html#AmazonEKSFargatePodExecutionRolePolicy-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSConnectorServiceRolePolicy
<a name="security-iam-awsmanpol-AmazonEKSConnectorServiceRolePolicy"></a>

`AmazonEKSConnectorServiceRolePolicy`를 IAM 엔터티에 연결할 수 없습니다. 이 정책은 Amazon EKS에 사용자를 대신하여 작업을 수행할 수 있도록 서비스 연결 역할에 연결됩니다. 자세한 내용은 [역할을 사용하여 Amazon EKS에 Kubernetes 클러스터 연결](using-service-linked-roles-eks-connector.md) 섹션을 참조하세요.

이 역할을 통해 Amazon EKS는 Kubernetes 클러스터를 연결할 수 있습니다. 연결된 정책을 사용하면 역할이 등록된 Kubernetes 클러스터에 연결하는 데 필요한 리소스를 관리할 수 있습니다.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  **`SSM Management`** - SSM 활성화를 생성, 설명 및 삭제하고, 관리형 인스턴스의 등록을 취소합니다. 이를 통해 기본적인 Systems Manager 작업을 허용합니다.
+  **`Session Management`** - 특별히 EKS 클러스터를 위한 SSM 세션을 시작하고 AmazonEKS 문서를 사용하여 비대화형 명령을 실행합니다.
+  **`IAM Role Passing`** - SSM 서비스에 특별히 IAM 역할을 전달합니다. 이는 전달된 역할을 `ssm.amazonaws.com`으로 제한하는 조건에 의해 제어됩니다.
+  **`EventBridge Rules`** - `eks-connector.amazonaws.com`에서 관리하는 경우에만 EventBridge 규칙 및 대상을 생성합니다. 규칙은 특별히 AWS SSM(이벤트 소스에 해당함)으로 제한됩니다.

최신 버전의 JSON 정책 문서를 보려면 AWS 관리형 정책 참조 안내서의 [AmazonEKSConnectorServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSConnectorServiceRolePolicy.html)를 참조하세요.

## AWS 관리형 정책: AmazonEKSForFargateServiceRolePolicy
<a name="security-iam-awsmanpol-amazoneksforfargateservicerolepolicy"></a>

`AmazonEKSForFargateServiceRolePolicy`를 IAM 엔터티에 연결할 수 없습니다. 이 정책은 Amazon EKS에 사용자를 대신하여 작업을 수행할 수 있도록 서비스 연결 역할에 연결됩니다. 자세한 내용은 `AWSServiceRoleforAmazonEKSForFargate` 섹션을 참조하세요.

이 정책은 Amazon EKS에 Fargate 태스크를 실행하는 데 필요한 권한을 부여합니다. 이 정책은 Fargate 노드가 있는 경우에만 사용됩니다.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  **`ec2`** – 탄력적 네트워크 인터페이스를 생성 및 삭제하고, 탄력적 네트워크 인터페이스 및 리소스를 설명합니다. 이는 Amazon EKS Fargate 서비스가 Fargate 포드에 필요한 VPC 네트워킹을 구성할 수 있도록 하기 위해 필요합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSForFargateServiceRolePolicy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSForFargateServiceRolePolicy.html#AmazonEKSForFargateServiceRolePolicy-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSComputePolicy
<a name="security-iam-awsmanpol-AmazonEKSComputePolicy"></a>

`AmazonEKSComputePolicy`를 IAM 엔티티에 연결할 수 있습니다. 이 정책을 [클러스터 IAM 역할](cluster-iam-role.md)에 연결하여 EKS가 계정에서 관리할 수 있는 리소스를 확장할 수 있습니다.

이 정책은 Amazon EKS가 EKS 클러스터에 대한 EC2 인스턴스 생성 및 관리에 필요한 권한과 EC2 구성에 필요한 IAM 권한을 부여합니다. 또한 이 정책은 Amazon EKS가 사용자를 대신하여 EC2 Spot 서비스 연결 역할을 생성할 수 있는 권한을 부여합니다.

### 권한 세부 정보
<a name="_permissions_details"></a>

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  ** `ec2` 권한**:
  +  `ec2:CreateFleet` 및 `ec2:RunInstances`-EC2 인스턴스를 생성하고 EKS 클러스터 노드에 대한 특정 EC2 리소스(이미지, 보안 그룹, 서브넷)를 사용할 수 있습니다.
  +  `ec2:CreateLaunchTemplate`-EKS 클러스터 노드에 대한 EC2 시작 템플릿을 생성할 수 있습니다.
  + 이 정책에는 이러한 EC2 권한 사용을 EKS 클러스터 이름 및 기타 관련 태그가 지정된 리소스로 제한하는 조건도 포함되어 있습니다.
  +  `ec2:CreateTags`-`CreateFleet`, `RunInstances`, `CreateLaunchTemplate` 작업에서 생성한 EC2 리소스에 태그를 추가할 수 있습니다.
+  ** `iam` 권한**:
  +  `iam:AddRoleToInstanceProfile`-EKS 컴퓨팅 인스턴스 프로파일에 IAM 역할을 추가할 수 있습니다.
  +  `iam:PassRole`-필요한 IAM 역할을 EC2 서비스에 전달할 수 있습니다.

최신 버전의 JSON 정책 문서를 보려면 AWS 관리형 정책 참조 안내서의 [AmazonEKSComputePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSComputePolicy.html#AmazonEKSComputePolicy-json)를 참조하세요.

## AWS 관리형 정책: AmazonEKSNetworkingPolicy
<a name="security-iam-awsmanpol-AmazonEKSNetworkingPolicy"></a>

`AmazonEKSNetworkingPolicy`를 IAM 엔티티에 연결할 수 있습니다. 이 정책을 [클러스터 IAM 역할](cluster-iam-role.md)에 연결하여 EKS가 계정에서 관리할 수 있는 리소스를 확장할 수 있습니다.

이 정책은 Amazon EKS가 EKS 클러스터에 대한 네트워크 인터페이스를 생성하고 관리하는 데 필요한 권한을 부여하여 제어 영역과 작업자 노드가 통신하고 제대로 작동할 수 있도록 설계되었습니다.

### 권한 세부 정보
<a name="_permissions_details_2"></a>

이 정책은 Amazon EKS가 클러스터의 네트워크 인터페이스를 관리할 수 있도록 허용하는 다음과 같은 권한을 부여합니다.
+  ** `ec2` 네트워크 인터페이스 권한 ID**
  +  `ec2:CreateNetworkInterface`-EC2 네트워크 인터페이스를 생성할 수 있습니다.
  + 이 정책에는 EKS 클러스터 이름 및 Kubernetes CNI 노드 이름으로 태그가 지정된 네트워크 인터페이스에 대한 이 권한 사용을 제한하는 조건이 포함되어 있습니다.
  +  `ec2:CreateTags`-`CreateNetworkInterface` 작업에서 생성한 네트워크 인터페이스에 태그를 추가할 수 있습니다.
+  ** `ec2` 네트워크 인터페이스 관리 권한**:
  +  `ec2:AttachNetworkInterface`, `ec2:ModifyNetworkInterfaceAttribute`, `ec2:DetachNetworkInterface` - 네트워크 인터페이스 속성을 연결 및 수정하고 EC2 인스턴스에 대한 네트워크 인터페이스를 분리할 수 있습니다.
  +  `ec2:UnassignPrivateIpAddresses`, `ec2:UnassignIpv6Addresses`, `ec2:AssignPrivateIpAddresses`, `ec2:AssignIpv6Addresses`-네트워크 인터페이스의 IP 주소 할당을 관리할 수 있습니다.
  + 이러한 권한은 EKS 클러스터 이름으로 태그가 지정된 네트워크 인터페이스로 제한됩니다.

최신 버전의 JSON 정책 문서를 보려면 AWS 관리형 정책 참조 안내서의 [AmazonEKSNetworkingPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSNetworkingPolicy.html#AmazonEKSNetworkingPolicy-json)를 참조하세요.

## AWS 관리형 정책: AmazonEKSBlockStoragePolicy
<a name="security-iam-awsmanpol-AmazonEKSBlockStoragePolicy"></a>

`AmazonEKSBlockStoragePolicy`를 IAM 엔티티에 연결할 수 있습니다. 이 정책을 [클러스터 IAM 역할](cluster-iam-role.md)에 연결하여 EKS가 계정에서 관리할 수 있는 리소스를 확장할 수 있습니다.

이 정책은 Amazon EKS가 EKS 클러스터에 대한 EC2 볼륨 및 스냅샷을 생성, 관리 및 유지하는 데 필요한 권한을 부여하여 컨트롤 플레인과 워커 노드가 Kubernetes 워크로드에서 요구하는 영구 스토리지를 프로비저닝하고 사용할 수 있게 합니다.

### 권한 세부 정보
<a name="_permissions_details_3"></a>

이 IAM 정책은 Amazon EKS가 EC2 볼륨 및 스냅샷을 관리할 수 있도록 다음과 같은 권한을 부여합니다.
+  ** `ec2` 볼륨 관리 권한**:
  +  `ec2:AttachVolume`, `ec2:DetachVolume`, `ec2:ModifyVolume`, `ec2:EnableFastSnapshotRestores`-EC2 볼륨에 대한 빠른 스냅샷 복원을 연결, 분리, 수정, 활성화할 수 있습니다.
  + 이러한 권한은 EKS 클러스터 이름으로 태그가 지정된 볼륨으로 제한됩니다.
  +  `ec2:CreateTags`-`CreateVolume` 및 `CreateSnapshot` 작업에서 생성된 EC2 볼륨 및 스냅샷에 태그를 추가할 수 있습니다.
+  ** `ec2` 볼륨 생성 권한**:
  +  `ec2:CreateVolume`-새 EC2 볼륨을 생성할 수 있습니다.
  + 이 정책에는 이 권한의 사용을 EKS 클러스터 이름 및 기타 관련 태그가 지정된 볼륨으로 제한하는 조건이 포함되어 있습니다.
  +  `ec2:CreateSnapshot`-새 EC2 볼륨 스냅샷을 생성할 수 있습니다.
  + 이 정책에는 이 권한의 사용을 EKS 클러스터 이름 및 기타 관련 태그가 지정된 스냅샷으로 제한하는 조건이 포함되어 있습니다.

최신 버전의 JSON 정책 문서를 보려면 AWS 관리형 정책 참조 안내서의 [AmazonEKSBlockStoragePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSBlockStoragePolicy.html#AmazonEKSBlockStoragePolicy-json)를 참조하세요.

## AWS 관리형 정책: AmazonEKSLoadBalancingPolicy
<a name="security-iam-awsmanpol-AmazonEKSLoadBalancingPolicy"></a>

`AmazonEKSLoadBalancingPolicy`를 IAM 엔티티에 연결할 수 있습니다. 이 정책을 [클러스터 IAM 역할](cluster-iam-role.md)에 연결하여 EKS가 계정에서 관리할 수 있는 리소스를 확장할 수 있습니다.

이 IAM 정책은 Amazon EKS가 다양한 AWS 서비스를 함께 사용하여 Elastic Load Balancing(ELB) 및 관련 리소스를 관리하는 데 필요한 권한을 부여합니다.

### 권한 세부 정보
<a name="_permissions_details_4"></a>

이 정책에서 부여하는 주요 권한은 다음과 같습니다.
+  **`elasticloadbalancing`**: 탄력적 로드 밸런서 및 대상 그룹을 생성, 수정, 관리할 수 있습니다. 여기에는 로드 밸런서, 대상 그룹, 리스너, 규칙을 생성, 업데이트, 삭제하는 권한이 포함됩니다.
+  **`ec2`**: Kubernetes 컨트롤 플레인이 인스턴스를 클러스터에 조인하고 Amazon EBS 볼륨을 관리하는 데 필요한 보안 그룹을 생성하고 관리할 수 있습니다. 또한 인스턴스, VPC, 서브넷, 보안 그룹 및 기타 네트워킹 리소스와 같은 EC2 리소스를 설명하고 나열할 수 있습니다.
+  **`iam`**: Kubernetes 컨트롤 플레인이 ELB를 동적으로 프로비저닝하는 데 필요한 탄력적 로드 밸런싱에 대한 서비스 연결 역할을 생성할 수 있습니다.
+  ** `kms` **: AWS KMS에서 키를 읽을 수 있습니다. 이 키는 Kubernetes 컨트롤 플레인이 etcd에 저장된 Kubernetes 보안 암호의 암호화를 지원하기 위해 필요합니다.
+  ** `wafv2` ** 및 ** `shield` **: 웹 ACL을 연결 및 연결 해제하고 Elastic Load Balancer에 대한 AWS Shield 보호를 생성/삭제할 수 있습니다.
+  ** `cognito-idp` **, ** `acm` **, ** `elasticloadbalancing` **: 사용자 풀 클라이언트를 설명하고, 인증서를 나열 및 설명하고, Kubernetes 컨트롤 플레인이 Elastic Load Balancer를 관리하는 데 필요한 대상 그룹을 설명할 수 있는 권한을 부여합니다.

또한 이 정책에는 `eks:eks-cluster-name` 태그를 사용하여 관리 중인 특정 EKS 클러스터에 대한 권한 범위를 확인하기 위한 여러 조건 확인이 포함되어 있습니다.

최신 버전의 JSON 정책 문서를 보려면 AWS 관리형 정책 참조 안내서의 [AmazonEKSLoadBalancingPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSLoadBalancingPolicy.html#AmazonEKSLoadBalancingPolicy-json)를 참조하세요.

## AWS 관리형 정책: AmazonEKSMCPReadOnlyAccess
<a name="security-iam-awsmanpol-amazoneksmcpreadonlyaccess"></a>

`AmazonEKSMCPReadOnlyAccess`를 IAM 엔티티에 연결할 수 있습니다. 이 정책은 Amazon EKS 리소스 및 관련 AWS 서비스에 대한 읽기 전용 액세스를 제공하므로, 이를 통해 Amazon EKS Model Context Protocol(MCP) 서버가 인프라를 수정하지 않고도 관찰성 및 문제 해결 작업을 수행할 수 있습니다.

 ** 권한 세부 정보** 

이 정책에는 위탁자가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  **`eks`**: 위탁자가 EKS 클러스터, 노드 그룹, 추가 기능, 액세스 항목, 인사이트를 설명 및 나열하고, 읽기 전용 작업을 위해 Kubernetes API에 액세스하도록 허용합니다.
+  **`iam`**: 위탁자가 IAM 역할, 정책 및 연결에 대한 정보를 검색하여 EKS 리소스와 관련된 권한을 이해하도록 허용합니다.
+  **`ec2`**: 위탁자가 VPC, 서브넷 및 라우팅 테이블을 설명하여 EKS 클러스터의 네트워크 구성을 이해하도록 허용합니다.
+  **`sts`**: 위탁자가 인증 및 권한 부여 목적으로 발신자 ID 정보를 검색하도록 허용합니다.
+  **`logs`**: 위탁자가 문제 해결 및 모니터링을 위해 CloudWatch Logs에서 쿼리를 시작하고 쿼리 결과를 검색하도록 허용합니다.
+  **`cloudwatch`**: 위탁자가 클러스터 및 워크로드 성능 모니터링을 위해 지표 데이터를 검색하도록 허용합니다.
+  **`eks-mcp`**: 위탁자가 Amazon EKS MCP 서버 내에서 MCP 작업을 간접 호출하고 읽기 전용 도구를 직접 호출하도록 허용합니다.

최신 버전의 JSON 정책 문서를 보려면 AWS 관리형 정책 참조 안내서의 [AmazonEKSMCPReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSMCPReadOnlyAccess.html)를 참조하세요.

## AWS 관리형 정책: AmazonEKSServicePolicy
<a name="security-iam-awsmanpol-amazoneksservicepolicy"></a>

`AmazonEKSServicePolicy`를 IAM 엔티티에 연결할 수 있습니다. 2020년 4월 16일 이전에 생성된 클러스터에서는 IAM 역할을 만들어 이 정책을 역할에 연결해야 했습니다. 2020년 4월 16일 이후에 생성된 클러스터에서는 역할을 생성할 필요가 없으며 이 정책을 할당할 필요가 없습니다. `iam:CreateServiceLinkedRole` 권한이 있는 IAM 보안 주체를 사용하여 클러스터를 생성하는 경우 [ AWSServiceRoleforAmazonEKS](using-service-linked-roles-eks.md#service-linked-role-permissions-eks) 서비스 연결 역할이 자동으로 생성됩니다. 서비스 연결 역할에는 [관리형 정책: AmazonEKSServiceRolePolicy](#security-iam-awsmanpol-amazoneksservicerolepolicy)가 연결되어 있습니다.

이 정책을 통해 Amazon EKS는 Amazon EKS 클러스터를 운영하는 데 필요한 리소스를 생성하고 관리할 수 있습니다.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  **`eks`** - 사용자가 업데이트를 시작한 후 클러스터의 Kubernetes 버전을 업데이트합니다. 이 권한은 Amazon EKS에 사용되지 않지만 이전 버전과의 호환성을 위해 정책에 그대로 유지됩니다.
+  **`ec2`** - 탄력적 네트워크 인터페이스 및 기타 네트워크 리소스와 태그를 사용합니다. 이는 Amazon EKS에서 노드와 Kubernetes 제어부 간의 통신을 용이하게 하는 네트워킹을 구성하는 데 필요합니다. 보안 그룹에 대한 정보를 읽습니다. 보안 그룹의 태그를 업데이트합니다.
+  **`route53`** - VPC를 호스팅 영역에 연결합니다. 이는 Amazon EKS에서 Kubernetes 클러스터 API 서버에 프라이빗 엔드포인트 네트워킹을 활성화하는 데 필요합니다.
+  **`logs`** - 로그 이벤트. 이는 Amazon EKS가 Kubernetes 제어 영역 로그를 CloudWatch로 전송하기 위해 필요합니다.
+  **`iam`** - 서비스 연결 역할을 생성합니다. 이는 Amazon EKS가 사용자를 대신하여 [Amazon EKS에 대한 서비스 연결 역할 권한](using-service-linked-roles-eks.md#service-linked-role-permissions-eks) 서비스 연결 역할을 생성하는 데 필요합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSServicePolicy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSServicePolicy.html#AmazonEKSServicePolicy-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSServiceRolePolicy
<a name="security-iam-awsmanpol-amazoneksservicerolepolicy"></a>

`AmazonEKSServiceRolePolicy`를 IAM 엔터티에 연결할 수 없습니다. 이 정책은 Amazon EKS에 사용자를 대신하여 작업을 수행할 수 있도록 서비스 연결 역할에 연결됩니다. 자세한 내용은 [Amazon EKS에 대한 서비스 연결 역할 권한](using-service-linked-roles-eks.md#service-linked-role-permissions-eks) 섹션을 참조하세요. `iam:CreateServiceLinkedRole` 권한이 있는 IAM 보안 주체를 사용하여 클러스터를 생성하는 경우 [ AWSServiceRoleforAmazonEKS](using-service-linked-roles-eks.md#service-linked-role-permissions-eks) 서비스 연결 역할이 자동으로 생성되며 이 정책이 연결됩니다.

이 정책을 사용하면 서비스 연결 역할이 사용자를 대신하여 AWS 서비스를 직접 호출할 수 있습니다.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  **`ec2`** - 탄력적 네트워크 인터페이스와 Amazon EC2 인스턴스, 클러스터 보안 그룹 및 클러스터를 생성하는 데 필요한 VPC를 생성하고 설명합니다. 자세한 내용은 [클러스터에 대한 Amazon EKS 보안 그룹 요구 사항 보기](sec-group-reqs.md) 섹션을 참조하세요. 보안 그룹에 대한 정보를 읽습니다. 보안 그룹의 태그를 업데이트합니다. 온디맨드 용량 예약에 대한 자세한 내용을 읽으세요. 라우팅 테이블 및 네트워크 ACL을 포함한 VPC 구성을 읽어 클러스터 인사이트의 일부로 구성 문제를 감지합니다.
+  ** `ec2` Auto Mode** - EKS Auto Mode에서 생성된 EC2 인스턴스를 종료합니다. 자세한 내용은 [EKS Auto Mode를 사용하여 클러스터 인프라 자동화](automode.md) 섹션을 참조하세요.
+  **`iam`** - IAM 역할에 연결된 모든 관리형 정책을 나열합니다. 이는 Amazon EKS가 클러스터 생성에 필요한 모든 관리형 정책 및 권한을 나열하고 검증하는 데 필요합니다.
+  **호스팅 영역과 VPC 연결** - 이는 Amazon EKS에서 Kubernetes 클러스터 API 서버에 프라이빗 엔드포인트 네트워킹을 사용 설정하는 데 필요합니다.
+  **로그 이벤트** - 이는 Amazon EKS가 Kubernetes 제어 영역 로그를 CloudWatch로 전송하기 위해 필요합니다.
+  **지표 입력** - Amazon EKS가 Kubernetes 컨트롤 플레인 로그를 CloudWatch로 전송하기 위해 필요합니다.
+  **`eks`** - 클러스터 액세스 항목 및 정책을 관리하여 EKS 리소스에 액세스할 수 있는 사용자와 수행 가능한 작업을 세밀하게 제어할 수 있습니다. 여기에는 컴퓨팅, 네트워킹, 로드 밸런싱, 스토리지 작업에 대한 표준 액세스 정책 연결이 포함됩니다.
+  **`elasticloadbalancing`** - EKS 클러스터와 연결된 로드 밸런서 및 해당 구성 요소(리스너, 대상 그룹, 인증서)를 생성, 관리, 삭제합니다. 로드 밸런서 속성 및 상태를 봅니다.
+  ** `events` **-EKS 클러스터와 관련된 EC2 및 AWS 상태 이벤트를 모니터링하기 위한 EventBridge 규칙을 생성하고 관리하여 인프라 변경 및 상태 알림에 대한 자동 응답을 활성화합니다.
+  **`iam`** - EKS 노드 관리에 필요한 생성, 삭제, 역할 연결을 포함하여 'eks' 접두사가 있는 EC2 인스턴스 프로파일을 관리합니다. 사용자가 사용할 워커 노드에 대한 사용자 지정 인스턴스 프로파일을 정의할 수 있도록 인스턴스 프로파일을 설명할 수 있습니다.
+  **`pricing`** 및 **`shield`** - AWS 요금 정보 및 Shield 보호 상태에 액세스하고 이를 통해 EKS 리소스에 대한 비용 관리 및 고급 보안 기능을 활성화합니다.
+  **리소스 정리**-클러스터 정리 작업 중에 볼륨, 스냅샷, 시작 템플릿, 네트워크 인터페이스를 포함하여 EKS 태그가 지정된 리소스를 안전하게 삭제합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSServiceRolePolicy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSServiceRolePolicy.html#AmazonEKSServiceRolePolicy-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSVPCResourceController
<a name="security-iam-awsmanpol-amazoneksvpcresourcecontroller"></a>

`AmazonEKSVPCResourceController` 정책을 IAM ID에 연결할 수 있습니다. [포드에 보안 그룹](security-groups-for-pods.md)을 사용하는 경우, 사용자를 대신하여 작업을 수행하려면 이 정책을 [Amazon EKS 클러스터 IAM 역할](cluster-iam-role.md)에 첨부해야 합니다.

이 정책은 노드의 탄력적 네트워크 인터페이스 및 IP 주소를 관리하기 위한 클러스터 역할에 권한을 부여합니다.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  **`ec2`** - 탄력적 네트워크 인터페이스 및 IP 주소를 관리하여 포드 보안 그룹 및 Windows 노드를 지원합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSVPCResourceController를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSVPCResourceController.html#AmazonEKSVPCResourceController-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSWorkerNodePolicy
<a name="security-iam-awsmanpol-amazoneksworkernodepolicy"></a>

`AmazonEKSWorkerNodePolicy`를 IAM 엔터티에 연결할 수 있습니다. 이 정책을 Amazon EC2 노드 생성 시에 지정한, Amazon EKS에서 사용자를 대신하여 작업을 수행하도록 허용하는 [IAM 역할](create-node-role.md)에 연결해야 합니다. `eksctl`을 사용하여 노드 그룹을 생성하는 경우, 노드 IAM 역할을 생성하고 이 정책을 역할에 자동으로 연결합니다.

이 정책은 Amazon EKS Amazon EC2 노드에 Amazon EKS 클러스터에 연결할 수 있는 권한을 부여합니다.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  **`ec2`** - 인스턴스 볼륨 및 네트워크 정보를 읽습니다. 이는 Kubernetes 노드가 Amazon EKS 클러스터에 가입하는 데 필요한 Amazon EC2 리소스에 대한 정보를 설명하는 데 필요합니다.
+  **`eks`** - 선택적으로 클러스터를 노드 부트스트래핑의 일부로 설명합니다.
+  **`eks-auth:AssumeRoleForPodIdentity`** - 노드에서 EKS 워크로드에 대한 자격 증명 검색을 허용합니다. EKS Pod Identity가 제대로 작동하려면 필요합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSWorkerNodePolicy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSWorkerNodePolicy.html#AmazonEKSWorkerNodePolicy-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSWorkerNodeMinimalPolicy
<a name="security-iam-awsmanpol-AmazonEKSWorkerNodeMinimalPolicy"></a>

AmazonEKSWorkerNodeMinimalPolicy를 IAM 엔티티에 연결할 수 있습니다. 이 정책을 Amazon EC2 노드 생성 시에 지정한, Amazon EKS에서 사용자를 대신하여 작업을 수행하도록 허용하는 IAM 역할에 연결할 수 있습니다.

이 정책은 Amazon EKS Amazon EC2 노드에 Amazon EKS 클러스터에 연결할 수 있는 권한을 부여합니다. 이 정책은 AmazonEKSWorkerNodePolicy에 비해 권한이 적습니다.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  `eks-auth:AssumeRoleForPodIdentity` - 노드에서 EKS 워크로드에 대한 보안 인증 정보 검색을 허용합니다. EKS Pod Identity가 제대로 작동하려면 필요합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSWorkerNodePolicy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSWorkerNodeMinimalPolicy.html#AmazonEKSWorkerNodeMinimalPolicy-json) 참조하세요.

## AWS 관리형 정책: AWSServiceRoleForAmazonEKSNodegroup
<a name="security-iam-awsmanpol-awsserviceroleforamazoneksnodegroup"></a>

`AWSServiceRoleForAmazonEKSNodegroup`를 IAM 엔터티에 연결할 수 없습니다. 이 정책은 Amazon EKS에 사용자를 대신하여 작업을 수행할 수 있도록 서비스 연결 역할에 연결됩니다. 자세한 내용은 [Amazon EKS에 대한 서비스 연결 역할 권한](using-service-linked-roles-eks-nodegroups.md#service-linked-role-permissions-eks-nodegroups) 섹션을 참조하세요.

이 정책은 계정에서 Amazon EC2 노드 그룹을 생성하고 관리하도록 허용하는 `AWSServiceRoleForAmazonEKSNodegroup` 역할 권한을 부여합니다.

 ** 권한 세부 정보** 

이 정책에는 Amazon EKS가 다음 태스크를 완료할 수 있도록 허용하는 다음과 같은 권한이 포함되어 있습니다.
+  **`ec2`** - 보안 그룹, 태그, 용량 예약, 시작 템플릿을 사용합니다. 이는 Amazon EKS 관리형 노드 그룹이 원격 액세스 구성을 활성화하고 관리형 노드 그룹에서 사용할 수 있는 용량 예약을 설명하는 데 필요합니다. 또한 Amazon EKS 관리 노드 그룹은 사용자를 대신하여 시작 템플릿을 생성합니다. 이는 각 관리형 노드 그룹을 백업하는 Amazon EC2 Auto Scaling 그룹을 구성하기 위한 것입니다.
+  **`iam`** - 서비스 연결 역할을 생성하고 역할을 전달합니다. 이는 Amazon EKS 관리형 노드 그룹이 관리형 노드 그룹을 생성할 때 전달되는 역할의 인스턴스 프로필을 관리하는 데 필요합니다. 이 인스턴스 프로필은 관리형 노드 그룹의 일부로 시작된 Amazon EC2 인스턴스에 사용됩니다. Amazon EKS는 Amazon EC2 Auto Scaling 그룹과 같은 다른 서비스에 대한 서비스 연결 역할을 생성해야 합니다. 이러한 권한은 관리 노드 그룹 생성에 사용됩니다.
+  **`autoscaling`** - 보안 Auto Scaling 그룹을 사용합니다. 이는 Amazon EKS 관리 노드 그룹이 각 관리 노드 그룹을 백업하는 Amazon EC2 Auto Scaling 그룹을 관리하는 데 필요합니다. 또한 노드 그룹을 업데이트하고 관리형 노드 그룹에서 구성된 웜 풀을 관리하는 중에 노드가 종료되거나 재활용될 때 포드 제거와 같은 기능을 지원하는 데에도 사용됩니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AWSServiceRoleForAmazonEKSNodegroup를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSServiceRoleForAmazonEKSNodegroup.html#AWSServiceRoleForAmazonEKSNodegroup-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSDashboardServiceRolePolicy
<a name="security-iam-awsmanpol-AmazonEKSDashboardServiceRolePolicy"></a>

`AmazonEKSDashboardServiceRolePolicy`를 IAM 엔터티에 연결할 수 없습니다. 이 정책은 Amazon EKS에 사용자를 대신하여 작업을 수행할 수 있도록 서비스 연결 역할에 연결됩니다. 자세한 내용은 [Amazon EKS에 대한 서비스 연결 역할 권한](using-service-linked-roles-eks-dashboard.md#service-linked-role-permissions-eks-dashboard) 섹션을 참조하세요.

이 정책은 계정에서 Amazon EC2 노드 그룹을 생성하고 관리하도록 허용하는 `AWSServiceRoleForAmazonEKSDashboard` 역할 권한을 부여합니다.

 ** 권한 세부 정보** 

이 정책에는 이러한 태스크를 완료하기 위해 액세스를 허용하는 다음 권한이 포함되어 있습니다.
+  ** `organizations` ** - AWS Organizations 구조 및 계정에 대한 정보를 봅니다. 여기에는 조직의 계정을 나열하고, 조직 단위 및 루트를 보고, 위임 관리자를 나열하고, 조직에 액세스할 수 있는 서비스를 보고, 조직 및 계정에 대한 세부 정보를 검색할 수 있는 권한이 포함됩니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKSDashboardServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSDashboardServiceRolePolicy.html#AmazonEKSDashboardServiceRolePolicy-json)를 참조하세요.

## AWS 관리형 정책: AmazonEBSCSIDriverPolicy
<a name="security-iam-awsmanpol-amazonebscsidriverservicerolepolicy"></a>

`AmazonEBSCSIDriverPolicy` 정책은 Amazon EBS Container Storage Interface(CSI) 드라이버가 사용자를 대신하여 볼륨을 생성, 수정, 복사, 연결, 분리 및 삭제하도록 허용합니다. 여기에는 기존 볼륨에서 태그를 수정하고 EBS 볼륨에서 빠른 스냅샷 복원(FSR)을 활성화하는 작업이 포함됩니다. 또한 EBS CSI 드라이버에 스냅샷을 생성, 잠금, 복원 및 삭제하고 인스턴스, 볼륨 및 스냅샷을 나열할 권한을 부여합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEBSCSIDriverServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEBSCSIDriverPolicy.html#AmazonEBSCSIDriverPolicy-json)를 참조하세요.

## AWS 관리형 정책: AmazonEFSCSIDriverPolicy
<a name="security-iam-awsmanpol-amazonefscsidriverservicerolepolicy"></a>

`AmazonEFSCSIDriverPolicy` 정책을 통해 Amazon EFS 컨테이너 스토리지 인터페이스(CSI)가 사용자를 대신하여 액세스 포인트를 생성하고 삭제할 수 있습니다. 또한 Amazon EFS CSI 드라이버에 액세스 포인트, 파일 시스템, 탑재 대상 및 Amazon EC2 가용 영역을 나열할 수 있는 권한을 부여합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEFSCSIDriverServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEFSCSIDriverPolicy.html#AmazonEFSCSIDriverPolicy-json)를 참조하세요.

## AWS 관리형 정책: AmazonEKSLocalOutpostClusterPolicy
<a name="security-iam-awsmanpol-amazonekslocaloutpostclusterpolicy"></a>

IAM 엔터티에 이 정책을 연결할 수 있습니다. 로컬 클러스터를 생성하기 전에 이 정책을 [클러스터 역할](cluster-iam-role.md)에 연결해야 합니다. Amazon EKS에서 관리하는 Kubernetes 클러스터는 사용자 대신 다른 AWS 서비스를 직접 호출합니다. 이러한 작업을 수행하여 서비스에 사용하는 리소스를 관리합니다.

`AmazonEKSLocalOutpostClusterPolicy`에는 다음 권한이 포함되어 있습니다.
+  **`ec2` 읽기 작업**-컨트롤 플레인 인스턴스가 가용 영역, 라우팅 테이블, 인스턴스, 네트워크 인터페이스 속성을 설명하도록 허용합니다. Amazon EC2 인스턴스가 성공적으로 클러스터에 컨트롤 플레인 인스턴스로 조인하는 데 필요한 권한입니다.
+  **`ssm`** – Amazon EKS가 계정의 로컬 클러스터와 통신하고 이를 관리하는 데 사용하는 컨트롤 플레인 인스턴스에 대한 Amazon EC2 Systems Manager 연결을 허용합니다.
+  **`logs`** - 인스턴스가 Amazon CloudWatch에 로그를 푸시하도록 허용합니다.
+  ** `secretsmanager` ** - 인스턴스가 AWS Secrets Manage 에서 안전하게 컨트롤 플레인 인스턴스에 대한 부트스트랩 데이터를 가져오고 삭제하도록 허용합니다.
+  **`ecr`** – 컨트롤 플레인 인스턴스에서 실행 중인 포드 및 컨테이너가 Amazon Elastic Container Registry에 저장된 컨테이너 이미지를 끌어오도록 허용합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKS\$1CNI\$1Policy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSLocalOutpostClusterPolicy.html#AmazonEKSLocalOutpostClusterPolicy-json) 참조하세요.

## AWS 관리형 정책: AmazonEKSLocalOutpostServiceRolePolicy
<a name="security-iam-awsmanpol-amazonekslocaloutpostservicerolepolicy"></a>

IAM 엔터티에 이 정책을 연결할 수 없습니다. `iam:CreateServiceLinkedRole` 권한이 있는 IAM 보안 주체를 사용하여 클러스터를 생성하면 Amazon EKS가 자동으로 [AWSServiceRoleforAmazonEKSLocalOutpost](using-service-linked-roles-eks-outpost.md) 서비스 연결 역할을 생성하고 이 정책을 연결합니다. 이 정책을 사용하면 서비스 연결 역할이 로컬 클러스터에 대해 사용자를 대신하여 AWS 서비스를 직접 호출할 수 있습니다.

`AmazonEKSLocalOutpostServiceRolePolicy`에는 다음 권한이 포함되어 있습니다.
+  **`ec2`** - Amazon EKS가 보안, 네트워크 및 기타 리소스와 함께 작동하여 계정에서 컨트롤 플레인 인스턴스를 성공적으로 시작하고 관리하도록 허용합니다.
+  **`ssm`, `ssmmessages`** - Amazon EKS가 계정의 로컬 클러스터와 통신하고 이를 관리하는 데 사용하는 컨트롤 플레인 인스턴스에 대한 Amazon EC2 Systems Manager 연결을 허용합니다.
+  **`iam`** - Amazon EKS가 컨트롤 플레인 인스턴스와 연결된 인스턴스 프로파일을 관리하도록 허용합니다.
+  ** `secretsmanager` ** - 인스턴스 부트스트랩 중 안전하게 참조할 수 있게 Amazon EKS가 컨트롤 플레인 인스턴스에 대한 부트스트랩 데이터를 AWS Secrets Manager에 저장하도록 허용합니다.
+  **`outposts`** - Amazon EKS가 계정에서 Outpost 정보를 가져와 Outpost에서 로컬 클러스터를 성공적으로 시작하도록 허용합니다.

최신 버전의 JSON 정책 문서를 보려면AWS 관리형 정책 참조 안내서의 [AmazonEKS\$1CNI\$1Policy를](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSLocalOutpostServiceRolePolicy.html#AmazonEKSLocalOutpostServiceRolePolicy-json) 참조하세요.

## AWS 관리형 정책에 대한 Amazon EKS 업데이트
<a name="security-iam-awsmanpol-updates"></a>

이 서비스에서 이러한 변경 사항 추적을 시작한 이후 Amazon EKS에 대한 AWS 관리형 정책 업데이트에 대한 세부 정보를 확인합니다.

이 특정 설명서 페이지의 모든 소스 파일 변경 사항에 대한 알림을 받으려면 RSS 리더를 사용하여 다음 URL을 구독하세요.

```
https://github.com/awsdocs/amazon-eks-user-guide/commits/mainline/latest/ug/security/iam-reference/security-iam-awsmanpol.adoc.atom
```


| 변경 | 설명 | 날짜 | 
| --- | --- | --- | 
|  [AWS 관리형 정책: AmazonEKSNetworkingPolicy](#security-iam-awsmanpol-AmazonEKSNetworkingPolicy)에 권한이 추가되었습니다.  |  `AmazonEKSNetworkingPolicy`에서 `ec2:ModifyNetworkInterfaceAttribute` 권한을 추가했습니다. 이를 통해 Amazon EKS Auto Mode 컨트롤러에서 EC2 인스턴스와 관련된 네트워크 인터페이스 속성을 수정할 수 있습니다.  |  2026년 2월 3일  | 
|  [AWS 관리형 정책: AWSServiceRoleForAmazonEKSNodegroup](#security-iam-awsmanpol-awsserviceroleforamazoneksnodegroup)에 권한이 추가되었습니다.  |  `AWSServiceRoleForAmazonEKSNodegroup`에 `autoscaling:PutWarmPool`, `autoscaling:DeleteWarmPool` 및 `autoscaling:DescribeWarmPool` 권한을 추가했습니다. 이를 통해 Amazon EKS 관리형 노드 그룹에서 노드 그룹 수명 주기 전반에 걸쳐 기본 ASG 웜 풀 리소스를 관리할 수 있습니다.  |  2026년 2월 17일  | 
|  [AWS 관리형 정책: AmazonEKSServiceRolePolicy](#security-iam-awsmanpol-amazoneksservicerolepolicy)에 권한이 추가되었습니다.  |  `AmazonEKSServiceRolePolicy`의 `iam:GetInstanceProfile` 권한에 대한 대상 인스턴스 프로파일 이름에서 'eks' 접두사 요구 사항을 제거했습니다. 이를 통해 Amazon EKS Auto Mode는 'eks' 이름 지정 접두사 없이 NodeClasses에서 사용자 지정 인스턴스 프로파일을 검증하고 활용할 수 있습니다.  |  2026년 2월 2일  | 
|  [AmazonEBSCSIDriverPolicy](#security-iam-awsmanpol-amazonebscsidriverservicerolepolicy)에 권한을 추가했습니다.  |  EBS CSI 드라이버가 EBS 스냅샷을 직접 잠글 수 있도록 `ec2:LockSnapshot` 권한을 추가했습니다.  |  2026년 1월 15일  | 
|  [AWS 관리형 정책: AmazonEKSMCPReadOnlyAccess](#security-iam-awsmanpol-amazoneksmcpreadonlyaccess)를 소개합니다.  |  Amazon EKS는 관찰성 및 문제 해결을 위해 Amazon EKS MCP 서버에서 읽기 전용 도구를 활성화하도록 새로운 관리형 정책 `AmazonEKSMCPReadOnlyAccess`를 도입했습니다.  |  2025년 11월 21일  | 
|  [AmazonEBSCSIDriverPolicy](#security-iam-awsmanpol-amazonebscsidriverservicerolepolicy)에 권한을 추가했습니다.  |  EBS CSI 드라이버가 EBS 볼륨을 직접 복사할 수 있도록 `ec2:CopyVolumes` 권한을 추가했습니다.  |  2025년 11월 17일  | 
|  [AWS 관리형 정책: AmazonEKSServiceRolePolicy](#security-iam-awsmanpol-amazoneksservicerolepolicy)에 권한이 추가되었습니다.  |  `AmazonEKSServiceRolePolicy`에 `ec2:DescribeRouteTables` 및 `ec2:DescribeNetworkAcls` 권한을 추가했습니다. 이를 통해 Amazon EKS는 클러스터 인사이트의 일부로 하이브리드 노드에 대한 VPC 라우팅 테이블 및 네트워크 ACL의 구성 문제를 감지할 수 있습니다.  |  2025년 10월 22일  | 
|  [AWSServiceRoleForAmazonEKSConnector](using-service-linked-roles-eks-connector.md)에 권한을 추가함   |  `ssmmessages:OpenDataChannel`에 `AmazonEKSConnectorServiceRolePolicy` 권한을 추가함   |  2025년 10월 15일  | 
|  [AWS 관리형 정책: AmazonEKSServiceRolePolicy](#security-iam-awsmanpol-amazoneksservicerolepolicy)에 권한 추가됨   |  이 역할은 새 액세스 정책 `AmazonEKSEventPolicy`를 연결할 수 있습니다. `ec2:DeleteLaunchTemplate` 및 `ec2:TerminateInstances`에 대한 권한이 제한됩니다.  |  2025년 8월 26일  | 
|  [AWS 관리형 정책: AmazonEKSLocalOutpostServiceRolePolicy](#security-iam-awsmanpol-amazonekslocaloutpostservicerolepolicy)에 권한 추가됨   |  `AmazonEKSLocalOutpostServiceRolePolicy`에 `ssmmessages:OpenDataChannel` 권한이 추가되었습니다.  |  2025년 6월 26일  | 
|  [AWS 관리형 정책: AmazonEKSComputePolicy](#security-iam-awsmanpol-AmazonEKSComputePolicy)에 권한이 추가되었습니다.  |  용량 예약 ` arn:aws:ec2:*:*:capacity-reservation/*`을 포함하도록 `ec2:RunInstances` 및 `ec2:CreateFleet` 작업에 대한 리소스 권한이 업데이트되었습니다. 이를 통해 Amazon EKS 자동 모드에서 계정의 EC2 온디맨드 용량 예약을 사용하여 인스턴스를 시작할 수 있습니다. Amazon EKS 자동 모드에서 사용자를 대신하여 EC2 Spot 서비스 연결 역할 `AWSServiceRoleForEC2Spot`을 생성할 수 있도록 `iam:CreateServiceLinkedRole`이 추가되었습니다.  |  2025년 6월 20일  | 
|  [AmazonEKSServiceRolePolicy](#security-iam-awsmanpol-amazoneksservicerolepolicy)에 권한이 추가되었습니다.  |  Amazon EKS 자동 모드에서 계정의 EC2 온디맨드 용량 예약을 사용하여 인스턴스를 시작할 수 있도록 `ec2:DescribeCapacityReservations` 권한이 추가되었습니다.  |  2025년 6월 20일  | 
|  [AWS 관리형 정책: AmazonEKSDashboardConsoleReadOnly](#security-iam-awsmanpol-amazoneksdashboardconsolereadonly)를 소개합니다.  |  새 `AmazonEKSDashboardConsoleReadOnly` 정책이 도입되었습니다.  |  2025년 6월 19일  | 
|  [AWS 관리형 정책: AmazonEKSDashboardServiceRolePolicy](#security-iam-awsmanpol-AmazonEKSDashboardServiceRolePolicy)를 소개합니다.  |  새 `AmazonEKSDashboardServiceRolePolicy` 정책이 도입되었습니다.  |  2025년 5월 21일  | 
|  [AmazonEKSClusterPolicy](#security-iam-awsmanpol-amazoneksclusterpolicy)에 권한을 추가했습니다.  |  VPC CNI가 예기치 않게 종료되는 경우 Amazon EKS가 남아 있는 탄력적 네트워크 인터페이스를 삭제할 수 있도록 `ec2:DeleteNetworkInterfaces` 권한이 추가되었습니다.  |  2025년 4월 16일  | 
|  [AmazonEKSServiceRolePolicy](#security-iam-awsmanpol-amazoneksservicerolepolicy)에 권한이 추가되었습니다.  |  EKS 1.33 버전 릴리스의 일부로 EKS AI/ML 고객이 EFA와 호환되는 기본 EKS 클러스터 SG에 보안 그룹 송신 규칙을 추가할 수 있도록 `ec2:RevokeSecurityGroupEgress` 및 `ec2:AuthorizeSecurityGroupEgress` 권한이 추가되었습니다.  |  2025년 4월 14일  | 
|  [AmazonEKSServiceRolePolicy](#security-iam-awsmanpol-amazoneksservicerolepolicy)에 권한이 추가되었습니다.  |  EKS Auto Mode에서 생성된 EC2 인스턴스를 종료할 수 있는 권한이 추가되었습니다.  |  2025년 2월 28일  | 
|  [AmazonEBSCSIDriverPolicy](#security-iam-awsmanpol-amazonebscsidriverservicerolepolicy)에 권한을 추가했습니다.  |  EBS CSI 드라이버에 모든 스냅샷을 복원할 수 있는 권한을 부여하는 새 명령문을 추가했습니다. 이전에 기존 정책에서 허용되었지만, `CreateVolume`에 대한 IAM 처리가 변경되어 새로운 명시적 명령문이 필요합니다. EBS CSI 드라이버가 기존 볼륨에서 태그를 수정할 수 있는 기능이 추가되었습니다. EBS CSI 드라이버는 Kubernetes VolumeAttributesClasses의 파라미터를 통해 기존 볼륨의 태그를 수정할 수 있습니다. EBS CSI 드라이버가 EBS 볼륨에서 빠른 스냅샷 복원(FSR)을 활성화할 수 있는 기능을 추가했습니다. EBS CSI 드라이버는 Kubernetes 스토리지 클래스의 파라미터를 통해 새 볼륨에서 FSR을 활성화할 수 있습니다.  |  2025년 1월 13일  | 
|  [AWS 관리형 정책: AmazonEKSLoadBalancingPolicy](#security-iam-awsmanpol-AmazonEKSLoadBalancingPolicy)에 권한이 추가되었습니다.  |  네트워킹 및 IP 주소 리소스를 나열하고 기술할 수 있도록 `AmazonEKSLoadBalancingPolicy`를 업데이트했습니다.  |  2024년 12월 26일  | 
|  [AWS 관리형 정책: AWSServiceRoleForAmazonEKSNodegroup](#security-iam-awsmanpol-awsserviceroleforamazoneksnodegroup)에 권한이 추가되었습니다.  |  중국 리전과의 호환성을 위해 `AWSServiceRoleForAmazonEKSNodegroup`이 업데이트되었습니다.  |  2024년 11월 22일  | 
|  [AWS 관리형 정책: AmazonEKSLocalOutpostClusterPolicy](#security-iam-awsmanpol-amazonekslocaloutpostclusterpolicy)에 권한 추가   |  클러스터 컨트롤 플레인의 AWS Cloud Controller Manager가 각 노드가 있는 가용 영역을 식별할 수 있도록 `AmazonEKSLocalOutpostClusterPolicy`에 대한 `ec2:DescribeAvailabilityZones` 권한이 추가되었습니다.  |  2024년 11월 21일  | 
|  [AWS 관리형 정책: AWSServiceRoleForAmazonEKSNodegroup](#security-iam-awsmanpol-awsserviceroleforamazoneksnodegroup)에 권한이 추가되었습니다.  |  Amazon EKS 관리형 노드 그룹에서 생성한 인스턴스에서 `ec2:RebootInstances`를 허용하도록 `AWSServiceRoleForAmazonEKSNodegroup` 정책이 업데이트되었습니다. Amazon EC2 리소스에 대한 `ec2:CreateTags` 권한이 제한되었습니다.  |  2024년 11월 20일  | 
|  [AWS 관리형 정책: AmazonEKSServiceRolePolicy](#security-iam-awsmanpol-amazoneksservicerolepolicy)에 권한이 추가되었습니다.  |  EKS가 AWS 관리형 정책 `AmazonEKSServiceRolePolicy`를 업데이트했습니다. EKS 액세스 정책, 로드 밸런서 관리, 자동 클러스터 리소스 정리에 대한 권한이 추가되었습니다.  |  2024년 11월 16일  | 
|  [AWS 관리형 정책: AmazonEKSComputePolicy](#security-iam-awsmanpol-AmazonEKSComputePolicy)를 소개합니다.  |  EKS가 AWS 관리형 정책 `AmazonEKSComputePolicy`를 업데이트했습니다. `iam:AddRoleToInstanceProfile` 작업에 대한 리소스 권한이 업데이트되었습니다.  |  2024년 11월 7일  | 
|  [AWS 관리형 정책: AmazonEKSComputePolicy](#security-iam-awsmanpol-AmazonEKSComputePolicy)를 소개합니다.  |   AWS에서는 `AmazonEKSComputePolicy`를 도입했습니다.  |  2024년 11월 1일  | 
|  `AmazonEKSClusterPolicy`에 권한 추가   |  Amazon EKS가 노드에 토폴로지 정보를 레이블로 연결할 수 있는 `ec2:DescribeInstanceTopology` 권한이 추가되었습니다.  |  2024년 11월 1일  | 
|  [AWS 관리형 정책: AmazonEKSBlockStoragePolicy](#security-iam-awsmanpol-AmazonEKSBlockStoragePolicy)를 소개합니다.  |   AWS에서는 `AmazonEKSBlockStoragePolicy`를 도입했습니다.  |  2024년 10월 30일  | 
|  [AWS 관리형 정책: AmazonEKSLoadBalancingPolicy](#security-iam-awsmanpol-AmazonEKSLoadBalancingPolicy)를 소개합니다.  |   AWS에서는 `AmazonEKSLoadBalancingPolicy`를 도입했습니다.  |  2024년 10월 30일  | 
|  [AmazonEKSServiceRolePolicy](#security-iam-awsmanpol-amazoneksservicerolepolicy)에 권한이 추가되었습니다.  |  Amazon EKS가 Amazon CloudWatch에 지표를 게시할 수 있는 `cloudwatch:PutMetricData` 권한이 추가되었습니다.  |  2024년 10월 29일  | 
|  [AWS 관리형 정책: AmazonEKSNetworkingPolicy](#security-iam-awsmanpol-AmazonEKSNetworkingPolicy)를 소개합니다.  |   AWS에서는 `AmazonEKSNetworkingPolicy`를 도입했습니다.  |  2024년 10월 28일  | 
|  `AmazonEKSServicePolicy` 및 `AmazonEKSServiceRolePolicy`에 권한을 추가했습니다   |  EKS가 보안 그룹 정보를 읽고 관련 태그를 업데이트할 수 있도록 `ec2:GetSecurityGroupsForVpc` 및 연결된 태그 권한이 추가되었습니다.  |  2024년 10월 10일  | 
|  [AmazonEKSWorkerNodeMinimalPolicy](#security-iam-awsmanpol-AmazonEKSWorkerNodeMinimalPolicy)를 도입했습니다.  |   AWS에서는 `AmazonEKSWorkerNodeMinimalPolicy`를 도입했습니다.  |  2024년 10월 3일  | 
|  [AWSServiceRoleForAmazonEKSNodegroup](#security-iam-awsmanpol-awsserviceroleforamazoneksnodegroup)에 권한을 추가했습니다.  |  Amazon EKS가 Amazon EKS 관리형 Auto Scaling 그룹에서 `AZRebalance`를 일시 중단 및 다시 재개할 수 있도록 `autoscaling:ResumeProcesses` 및 `autoscaling:SuspendProcesses` 권한이 추가되었습니다.  |  2024년 8월 21일  | 
|  [AWSServiceRoleForAmazonEKSNodegroup](#security-iam-awsmanpol-awsserviceroleforamazoneksnodegroup)에 권한을 추가했습니다.  |  사용자 계정의 용량 예약을 설명할 수 있는 `ec2:DescribeCapacityReservations` 권한을 Amazon EKS에 추가했습니다. `CAPACITY_BLOCK` 노드 그룹에서 예약된 규모 조정을 설정할 수 있는 `autoscaling:PutScheduledUpdateGroupAction` 권한이 추가되었습니다.  |  2024년 6월 27일  | 
|   [AmazonEKS\$1CNI\$1Policy](#security-iam-awsmanpol-amazoneks-cni-policy) – 기존 정책 업데이트  |  Amazon EKS에 Kubernetes용 Amazon VPC CNI 플러그인에서 Amazon VPC 서브넷의 사용 가능한 IP 주소 양을 볼 수 있도록 허용하는 `ec2:DescribeSubnets` 권한이 새로 추가되었습니다. VPC CNI는 각 서브넷의 사용 가능한 IP 주소를 사용하여 탄력적 네트워크 인터페이스를 생성할 때 사용 가능한 IP 주소가 가장 많은 서브넷을 선택할 수 있습니다.  |  2024년 3월 4일  | 
|   [AmazonEKSWorkerNodePolicy](#security-iam-awsmanpol-amazoneksworkernodepolicy) - 기존 정책에 대한 업데이트  |  Amazon EKS에서 EKS Pod Identity를 허용하는 새로운 권한을 추가했습니다. Amazon EKS Pod Identity 에이전트는 노드 역할을 사용합니다.  |  2023년 11월 26일  | 
|  [AmazonEFSCSIDriverPolicy](#security-iam-awsmanpol-amazonefscsidriverservicerolepolicy)를 도입했습니다.  |   AWS에서는 `AmazonEFSCSIDriverPolicy`를 도입했습니다.  |  2023년 7월 26일  | 
|  [AmazonEKSClusterPolicy](#security-iam-awsmanpol-amazoneksclusterpolicy)에 권한을 추가했습니다.  |  Amazon EKS에서 로드 밸런서를 생성하는 동안 서브넷 자동 검색 중에 AZ 세부 정보를 가져올 수 있는 `ec2:DescribeAvailabilityZones` 권한이 추가되었습니다.  |  2023년 2월 7일  | 
|  [AmazonEBSCSIDriverPolicy](#security-iam-awsmanpol-amazonebscsidriverservicerolepolicy)의 정책 조건을 업데이트했습니다.  |  `StringLike` 키 필드에 와일드카드 문자가 있는 잘못된 정책 조건을 제거했습니다. 또한 in-tree 플러그인에서 생성된 볼륨을 EBS CSI 드라이버에서 삭제할 수 있는 새 조건 `ec2:ResourceTag/kubernetes.io/created-for/pvc/name: "*"`를 `ec2:DeleteVolume`에 추가했습니다.  |  2022년 11월 17일  | 
|  [AmazonEKSLocalOutpostServiceRolePolicy](#security-iam-awsmanpol-amazonekslocaloutpostservicerolepolicy)에 권한이 추가되었습니다.  |  더 나은 사전 조건 검증 및 관리형 수명 주기 제어를 허용하기 위해 `ec2:DescribeVPCAttribute`, `ec2:GetConsoleOutput` 및 `ec2:DescribeSecret`을 추가했습니다. 또한 Outposts의 컨트롤 플레인 Amazon EC2 인스턴스의 배치 제어를 지원하는 `ec2:RunInstances`에 `ec2:DescribePlacementGroups` 및 `"arn:aws:ec2:*:*:placement-group/*"`을 추가했습니다.  |  2022년 10월 24일  | 
|  [AmazonEKSLocalOutpostClusterPolicy](#security-iam-awsmanpol-amazonekslocaloutpostclusterpolicy)의 Amazon Elastic Container Registry 권한을 업데이트합니다.  |  모든 리소스 부분에서 범위가 지정된 부분으로 `ecr:GetDownloadUrlForLayer` 작업을 이동했습니다. ` arn:aws:ecr:*:*:repository/eks/ ` 리소스를 추가했습니다. ` arn:aws:ecr:` 리소스를 제거했습니다. 이 리소스에는 추가한 ` arn:aws:ecr:*:*:repository/eks/*` 리소스가 적용됩니다.  |  2022년 10월 20일  | 
|  [AmazonEKSLocalOutpostClusterPolicy](#security-iam-awsmanpol-amazonekslocaloutpostclusterpolicy)에 권한이 추가되었습니다.  |  클러스터 컨트롤 플레인 인스턴스가 일부 `kubelet` 인수를 업데이트할 수 있도록 ` arn:aws:ecr:*:*:repository/kubelet-config-updater` Amazon Elastic Container Registry 리포지토리가 추가되었습니다.  |  2022년 8월 31일  | 
|  [AmazonEKSLocalOutpostClusterPolicy](#security-iam-awsmanpol-amazonekslocaloutpostclusterpolicy)가 도입되었습니다.  |   AWS에서는 `AmazonEKSLocalOutpostClusterPolicy`를 도입했습니다.  |  2022년 8월 24일  | 
|  [AmazonEKSLocalOutpostServiceRolePolicy](#security-iam-awsmanpol-amazonekslocaloutpostservicerolepolicy)가 도입되었습니다.  |   AWS에서는 `AmazonEKSLocalOutpostServiceRolePolicy`를 도입했습니다.  |  2022년 8월 23일  | 
|  [AmazonEBSCSIDriverPolicy](#security-iam-awsmanpol-amazonebscsidriverservicerolepolicy)를 도입했습니다.  |   AWS에서는 `AmazonEBSCSIDriverPolicy`를 도입했습니다.  |  2022년 4월 4일  | 
|  [AmazonEKSWorkerNodePolicy](#security-iam-awsmanpol-amazoneksworkernodepolicy)에 권한을 추가했습니다.  |  인스턴스 수준 속성을 자동으로 검색할 수 있는 Amazon EKS 최적화 AMI를 사용 설정하도록 `ec2:DescribeInstanceTypes`를 추가했습니다.  |  2022년 3월 21일  | 
|  [AWSServiceRoleForAmazonEKSNodegroup](#security-iam-awsmanpol-awsserviceroleforamazoneksnodegroup)에 권한을 추가했습니다.  |  Amazon EKS가 지표 수집을 사용할 수 있도록 `autoscaling:EnableMetricsCollection` 권한이 추가되었습니다.  |  2021년 12월 13일  | 
|  [AmazonEKSClusterPolicy](#security-iam-awsmanpol-amazoneksclusterpolicy)에 권한을 추가했습니다.  |  Amazon EKS가 Network Load Balancer에 대한 서비스 연결 역할을 생성하도록 허용하는 `ec2:DescribeAccountAttributes`, `ec2:DescribeAddresses` 및 `ec2:DescribeInternetGateways` 권한이 추가됨.  |  2021년 6월 17일  | 
|  Amazon EKS가 변경 사항 추적 시작.  |  Amazon EKS가 AWS 관리형 정책에 대한 변경 내용 추적을 시작했습니다.  |  2021년 6월 17일  | 

# IAM 문제 해결
<a name="security-iam-troubleshoot"></a>

이 주제에서는 IAM과 함께 Amazon EKS를 사용하는 동안 발생할 수 있는 몇 가지 일반적 오류와 이를 해결하는 방법을 다룹니다.

## AccessDeniedException
<a name="iam-error"></a>

AWS API 작업을 직접 호출할 때 `AccessDeniedException`이 발생하면 사용하고 있는 [IAM 보안 주체](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal) 자격 증명에 해당 직접 호출을 수행할 필수 권한이 없는 것입니다.

```
An error occurred (AccessDeniedException) when calling the DescribeCluster operation:
User: arn:aws:iam::111122223333:user/user_name is not authorized to perform:
eks:DescribeCluster on resource: arn:aws:eks:region:111122223333:cluster/my-cluster
```

이전 예제 메시지에서 사용자는 Amazon EKS `DescribeCluster` API 작업을 직접 호출할 권한이 없습니다. IAM 보안 주체에게 Amazon EKS 관리 권한을 부여하려면 [Amazon EKS 자격 증명 기반 정책 예제](security-iam-id-based-policy-examples.md) 섹션을 참조하세요.

IAM에 자세한 내용은 *IAM 사용 설명서*에서 [정책을 사용하여 액세스 제어](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_controlling.html)를 참조하세요.

## **컴퓨팅** 탭에서 **노드** 또는 **리소스** 탭에서 아무것도 볼 수 없으며 AWS Management Console에서 오류가 발생합니다.
<a name="security-iam-troubleshoot-cannot-view-nodes-or-workloads"></a>

`Your current user or role does not have access to Kubernetes objects on this EKS cluster`라는 콘솔 오류 메시지가 나타날 수 있습니다. AWS Management Console를 함께 사용하는 [IAM 보안 주체](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal) 사용자에게 필요한 권한이 있는지 확인하세요. 자세한 내용은 [필수 권한](view-kubernetes-resources.md#view-kubernetes-resources-permissions) 섹션을 참조하세요.

## aws-auth `ConfigMap`은 클러스터에 대한 액세스 권한을 부여하지 않습니다.
<a name="security-iam-troubleshoot-configmap"></a>

[AWS IAM Authenticator](https://github.com/kubernetes-sigs/aws-iam-authenticator)는 `ConfigMap`에 사용된 역할 ARN의 경로를 허용하지 않습니다. 따라서 `rolearn`를 지정하기 전에 경로를 제거하세요. 예를 들면 ` arn:aws:iam::111122223333:role/team/developers/eks-admin `를 ` arn:aws:iam::111122223333:role/eks-admin `로 변경합니다.

## iam:PassRole을 수행하도록 인증되지 않음
<a name="security-iam-troubleshoot-passrole"></a>

`iam:PassRole` 작업을 수행할 수 있는 권한이 없다는 오류가 수신되면 Amazon EKS에 역할을 전달할 수 있도록 정책을 업데이트해야 합니다.

일부 AWS 서비스에서는 새 서비스 역할 또는 서비스 연결 역할을 생성하는 대신, 해당 서비스에 기존 역할을 전달할 수 있습니다. 이렇게 하려면 사용자가 서비스에 역할을 전달할 수 있는 권한을 가지고 있어야 합니다.

다음 예제 오류는 `marymajor`라는 IAM 사용자가 콘솔을 사용하여 Amazon EKS에서 작업을 수행하려고 하는 경우에 발생합니다. 하지만 작업을 수행하려면 서비스 역할이 부여한 권한이 서비스에 있어야 합니다. Mary는 서비스에 역할을 전달할 수 있는 권한을 가지고 있지 않습니다.

```
User: {arn-aws}iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

이 경우, Mary가 `iam:PassRole` 작업을 수행할 수 있도록 Mary의 정책을 업데이트해야 합니다.

도움이 필요한 경우 AWS 관리자에게 문의하세요. 관리자는 로그인 자격 증명을 제공한 사람입니다.

## 내 AWS 계정 외부의 사용자가 내 Amazon EKS 리소스에 액세스하도록 허용하려고 합니다.
<a name="security-iam-troubleshoot-cross-account-access"></a>

다른 계정의 사용자 또는 조직 외부의 사람이 리소스에 액세스할 때 사용할 수 있는 역할을 생성할 수 있습니다. 역할을 수임할 신뢰할 수 있는 사람을 지정할 수 있습니다. 리소스 기반 정책 또는 액세스 제어 목록(ACL)을 지원하는 서비스의 경우, 이러한 정책을 사용하여 다른 사람에게 리소스에 대한 액세스 권한을 부여할 수 있습니다.

자세한 내용은 다음을 참조하세요.
+ Amazon EKS에서 이러한 기능을 지원하는지 알아보려면 [Amazon EKS가 IAM과 작동하는 방식](security-iam-service-with-iam.md) 섹션을 참조하세요.
+ 소유하고 있는 AWS 계정의 리소스에 대한 액세스 권한을 제공하는 방법을 알아보려면 *IAM 사용 설명서*의 [자신이 소유한 다른 AWS 계정의 IAM 사용자에 대한 액세스 권한 제공](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html)을 참조하세요.
+ 리소스에 대한 액세스 권한을 서드 파티 AWS 계정에게 제공하는 방법을 알아보려면 *IAM 사용 설명서의 [서드 파티](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)가 소유한 AWS 계정에 대한 액세스 제공*을참조하세요.
+ ID 페더레이션을 통해 액세스 권한을 제공하는 방법을 알아보려면 *IAM 사용 설명서*의 [외부에서 인증된 사용자에게 액세스 권한 제공(ID 페더레이션)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html)을 참조하세요.
+ 크로스 계정 액세스에 대한 역할과 리소스 기반 정책 사용의 차이점을 알아보려면 *IAM 사용 설명서*의 [IAM의 크로스 계정 리소스 액세스](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)를 참조하세요.

## 포드 컨테이너는 다음과 같은 오류가 발생합니다. `An error occurred (SignatureDoesNotMatch) when calling the GetCallerIdentity operation: Credential should be scoped to a valid region`
<a name="security-iam-troubleshoot-wrong-sts-endpoint"></a>

애플리케이션이 명시적으로 AWS STS 글로벌 엔드포인트(`https://sts.amazonaws`)를 요청하고 Kubernetes 서비스 계정이 리전별 엔드포인트를 사용하도록 구성된 경우 컨테이너에 이 오류가 표시됩니다. 다음 옵션 중 하나를 사용하여 문제를 해결할 수 있습니다.
+ 애플리케이션 코드를 업데이트하여 AWS STS 전역 엔드포인트에 대한 명시적 직접 호출을 제거합니다.
+ 애플리케이션 코드를 업데이트하여 `https://sts.us-west-2.amazonaws.com`와 같은 리전별 엔드포인트를 명시적으로 직접 호출합니다. 애플리케이션에는 해당 AWS 리전에서 서비스 장애가 발생한 경우 다른 AWS 리전을 선택하기 위해 기본 제공되는 중복성이 있어야 합니다. 자세한 내용은 IAM 사용 설명서의 [AWS 리전에서 AWS STS 관리](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html)를 참조하세요.
+ 전역 엔드포인트를 사용하도록 서비스 계정을 구성합니다. 클러스터는 기본적으로 리전 엔드포인트를 사용합니다. 자세한 내용은 [서비스 계정의 AWS 보안 토큰 서비스 엔드포인트 구성](configure-sts-endpoint.md) 섹션을 참조하세요.

# Amazon EKS 클러스터 IAM 역할
<a name="cluster-iam-role"></a>

각 클러스터에는 Amazon EKS 클러스터 IAM 역할이 필요합니다. Amazon EKS에서 관리하는 Kubernetes 클러스터는 이 역할을 사용하여 노드를 관리하고, [레거시 클라우드 제공업체](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/service/annotations/#legacy-cloud-provider)는 이 역할을 사용하여 서비스용 Elastic Load Balancing으로 로드 밸런서를 생성합니다.

Amazon EKS 클러스터를 생성하기 전에 다음 IAM 정책 중 하나를 사용하여 IAM 역할을 생성해야 합니다.
+  [AmazonEKSClusterPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSClusterPolicy.html) 
+ 사용자 지정 IAM 정책. 다음 최소 권한으로는 Kubernetes 클러스터가 노드를 관리할 수 있지만, [레거시 클라우드 제공업체](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/service/annotations/#legacy-cloud-provider)가 Elastic Load Balancing으로 로드 밸런서를 생성하는 것은 허용되지 않습니다. 사용자 지정 IAM 정책에는 적어도 다음과 같은 권한이 있어야 합니다.

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Effect": "Allow",
        "Action": [
          "ec2:CreateTags"
        ],
        "Resource": "arn:aws:ec2:*:*:instance/*",
        "Condition": {
          "ForAnyValue:StringLike": {
            "aws:TagKeys": "kubernetes.io/cluster/*"
          }
        }
      },
      {
        "Effect": "Allow",
        "Action": [
          "ec2:DescribeInstances",
          "ec2:DescribeNetworkInterfaces",
          "ec2:DescribeVpcs",
          "ec2:DescribeDhcpOptions",
          "ec2:DescribeAvailabilityZones",
          "ec2:DescribeInstanceTopology",
          "kms:DescribeKey"
        ],
        "Resource": "*"
      }
    ]
  }
  ```

**참고**  
2023년 10월 3일 이전에는 각 클러스터의 IAM 역할에 [AmazonEKSClusterPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSClusterPolicy.html)이 필요했습니다.  
2020년 4월 16일 이전에는 [AmazonEKSServicePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSServicePolicy.html) 및 [AmazonEKSClusterPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSClusterPolicy.html)도 필요했으며 제안된 이름은 `eksServiceRole`이었습니다. `AWSServiceRoleForAmazonEKS` 서비스 연결 역할을 사용하면 2020년 4월 16일 이후에 생성된 클러스터에 [AmazonEKSServicePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSServicePolicy.html) 정책이 더 이상 필요하지 않습니다.

## 기존 클러스터 역할 확인
<a name="check-service-role"></a>

다음 절차를 사용하여 계정에 이미 Amazon EKS 클러스터 역할이 있는지 확인할 수 있습니다.

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. 역할 목록에서 `eksClusterRole`(을)를 검색합니다. `eksClusterRole`을 포함하는 역할이 존재하지 않을 경우 [Amazon EKS 클러스터 역할 생성](#create-service-role) 섹션을 참조하여 역할을 생성합니다. `eksClusterRole`을 포함하는 역할이 존재하지 않을 경우, 연결된 정책을 볼 역할을 선택합니다.

1. **권한**을 선택합니다.

1. **AmazonEKSClusterPolicy** 관리형 정책이 역할에 연결되었는지 확인합니다. 정책이 연결된 경우 Amazon EKS 클러스터 역할이 적절히 구성된 것입니다.

1. **신뢰 관계**를 선택한 후 **신뢰 정책 편집**을 선택합니다.

1. 신뢰 관계에 다음 정책이 포함되어 있는지 확인합니다. 신뢰 관계가 다음 정책과 일치하는 경우, **취소**를 선택합니다. 신뢰 관계가 일치하지 않으면 정책을 **신뢰 정책 편집** 창에 복사하고 **정책 업데이트**를 선택합니다.

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

## Amazon EKS 클러스터 역할 생성
<a name="create-service-role"></a>

클러스터 역할을 생성하려면 AWS Management Console 또는 AWS CLI를 사용할 수 있습니다.

 AWS Management Console   

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

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

1. **다른 AWS 서비스의 사용 사례** 드롭다운 목록에서 **EKS**를 선택합니다.

1. 사용 사례에 대한 **EKS - 클러스터(EKS - Cluster)**를 선택한 후 **다음**을 선택합니다.

1. **권한 추가** 탭에서 **다음**을 선택합니다.

1. **역할 이름**에 역할의 고유한 이름(예: `eksClusterRole`)을 입력합니다.

1. **설명**에서 `Amazon EKS - Cluster role`과 같은 설명 텍스트를 입력합니다.

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

 AWS CLI  

1. 다음 콘텐츠를 *cluster-trust-policy.json*라는 파일에 복사합니다.

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

1. 역할을 생성합니다. *eksClusterRole*을 선택한 모든 이름으로 바꿀 수 있습니다.

   ```
   aws iam create-role \
     --role-name eksClusterRole \
     --assume-role-policy-document file://"cluster-trust-policy.json"
   ```

1. 필요한 IAM 정책을 역할에 연결합니다.

   ```
   aws iam attach-role-policy \
     --policy-arn arn:aws:iam::aws:policy/AmazonEKSClusterPolicy \
     --role-name eksClusterRole
   ```

# Amazon EKS 노드 IAM 역할
<a name="create-node-role"></a>

Amazon EKS 노드 `kubelet` 대몬은 사용자를 대신하여 AWS API를 직접 호출합니다. 노드는 IAM 인스턴스 프로필 및 연결 정책을 통해 이 API 직접 호출에 대한 권한을 수신합니다. 노드를 시작해 클러스터에 등록하려면 시작할 때 노드에서 사용할 IAM 역할을 생성해야 합니다. 이 요구 사항은 Amazon이 제공하는 Amazon EKS 최적화 AMI 또는 사용하려는 다른 노드 AMI를 사용하여 시작된 노드에 적용됩니다. 또한 이 요구 사항은 관리형 노드 그룹과 자체 관리형 노드 모두에 적용됩니다.

**참고**  
클러스터를 생성하는 데 사용된 것과 동일한 역할을 사용할 수 없습니다.

노드를 생성하려면 먼저 다음 권한을 사용하여 IAM 역할을 생성해야 합니다.
+ [AmazonEKSWorkerNodePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSWorkerNodePolicy.html) 정책에서 제공하는 것과 같이 VPC의 Amazon EC2 리소스를 설명할 수 있는 `kubelet` 권한. 이 정책은 Amazon EKS Pod Identity 에이전트에 대한 권한도 제공합니다.
+ Amazon Elastic Container Registry(Amazon ECR)의 컨테이너 이미지를 사용할 수 있는 `kubelet` 권한([AmazonEC2ContainerRegistryPullOnly](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEC2ContainerRegistryPullOnly.html) 정책에서 제공하는 권한). 네트워킹용 내장 애드온이 Amazon ECR의 컨테이너 이미지를 사용하는 포드를 실행하기 때문에 Amazon Elastic Container Registry(Amazon ECR)의 컨테이너 이미지를 사용할 수 있는 권한이 필요합니다.
+ (선택사항) Amazon EKS Pod Identity 에이전트에서 `eks-auth:AssumeRoleForPodIdentity` 작업을 사용하여 포드에 대한 보안 인증 정보를 검색할 수 있는 권한. [AmazonEKSWorkerNodePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKSWorkerNodePolicy.html)를 사용하지 않는 경우 EKS Pod Identity를 사용할 수 있는 EC2 권한 외에도 이 권한을 제공해야 합니다.
+ (선택 사항) IRSA 또는 EKS Pod Identity를 사용하여 VPC CNI 포드에 권한을 부여하지 않는 경우 인스턴스 역할에서 VPC CNI에 대한 권한을 제공해야 합니다. [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKS_CNI_Policy.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKS_CNI_Policy.html) 관리형 정책(`IPv4` 제품군으로 클러스터를 생성하는 경우) 또는 [사용자가 생성한 IPv6 정책](cni-iam-role.md#cni-iam-role-create-ipv6-policy)(`IPv6` 제품군으로 클러스터를 생성하는 경우)을 사용할 수 있습니다. 그러나 이 역할에 정책을 연결하는 대신 Amazon VPC CNI 추가 기능에 특별히 사용되는 별도의 역할에 정책을 연결하는 것이 좋습니다. Amazon VPC CNI 추가 기능에 대한 별도의 역할 생성에 대한 자세한 내용은 [IRSA를 사용하도록 Amazon VPC CNI 플러그인 구성](cni-iam-role.md) 섹션을 참조하세요.

**참고**  
Amazon EC2 노드 그룹에는 Fargate 프로필과 다른 IAM 역할이 있어야 합니다. 자세한 내용은 [Amazon EKS 포드 실행 IAM 역할](pod-execution-role.md) 섹션을 참조하세요.

## 기존 노드 역할 확인
<a name="check-worker-node-role"></a>

다음 절차를 사용하여 계정에 이미 Amazon EKS 노드 역할이 있는지 확인할 수 있습니다.

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. 역할 목록에서 `eksNodeRole`, `AmazonEKSNodeRole` 또는 `NodeInstanceRole`을 검색합니다. 이러한 이름 중 하나를 가진 역할이 없으면 [Amazon EKS 노드 IAM 역할 생성](#create-worker-node-role) 섹션을 참조하여 역할을 만듭니다. `eksNodeRole`, `AmazonEKSNodeRole` 또는 `NodeInstanceRole`을 포함하는 역할이 존재하는 경우 역할을 선택하여 연결된 정책을 확인합니다.

1. **권한**을 선택합니다.

1. **AmazonEKSWorkerNodePolicy** 및 **AmazonEC2ContainerRegistryPullOnly** 관리형 정책이 역할에 연결되어 있는지 또는 사용자 지정 정책이 최소 권한으로 연결되어 있는지 확인합니다.
**참고**  
**AmazonEKS\$1CNI\$1Policy** 정책이 역할에 연결되어 있는 경우 해당 역할을 제거하고 대신 `aws-node` Kubernetes 서비스 계정에 매핑된 IAM 역할에 연결하는 것이 좋습니다. 자세한 내용은 [IRSA를 사용하도록 Amazon VPC CNI 플러그인 구성](cni-iam-role.md) 섹션을 참조하세요.

1. **신뢰 관계**를 선택한 후 **신뢰 정책 편집**을 선택합니다.

1. 신뢰 관계에 다음 정책이 포함되어 있는지 확인합니다. 신뢰 관계가 다음 정책과 일치하는 경우, **취소**를 선택합니다. 신뢰 관계가 일치하지 않으면 정책을 **신뢰 정책 편집** 창에 복사하고 **정책 업데이트**를 선택합니다.

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

## Amazon EKS 노드 IAM 역할 생성
<a name="create-worker-node-role"></a>

AWS Management Console 또는 AWS CLI를 사용하여 노드 IAM 역할을 생성할 수 있습니다.

 AWS Management Console   

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. **역할** 페이지에서 **역할 생성**을 선택합니다.

1. **신뢰할 수 있는 엔터티 선택** 페이지에서 다음을 수행합니다.

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

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

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

1. **권한 추가** 페이지에서 사용자 지정 정책을 연결하거나 다음과 같이 합니다.

   1. **필터 정책** 상자에 `AmazonEKSWorkerNodePolicy`를 입력합니다.

   1. 검색 결과의 **AmazonEKSWorkerNodePolicy** 왼쪽에 있는 확인란을 선택합니다.

   1. **필터 지우기**를 선택합니다.

   1. **필터 정책** 상자에 `AmazonEC2ContainerRegistryPullOnly`를 입력합니다.

   1. 검색 결과의 **AmazonEC2ContainerRegistryPullOnly** 왼쪽에 있는 확인란을 선택합니다.

      생성하는 **AmazonEKS\$1CNI\$1Policy** 관리형 정책이나 [IPv6 정책](cni-iam-role.md#cni-iam-role-create-ipv6-policy)은 또한 이 역할이나 `aws-node` Kubernetes 서비스 계정에 매핑된 다른 역할에 연결되어야 합니다. 이 역할에 정책을 할당하는 대신 Kubernetes 서비스 계정에 연결된 역할에 정책을 할당하는 것이 좋습니다. 자세한 내용은 [IRSA를 사용하도록 Amazon VPC CNI 플러그인 구성](cni-iam-role.md) 섹션을 참조하세요.

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

1. **이름, 검토 및 생성** 페이지에서 다음을 수행합니다.

   1. **역할 이름**에 역할의 고유한 이름(예: `AmazonEKSNodeRole`)을 입력합니다.

   1. **설명**에서 현재 텍스트를 설명이 포함된 텍스트(예: `Amazon EKS - Node role`)로 바꿉니다.

   1. **태그 추가(선택사항)**에서 태그를 키-값 페어로 연결하여 메타데이터를 역할에 추가합니다. IAM에서 태그 사용에 대한 자세한 내용을 알아보려면 IAM 사용 설명서의 [IAM 리소스에 태깅](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html)을 참조하세요.

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

 AWS CLI  

1. 다음 명령을 실행해 `node-role-trust-relationship.json` 파일을 생성합니다.

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

1. IAM 역할을 생성합니다.

   ```
   aws iam create-role \
     --role-name AmazonEKSNodeRole \
     --assume-role-policy-document file://"node-role-trust-relationship.json"
   ```

1. 필요한 2개의 관리형 IAM 정책을 IAM 역할에 연결합니다.

   ```
   aws iam attach-role-policy \
     --policy-arn arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy \
     --role-name AmazonEKSNodeRole
   aws iam attach-role-policy \
     --policy-arn arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryPullOnly \
     --role-name AmazonEKSNodeRole
   ```

1. 클러스터를 생성한 IP 패밀리에 따라 다음 IAM 정책 중 하나를 IAM 역할에 연결합니다. 이 정책은 이 역할에 연결되거나, Kubernetes용 Amazon VPC CNI 플러그인에 사용되는 Kubernetes `aws-node` 서비스 계정에 연결된 역할에 연결되어야 합니다. Kubernetes 서비스 계정에 연결된 역할에 정책을 할당하는 것이 좋습니다. Kubernetes 서비스 계정에 연결된 역할에 정책을 할당하려면 [IRSA를 사용하도록 Amazon VPC CNI 플러그인 구성](cni-iam-role.md) 섹션을 참조하세요.
   + IPv4

     ```
     aws iam attach-role-policy \
       --policy-arn arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy \
       --role-name AmazonEKSNodeRole
     ```
   + IPv6

     1. 다음 텍스트를 복사해 `vpc-cni-ipv6-policy.json` 파일에 저장합니다.

        ```
        {
            "Version":"2012-10-17",		 	 	 
            "Statement": [
                {
                    "Effect": "Allow",
                    "Action": [
                        "ec2:AssignIpv6Addresses",
                        "ec2:DescribeInstances",
                        "ec2:DescribeTags",
                        "ec2:DescribeNetworkInterfaces",
                        "ec2:DescribeInstanceTypes"
                    ],
                    "Resource": "*"
                },
                {
                    "Effect": "Allow",
                    "Action": [
                        "ec2:CreateTags"
                    ],
                    "Resource": [
                        "arn:aws:ec2:*:*:network-interface/*"
                    ]
                }
            ]
        }
        ```

     1. IAM 정책을 생성합니다.

        ```
        aws iam create-policy --policy-name AmazonEKS_CNI_IPv6_Policy --policy-document file://vpc-cni-ipv6-policy.json
        ```

     1. IAM 정책을 IAM 역할에 연결합니다. *111122223333*을 계정 ID로 바꿉니다.

        ```
        aws iam attach-role-policy \
          --policy-arn arn:aws:iam::111122223333:policy/AmazonEKS_CNI_IPv6_Policy \
          --role-name AmazonEKSNodeRole
        ```

# Amazon EKS Auto Mode 클러스터 IAM 역할
<a name="auto-cluster-iam-role"></a>

클러스터마다 Amazon EKS 클러스터 IAM 역할이 필요합니다. Amazon EKS에서 관리하는 Kubernetes 클러스터는 이 역할을 사용하여 스토리지, 네트워킹, 컴퓨팅 오토 스케일링에 대한 일상적인 태스크를 자동화합니다.

Amazon EKS 클러스터를 생성하려면 먼저 EKS Auto Mode에 필요한 정책을 사용하여 IAM 역할을 만들어야 합니다. 제안된 AWS IAM 관리형 정책을 연결하거나 동등한 권한을 보유한 사용자 지정 정책을 생성할 수 있습니다.
+  [AmazonEKSComputePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSComputePolicy) 
+  [AmazonEKSBlockStoragePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSBlockStoragePolicy) 
+  [AmazonEKSLoadBalancingPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSLoadBalancingPolicy) 
+  [AmazonEKSNetworkingPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSNetworkingPolicy) 
+  [AmazonEKSClusterPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-amazoneksclusterpolicy) 

## 기존 클러스터 역할 확인
<a name="auto-cluster-iam-role-check"></a>

다음 절차를 사용하여 계정에 이미 Amazon EKS 클러스터 역할이 있는지 확인할 수 있습니다.

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. 역할 목록에서 `AmazonEKSAutoClusterRole`(을)를 검색합니다. `AmazonEKSAutoClusterRole`을 포함하는 역할이 존재하지 않을 경우 다음 섹션의 지침을 참조하여 역할을 생성합니다. `AmazonEKSAutoClusterRole`을 포함하는 역할이 존재하지 않을 경우, 연결된 정책을 볼 역할을 선택합니다.

1. **권한**을 선택합니다.

1. **AmazonEKSClusterPolicy** 관리형 정책이 역할에 연결되었는지 확인합니다. 정책이 연결된 경우 Amazon EKS 클러스터 역할이 적절히 구성된 것입니다.

1. **신뢰 관계**를 선택한 후 **신뢰 정책 편집**을 선택합니다.

1. 신뢰 관계에 다음 정책이 포함되어 있는지 확인합니다. 신뢰 관계가 다음 정책과 일치하는 경우, **취소**를 선택합니다. 신뢰 관계가 일치하지 않으면 정책을 **신뢰 정책 편집** 창에 복사하고 **정책 업데이트**를 선택합니다.

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

**참고**  
 AWS에는 이 역할의 이름 `AmazonEKSAutoClusterRole`이 필요하지 않습니다.

## Amazon EKS 클러스터 역할 생성
<a name="auto-cluster-iam-role-create"></a>

클러스터 역할을 생성하려면 AWS Management Console 또는 AWS CLI를 사용할 수 있습니다.

### AWS Management Console
<a name="auto-cluster-iam-role-console"></a>

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

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

1. **다른 AWS 서비스의 사용 사례** 드롭다운 목록에서 **EKS**를 선택합니다.

1. 사용 사례에 대한 **EKS - 클러스터(EKS - Cluster)**를 선택한 후 **다음**을 선택합니다.

1. **권한 추가** 탭에서 정책을 선택하고 **다음**을 선택합니다.
   +  [AmazonEKSComputePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSComputePolicy) 
   +  [AmazonEKSBlockStoragePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSBlockStoragePolicy) 
   +  [AmazonEKSLoadBalancingPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSLoadBalancingPolicy) 
   +  [AmazonEKSNetworkingPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSNetworkingPolicy) 
   +  [AmazonEKSClusterPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-amazoneksclusterpolicy) 

1. **역할 이름**에 역할의 고유한 이름(예: `AmazonEKSAutoClusterRole`)을 입력합니다.

1. **설명**에서 `Amazon EKS - Cluster role`과 같은 설명 텍스트를 입력합니다.

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

### AWS CLI
<a name="auto-cluster-iam-role-cli"></a>

1. 다음 콘텐츠를 *cluster-trust-policy.json*라는 파일에 복사합니다.

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

1. 역할을 생성합니다. *AmazonEKSAutoClusterRole*을 선택한 이름으로 바꿀 수 있습니다.

   ```
   aws iam create-role \
     --role-name AmazonEKSAutoClusterRole \
     --assume-role-policy-document file://"cluster-trust-policy.json"
   ```

1. 필요한 IAM 정책을 역할에 연결합니다.

 **AmazonEKSClusterPolicy**:

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws:iam::aws:policy/AmazonEKSClusterPolicy
```

 **AmazonEKSComputePolicy**:

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws:iam::aws:policy/AmazonEKSComputePolicy
```

 **AmazonEKSBlockStoragePolicy**:

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws:iam::aws:policy/AmazonEKSBlockStoragePolicy
```

 **AmazonEKSLoadBalancingPolicy**:

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws:iam::aws:policy/AmazonEKSLoadBalancingPolicy
```

 **AmazonEKSNetworkingPolicy**:

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws:iam::aws:policy/AmazonEKSNetworkingPolicy
```

# Amazon EKS Auto Mode 노드 IAM 역할
<a name="auto-create-node-role"></a>

**참고**  
클러스터를 생성하는 데 사용된 것과 동일한 역할을 사용할 수 없습니다.

노드를 생성하려면 먼저 다음 정책 또는 이와 동등한 권한을 사용하여 IAM 역할을 생성해야 합니다.
+  [AmazonEKSWorkerNodeMinimalPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSWorkerNodeMinimalPolicy) 
+  [AmazonEC2ContainerRegistryPullOnly](https://docs.aws.amazon.com/AmazonECR/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonEC2ContainerRegistryPullOnly) 

## 기존 노드 역할 확인
<a name="auto-create-node-role-check"></a>

다음 절차를 사용하여 계정에 이미 Amazon EKS 노드 역할이 있는지 확인할 수 있습니다.

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. 역할 목록에서 `AmazonEKSAutoNodeRole`(을)를 검색합니다. 이러한 이름 중 하나를 가진 역할이 없으면 다음 섹션의 지침을 참조하여 역할을 만듭니다. `AmazonEKSAutoNodeRole`을 포함하는 역할이 존재하지 않을 경우, 연결된 정책을 볼 역할을 선택합니다.

1. **권한**을 선택합니다.

1. 위의 필수 정책 또는 이에 상응하는 사용자 지정 정책이 연결되어 있는지 확인합니다.

1. **신뢰 관계**를 선택한 후 **신뢰 정책 편집**을 선택합니다.

1. 신뢰 관계에 다음 정책이 포함되어 있는지 확인합니다. 신뢰 관계가 다음 정책과 일치하는 경우, **취소**를 선택합니다. 신뢰 관계가 일치하지 않으면 정책을 **신뢰 정책 편집** 창에 복사하고 **정책 업데이트**를 선택합니다.

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

## Amazon EKS 노드 IAM 역할 생성
<a name="auto-create-node-role-iam"></a>

AWS Management Console 또는 AWS CLI를 사용하여 노드 IAM 역할을 생성할 수 있습니다.

### AWS Management Console
<a name="auto-create-node-role-console"></a>

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. **역할** 페이지에서 **역할 생성**을 선택합니다.

1. **신뢰할 수 있는 엔터티 선택** 페이지에서 다음을 수행합니다.

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

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

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

1. **권한 추가** 페이지에서 다음 정책을 연결합니다.
   +  [AmazonEKSWorkerNodeMinimalPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSWorkerNodeMinimalPolicy) 
   +  [AmazonEC2ContainerRegistryPullOnly](https://docs.aws.amazon.com/AmazonECR/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonEC2ContainerRegistryPullOnly) 

1. **이름, 검토 및 생성** 페이지에서 다음을 수행합니다.

   1. **역할 이름**에 역할의 고유한 이름(예: `AmazonEKSAutoNodeRole`)을 입력합니다.

   1. **설명**에서 현재 텍스트를 설명이 포함된 텍스트(예: `Amazon EKS - Node role`)로 바꿉니다.

   1. **태그 추가(선택사항)**에서 태그를 키-값 페어로 연결하여 메타데이터를 역할에 추가합니다. IAM에서 태그 사용에 대한 자세한 내용을 알아보려면 IAM 사용 설명서의 [IAM 리소스에 태깅](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html)을 참조하세요.

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

### AWS CLI
<a name="auto-create-node-role-cli"></a>

 **노드 IAM 역할 생성** 

이전 단계의 **node-trust-policy.json** 파일을 사용하여 역할을 수임할 수 있는 엔터티를 정의합니다. 다음 명령을 실행하여 노드 IAM 역할을 만듭니다.

```
aws iam create-role \
    --role-name AmazonEKSAutoNodeRole \
    --assume-role-policy-document file://node-trust-policy.json
```

 **역할 ARN 기록** 

역할을 생성한 후 노드 IAM 역할의 ARN을 검색하고 저장합니다. 이후 단계에서 이 ARN이 필요합니다. 다음 명령을 사용하여 ARN을 가져옵니다.

```
aws iam get-role --role-name AmazonEKSAutoNodeRole --query "Role.Arn" --output text
```

 **필요한 정책 연결** 

다음 AWS 관리형 정책을 노드 IAM 역할에 연결하여 필요한 권한을 제공합니다.

AmazonEKSWorkerNodeMinimalPolicy를 연결하려면:

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoNodeRole \
    --policy-arn arn:aws:iam::aws:policy/AmazonEKSWorkerNodeMinimalPolicy
```

AmazonEC2ContainerRegistryPullOnly를 연결하려면:

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoNodeRole \
    --policy-arn arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryPullOnly
```

# Amazon EKS 기능 IAM 역할
<a name="capability-role"></a>

EKS 기능을 사용하려면 기능 IAM 역할 또는 기능 역할을 구성해야 합니다. 기능은 이 역할을 사용하여 AWS 서비스에서 작업을 수행하고 자동으로 생성된 액세스 항목을 통해 클러스터의 Kubernetes 리소스에 액세스합니다.

기능 생성 중에 기능 역할을 지정하려면 먼저 기능 유형에 대한 적절한 신뢰 정책 및 권한을 사용하여 IAM 역할을 생성해야 합니다. 이 IAM 역할이 생성되면 원하는 수의 기능 리소스에 대해 재사용할 수 있습니다.

## 기능 역할 요구 사항
<a name="_capability_role_requirements"></a>

기능 역할은 다음 요구 사항을 충족해야 합니다.
+ 역할은 클러스터 및 기능 리소스와 동일한 AWS 계정에 있어야 함
+ 역할에는 EKS 기능 서비스가 역할을 수임하도록 허용하는 신뢰 정책이 있어야 함
+ 역할에는 기능 유형 및 사용 사례 요구 사항에 적절한 권한이 있어야 함([기능 유형별 권한](#capability-permissions) 참조)

## 기능 역할에 대한 신뢰 정책
<a name="capability-trust-policy"></a>

모든 기능 역할에는 다음 신뢰 정책이 포함되어야 합니다.

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

이 신뢰 정책을 통해 EKS는 다음을 수행할 수 있습니다.
+ AWS API 작업을 수행하도록 역할 수임
+ 감사 및 추적을 위해 세션에 태그 지정

## 기능 유형별 권한
<a name="capability-permissions"></a>

필요한 IAM 권한은 사용 중인 기능 및 배포 모델에 따라 다릅니다.

**참고**  
ACK와 함께 IAM 역할 선택기를 사용하는 프로덕션 배포의 경우 또는 AWS 서비스 통합 없이 kro 또는 Argo CD를 사용하는 경우 기능 역할에는 신뢰 정책 이외의 IAM 권한이 필요하지 않을 수 있습니다.

 **Kube Resource Orchestrator(kro)**   
IAM 권한이 필요하지 않습니다. 연결된 정책 없이 기능 역할을 생성할 수 있습니다. kro는 Kubernetes 리소스를 생성 및 관리하는 데 Kubernetes RBAC 권한만 필요합니다.

 **AWS Controllers for Kubernetes(ACK)**   
ACK는 다음과 같이 두 가지 권한 모델을 지원합니다.  
+  **단순 설정(개발/테스트)**: 기능 역할에 직접 AWS 서비스 권한을 추가합니다. 시작하기, 단일 계정 배포 또는 모든 사용자에게 동일한 권한이 필요한 경우에 적합합니다.
+  **프로덕션 모범 사례**: IAM 역할 선택기를 사용하여 최소 권한 액세스를 구현합니다. 이 접근 방식을 사용하면 기능 역할에는 서비스 특정 역할을 수임할 `sts:AssumeRole` 권한만 있으면 됩니다. 기능 역할 자체에 AWS 서비스 권한(예: S3 또는 RDS)을 추가하지 않아도 됩니다. 이러한 권한은 특정 네임스페이스에 매핑되는 개별 IAM 역할에 부여됩니다.

  IAM 역할 선택기는 다음을 활성화합니다.
  + 네임스페이스 수준의 권한 격리
  + 교차 계정 리소스 관리
  + 팀 특정 IAM 역할
  + 최소 권한 보안 모델

    IAM 역할 선택기 접근 방식에 대한 기능 역할 정책 예제:

    ```
    {
      "Version": "2012-10-17",		 	 	 
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "sts:AssumeRole",
          "Resource": [
            "arn:aws:iam::111122223333:role/ACK-S3-Role",
            "arn:aws:iam::111122223333:role/ACK-RDS-Role",
            "arn:aws:iam::444455556666:role/ACKCrossAccountRole"
          ]
        }
      ]
    }
    ```

    IAM 역할 선택기를 포함한 자세한 ACK 권한 구성은 [ACK 권한 구성](ack-permissions.md) 섹션을 참조하세요.

 **Argo CD**   
기본적으로 IAM 권한은 필요하지 않습니다. 다음과 같은 경우에 선택적 권한이 필요할 수 있습니다.  
+  **AWS Secrets Manager**: Secrets Manager를 사용하여 Git 리포지토리 자격 증명을 저장하는 경우
+  **AWS CodeConnections**: Git 리포지토리 인증에 CodeConnections를 사용하는 경우

  Secrets Manager 및 CodeConnections에 대한 정책 예제:

  ```
  {
    "Version": "2012-10-17",		 	 	 
    "Statement": [
      {
        "Effect": "Allow",
        "Action": [
          "secretsmanager:GetSecretValue",
          "secretsmanager:DescribeSecret"
        ],
        "Resource": "arn:aws:secretsmanager:region:account-id:secret:argocd/*"
      },
      {
        "Effect": "Allow",
        "Action": [
          "codeconnections:UseConnection",
          "codeconnections:GetConnection"
        ],
        "Resource": "arn:aws:codeconnections:region:account-id:connection/*"
      }
    ]
  }
  ```

  자세한 Argo CD 권한 요구 사항은 [Argo CD 고려 사항](argocd-considerations.md) 섹션을 참조하세요.

## 기존 기능 역할 확인
<a name="check-capability-role"></a>

다음 절차를 사용하여 사용 사례에 적합한 기능 IAM 역할이 이미 계정에 있는지 확인할 수 있습니다.

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. 역할 목록에서 기능 역할 이름(예: `ACKCapabilityRole` 또는 `ArgoCDCapabilityRole`)을 검색하세요.

1. 역할이 있는 경우 역할을 선택하여 연결된 정책 및 신뢰 관계를 확인하세요.

1. **신뢰 관계**를 선택한 후 **신뢰 정책 편집**을 선택합니다.

1. 신뢰 관계가 [기능 신뢰 정책](#capability-trust-policy)과 일치하는지 확인하세요. 일치하지 않는 경우 신뢰 정책을 업데이트하세요.

1. **권한**을 선택하고 역할에 기능 유형 및 사용 사례에 적합한 권한이 있는지 확인하세요.

## 기능 IAM 역할 생성
<a name="create-capability-role"></a>

기능 역할을 생성하기 위해 AWS Management Console 또는 AWS CLI를 사용할 수 있습니다.

 ** AWS Management Console **   

1. IAM 콘솔(https://console.aws.amazon.com/iam/)을 엽니다.

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

1. **신뢰할 수 있는 엔터티 유형**에서 **사용자 지정 신뢰 정책**을 선택하세요.

1. [기능 신뢰 정책](#capability-trust-policy) 복사하여 신뢰 정책 편집기에 붙여 넣으세요.

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

1. **권한 추가** 탭에서 기능 유형에 적합한 정책을 선택하거나 생성하세요([기능 유형별 권한](#capability-permissions) 참조). kro의 경우 이 단계를 건너뛸 수 있습니다.

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

1. **역할 이름**에 역할의 고유한 이름(예: `ACKCapabilityRole`, `ArgoCDCapabilityRole` 또는 `kroCapabilityRole`)을 입력하세요.

1. **설명**에서 `Amazon EKS - ACK capability role`과 같은 설명 텍스트를 입력합니다.

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

 **AWS CLI**   

1. [기능 신뢰 정책](#capability-trust-policy)을 `capability-trust-policy.json` 파일에 복사하세요.

1. 역할을 생성합니다. `ACKCapabilityRole`을 원하는 역할 이름으로 바꾸세요.

   ```
   aws iam create-role \
     --role-name ACKCapabilityRole \
     --assume-role-policy-document file://capability-trust-policy.json
   ```

1. 필요한 IAM 정책을 역할에 연결하세요. ACK의 경우 관리하려는 AWS 서비스에 대한 정책을 연결하세요. Argo CD의 경우 필요하면 Secrets Manager 또는 CodeConnections에 대한 정책을 연결하세요. kro의 경우 이 단계를 건너뛸 수 있습니다.

   S3 권한을 사용하는 ACK에 대한 예제:

   ```
   aws iam put-role-policy \
     --role-name ACKCapabilityRole \
     --policy-name S3Management \
     --policy-document file://s3-policy.json
   ```

## 기능 역할 문제 해결
<a name="troubleshooting-capability-role"></a>

 **'유효하지 않은 IAM 역할'로 기능 생성 실패**   
다음을 확인합니다.  
+ 역할이 클러스터와 동일한 계정에 존재함
+ 신뢰 정책이 [기능 신뢰 정책](#capability-trust-policy)과 일치함 
+ 역할에 대한 `iam:PassRole` 권한이 있음

 **기능에서 권한 오류 표시**   
다음을 확인합니다.  
+ 기능 역할에 필요한 권한이 해당 역할에 있음
+ 액세스 항목이 역할의 클러스터에 있음
+ 필요한 경우 추가 Kubernetes 권한이 구성됨([추가 Kubernetes 권한](capabilities-security.md#additional-kubernetes-permissions) 참조)

 **'권한 거부' 오류로 ACK 리소스 실패**   
다음을 확인합니다.  
+ 역할에는 사용 사례에 필요한 권한이 있습니다.
+ 보안 암호를 참조하는 ACK 컨트롤러의 경우 적절한 네임스페이스로 범위가 지정된 `AmazonEKSSecretReaderPolicy` 액세스 항목 정책을 연결했는지 확인합니다.

문제 해결 지침은 [EKS 기능에 대한 보안 고려 사항](capabilities-security.md) 섹션을 참조하세요.