使用 IAP 保護 GKE 應用程式和資源

本頁面說明如何使用 Identity-Aware Proxy (IAP) 保護 Google Kubernetes Engine (GKE) 執行個體。

如要保護不在 Google Cloud上的資源,請參閱「保護內部部署應用程式和資源」。

總覽

IAP 已透過 GKE 的輸入整合。這項整合功能可讓您控制員工的資源層級存取權,而非使用 VPN。

在 GKE 叢集中,連入流量是由 Cloud Load Balancing 的元件「HTTP(S) 負載平衡」處理。HTTP(S) 負載平衡器通常是由 Kubernetes Ingress 控制器設定。輸入控制器會從 Kubernetes 輸入物件取得設定資訊,這個輸入物件與一或多個 Service 物件相關聯。每個 Service 物件都會保留用來將傳入要求導向特定 Pod 及通訊埠的轉送資訊。

從 Kubernetes 1.10.5-gke.3 版開始,您可以為負載平衡器新增設定,方法是建立服務與 BackendConfig 物件之間的關聯。BackendConfig 是在 kubernetes/ingress-gce 存放區定義的自訂資源定義 (CRD)。

Kubernetes 輸入控制器會讀取 BackendConfig 中的設定資訊,並據此設定負載平衡器。BackendConfig 會保留 Cloud Load Balancing 專屬的設定資訊,並且可讓您為每個 HTTP(S) 負載平衡後端服務定義單獨的設定。

事前準備

如要為 GKE 啟用 IAP,請先準備好下列項目:

  • 已啟用計費功能的 Google Cloud 主控台專案。
  • 一或多個 GKE 執行個體的群組,由 HTTPS 負載平衡器提供服務。當您在 GKE 叢集中建立輸入物件時,系統應會自動建立負載平衡器。
  • 已註冊至您負載平衡器位址的網域名稱。
  • 確認所有要求都擁有身分識別資訊的應用程式程式碼。

IAP 會使用 Google 代管的 OAuth 用戶端來驗證使用者。只有機構內的使用者可以存取啟用 IAP 的應用程式。如要允許機構外的使用者存取,請參閱「為外部應用程式啟用應用程式內購功能」。

啟用 IAP

後續步驟