

 **協助改進此頁面** 

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

若要為本使用者指南貢獻內容，請點選每個頁面右側面板中的**在 GitHub 上編輯此頁面**連結。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 EKS 存取項目授予 IAM 使用者 Kubernetes 的存取權
<a name="access-entries"></a>

本節旨在說明如何使用存取項目與政策，管理 Amazon Elastic Kubernetes Service (EKS) 中 IAM 主體對 Kubernetes 叢集的存取權。您將找到有關變更驗證模式、從舊版 `aws-auth` ConfigMap 項目移轉、建立、更新、刪除存取項目、將政策與項目關聯、檢閱預先定義政策許可，以及安全存取管理之重要先決條件與考量事項的詳細資訊。

## 概觀
<a name="_overview"></a>

EKS 存取項目是授予使用者存取 Kubernetes API 的最佳方式。例如，您可使用存取項目授予開發人員使用 kubectl 的權限。本質上，EKS 存取項目會將一組 Kubernetes 許可與 IAM 身分 (如 IAM 角色) 建立關聯。例如，開發人員可擔任某個 IAM 角色，並使用該角色向 EKS 叢集進行身分驗證。

## 功能
<a name="_features"></a>
+  **集中式身分驗證與授權**：直接透過 Amazon EKS API 控制對 Kubernetes 叢集的存取，無需在 AWS 和 Kubernetes API 之間切換，以管理使用者許可。
+  **精細許可管理**：使用存取項目與政策為 AWS IAM 主體定義精細許可，包括修改或撤銷建立者的叢集管理員存取權。
+  **IaC 工具整合**：支援 AWS CloudFormation、Terraform 與 AWS CDK 等基礎結構即程式碼工具，以便在叢集建立期間定義存取組態。
+  **錯誤設定復原**：可透過 Amazon EKS API 復原叢集存取權，無需直接存取 Kubernetes API。
+  **降低負擔並增強安全性**：集中化作業以降低管理負擔，同時運用 AWS IAM 功能 (如 CloudTrail 稽核日誌與多因素驗證)。

## 附加許可的方式
<a name="_how_to_attach_permissions"></a>

您可透過兩種方式將 Kubernetes 許可附加至存取項目：
+ 使用存取政策。存取政策是由 AWS 維護的預先定義 Kubernetes 許可範本。如需詳細資訊，請參閱 [檢閱存取政策許可](access-policy-permissions.md)。
+ 引用 Kubernetes 群組。若您將 IAM 身分與 Kubernetes 群組建立關聯，即可建立授予該群組許可的 Kubernetes 資源。如需詳細資訊，請參閱 Kubernetes 文件中的[使用 RBAC 授權](https://kubernetes.io/docs/reference/access-authn-authz/rbac/)。

## 考量事項
<a name="_considerations"></a>

在現有叢集上啟用 EKS 存取項目時，請留意下列事項：
+  **舊版叢集行為**：對於在存取項目引入前建立的叢集 (其初始平台版本早於[平台版本需求](https://docs.aws.amazon.com/eks/latest/userguide/platform-versions.html)中指定的版本)，EKS 會自動建立反映既有許可的存取項目。此項目包含了最初建立叢集的 IAM 身分，以及在叢集建立期間授予該身分的管理許可。
+  **處理舊版 `aws-auth` ConfigMap**：若您的叢集依賴舊版 `aws-auth` ConfigMap 進行存取管理，則在啟用存取項目時，僅會自動建立原叢集建立者的存取項目。新增至 ConfigMap 的其他角色或許可 (如供開發人員或服務使用的自訂 IAM 角色) 不會自動移轉。為了解決這個問題，請手動建立對應的存取項目。

## 開始使用
<a name="_get_started"></a>

1. 確定您要使用的 IAM 身分和存取政策。
   +  [檢閱存取政策許可](access-policy-permissions.md) 

1. 在您的叢集上啟用 EKS 存取項目。確認您擁有受支援的平台版本。
   +  [變更驗證模式以使用存取項目](setting-up-access-entries.md) 

1. 建立存取項目，將 IAM 身分與 Kubernetes 許可建立關聯。
   +  [建立存取項目](creating-access-entries.md) 

1. 使用該 IAM 身分向叢集進行驗證。
   +  [設定 AWS CLI](install-awscli.md) 
   +  [設定 `kubectl` 和 `eksctl`](install-kubectl.md) 