事前準備
請先按照 GKE RBAC 指南操作,再繼續執行下列步驟。
設定身分與存取權管理 (IAM)
除了透過 Kf RBAC 授予的權限外,使用者、群組或服務帳戶也必須經過驗證,才能在專案層級查看 GKE 客戶端。這項規定與設定 GKE RBAC 時相同,也就是說,使用者/群組必須在包含叢集的專案中至少具備 container.clusters.get
IAM 權限。container.clusterViewer
角色和其他具有更多權限的角色都具備這項權限。詳情請參閱「與 Identity and Access Management 互動」。
將 container.clusterViewer
指派給使用者或群組。
gcloud projects add-iam-policy-binding ${CLUSTER_PROJECT_ID} \
--role="container.clusterViewer" \
--member="${MEMBER}"
成員值的範例如下:
- user:test-user@gmail.com
- group:admins@example.com
- serviceAccount:test123@example.domain.com
以聊天室管理員身分管理聊天室成員
叢集管理員角色,或具備 SpaceManager 角色的成員,可以將角色指派給使用者、群組或服務帳戶。
kf set-space-role MEMBER -t [Group|ServiceAccount|User]
叢集管理員角色,或具備SpaceManager角色的成員,可以從角色中移除成員。
kf unset-space-role MEMBER -t [Group|ServiceAccount|User]
你可以查看聊天室中的成員和他們的角色。
kf space-users
範例
為使用者指派 SpaceDeveloper 角色。
kf set-space-role alice@example.com SpaceDeveloper
將 SpaceDeveloper 角色指派給群組。
kf set-space-role devs@example.com SpaceDeveloper -t Group
將 SpaceDeveloper 角色指派給服務帳戶。
kf set-space-role sa-dev@example.domain.com SpaceDeveloper -t ServiceAccount
以 SpaceDeveloper 身分開發應用程式
具有 SpaceDeveloper 角色的成員可以在聊天室中執行 Kf 應用程式開發作業。
如要推送應用程式,請按照下列步驟操作:
kf push app_name -p [PATH_TO_APP_ROOT_DIRECTORY]
如何查看應用程式記錄:
posix-terminal
kf logs app_name
透過 SSH 連線至執行應用程式的 Kubernetes Pod:posix-terminal
kf ssh app_name
查看可用的服務代理程式:
kf marketplace
以聊天室管理員或聊天室審查員身分查看應用程式
擁有聊天室管理員或聊天室審查員角色的成員,可以在聊天室中查看可用的應用程式:
kf apps
查看叢集中的 Kf 聊天室
所有角色 (SpaceManager、SpaceDeveloper 和 SpaceAuditor) 都可以查看叢集中的可用 Kf 聊天室:
kf spaces
查看聊天室成員及其角色。
kf space-users
模擬標記
如要驗證成員的權限,擁有較高權限的成員可以使用模擬標記 --as
和 --as-group
測試其他成員的權限。
舉例來說,叢集管理員可以驗證使用者 (使用者名稱:bob) 是否有權限推送應用程式。
kf push APP_NAME --as bob
確認群組 (manager-group@example.com) 有權指派權限給其他成員。
kf set-space-role bob SpaceDeveloper --as-group manager-group@example.com