本頁說明 GKE on AWS 如何處理Google Cloud 的驗證,以及叢集的使用者驗證。
GKE on AWS 如何連線至 AWS
如要進一步瞭解 GKE on AWS 如何使用 AWS IAM 角色連線至 AWS,請參閱「AWS IAM 角色」。
驗證
GKE Multi-Cloud API 驗證
您可以使用 GKE Multi-Cloud API 建立、更新及刪除叢集和節點集區。與其他 Google Cloud API 相同,您可以使用 REST、Google Cloud CLI 或 Google Cloud 控制台搭配這個 API。
詳情請參閱Google Cloud 驗證總覽,以及 GKE Multi-Cloud API 參考說明文件。
Kubernetes API 驗證
您可以使用 kubectl
指令列工具執行叢集作業,例如部署工作負載及設定負載平衡器。kubectl
工具會連線至叢集控制層上的 Kubernetes API。如要呼叫這個 API,您必須使用授權憑證進行驗證。
如要取得憑證,請使用下列其中一種方法:
Google 身分,可讓使用者透過 Google Cloud 身分登入。如果使用者已透過 Google 帳戶存取 Google Cloud ,請使用這個選項。
GKE Identity Service,可讓使用者透過 OpenID Connect (OIDC) 或 AWS IAM 登入。
透過 GKE Identity Service,您可以使用 Okta、Active Directory 同盟服務 (ADFS) 等身分識別提供者,或任何符合 OIDC 標準的身分識別提供者。OktaOIDC
授權
GKE on AWS 提供兩種存取權控管方法:GKE Multi-Cloud API 和角色型存取權控管 (RBAC)。本節將說明這兩種方法的差異。
如要保護叢集和工作負載,最好的方式是採取分層防護。針對提供給使用者和工作負載的存取層級,您可以採取最低權限原則。您可能需要做出取捨,以利提供適當的彈性和安全性。
GKE Multi-cloud API 存取權控管
叢集管理員可透過 GKE Multi-Cloud API 建立、更新及刪除叢集和節點集區。您可以使用 Identity and Access Management (IAM) 管理 API 的權限。使用者必須具備適當權限,才能使用 API。如要瞭解各項作業所需的權限,請參閱「API 角色和權限」。IAM 可讓您定義角色,並將角色指派給主體。角色其實就是一組權限,指派給主體後,即可控制一或多項 Google Cloud 資源的存取權。
在機構、資料夾或專案中建立叢集或節點集區時,機構、資料夾或專案中具備適當權限的使用者可以修改叢集或節點集區。舉例來說,如果您在Google Cloud 專案層級授予使用者叢集刪除權限,該使用者就能刪除專案中的任何叢集。詳情請參閱Google Cloud 資源階層和「建立 IAM 政策」。
Kubernetes API 存取權控管
您可以使用 Kubernetes API 管理 Kubernetes 物件。如要管理 Kubernetes API 的存取權控管,請使用角色型存取權控管 (RBAC)。詳情請參閱 GKE 說明文件中的設定角色型存取權控管。
管理員權限
使用 gcloud CLI 建立叢集時,GKE Multi-Cloud API 預設會將您的使用者帳戶新增為管理員,並建立適當的 RBAC 政策,授予您叢集的完整管理存取權。如要設定不同使用者,請在建立或更新叢集時傳遞 --admin-users
旗標。使用 --admin-users
標記時,必須納入所有可管理叢集的使用者。gcloud CLI 不會包含建立叢集的使用者。
您也可以使用 Google Cloud 控制台新增管理員使用者。詳情請參閱「更新叢集」一文。
如要查看叢集存取權的設定,請執行下列指令:
kubectl describe clusterrolebinding gke-multicloud-cluster-admin
除了存取 Kubernetes API 伺服器的 RBAC 政策外,如果管理員使用者不是專案擁有者,您還需要授予特定 IAM 角色,讓管理員使用者能透過 Google 身分驗證。如要進一步瞭解如何連線至叢集,請參閱「連結及驗證叢集」。
後續步驟
- 如要設定 OIDC,請參閱「使用 GKE Identity Service 管理身分」。
- 連結及驗證叢集。