Antes de começar
Siga o guia RBAC do GKE antes de continuar com os passos seguintes.
Configure a gestão de identidade e de acesso (IAM)
Além das autorizações concedidas através do RBAC do Kf, os utilizadores, os grupos ou as contas de serviço também têm de ser autenticados para ver clusters do GKE ao nível do projeto. Este requisito é o mesmo que para configurar o RBAC do GKE, o que significa que os utilizadores/grupos têm de ter, pelo menos, a autorização do IAM container.clusters.get
no projeto que contém o cluster. Esta autorização está incluída na função container.clusterViewer
e noutras funções com mais privilégios. Para mais informações, reveja o artigo Interação com a gestão de identidades e acessos.
Atribua container.clusterViewer
a um utilizador ou grupo.
gcloud projects add-iam-policy-binding ${CLUSTER_PROJECT_ID} \
--role="container.clusterViewer" \
--member="${MEMBER}"
Os valores de membro de exemplo são:
- user:test-user@gmail.com
- group:admins@example.com
- serviceAccount:test123@example.domain.com
Faça a gestão da subscrição do espaço como gestor do espaço
A função de administrador do cluster ou os membros com a função SpaceManager podem atribuir uma função a um utilizador, um grupo ou uma conta de serviço.
kf set-space-role MEMBER -t [Group|ServiceAccount|User]
A função de administrador do cluster ou os membros com a função SpaceManager podem remover um membro de uma função.
kf unset-space-role MEMBER -t [Group|ServiceAccount|User]
Pode ver os membros e as respetivas funções num espaço.
kf space-users
Exemplos:
Atribua a função SpaceDeveloper a um utilizador.
kf set-space-role alice@example.com SpaceDeveloper
Atribua a função SpaceDeveloper a um grupo.
kf set-space-role devs@example.com SpaceDeveloper -t Group
Atribua a função SpaceDeveloper a uma conta de serviço.
kf set-space-role sa-dev@example.domain.com SpaceDeveloper -t ServiceAccount
Programação de apps como SpaceDeveloper
Os membros com a função SpaceDeveloper podem realizar operações de desenvolvimento de apps Kf no espaço.
Para enviar uma app:
kf push app_name -p [PATH_TO_APP_ROOT_DIRECTORY]
Para ver os registos de uma app:
posix-terminal
kf logs app_name
SSH para um pod do Kubernetes que executa a app:
posix-terminal
kf ssh app_name
Veja os mediadores de serviços disponíveis:
kf marketplace
Veja apps como SpaceManager ou SpaceAuditor
Os membros com a função de Gestor do espaço ou Auditor do espaço podem ver as apps disponíveis no espaço:
kf apps
Veja espaços Kf num cluster
Todas as funções (SpaceManager, SpaceDeveloper e SpaceAuditor) podem ver os espaços Kf disponíveis num cluster:
kf spaces
Veja os membros do espaço e as respetivas funções num espaço.
kf space-users
Sinalizações de roubo de identidade
Para validar a autorização de um membro, um membro com uma autorização mais privilegiada pode testar as autorizações de outro membro através das flags de roubo de identidade: --as
e --as-group
.
Por exemplo, como administrador do cluster, pode verificar se um utilizador (nome de utilizador: bob) tem autorização para enviar uma app.
kf push APP_NAME --as bob
Verificar se um grupo (manager-group@example.com) tem autorização para atribuir autorizações a outros membros.
kf set-space-role bob SpaceDeveloper --as-group manager-group@example.com