Prima di iniziare
Segui la guida RBAC di GKE prima di continuare con i passaggi successivi.
Configurare Identity and Access Management (IAM)
Oltre alle autorizzazioni concesse tramite Kf RBAC, anche gli utenti, i gruppi o gli account di servizio devono essere autenticati per visualizzare i clusers GKE a livello di progetto. Questo requisito è lo stesso della configurazione di GKE RBAC, il che significa che gli utenti e i gruppi devono avere almeno l'autorizzazione IAM container.clusters.get
nel progetto contenente il cluster. Questa autorizzazione è inclusa dal ruolo container.clusterViewer
e da altri ruoli più associati. Per saperne di più, consulta Interazione con Identity and Access Management.
Assegna container.clusterViewer
a un utente o a un gruppo.
gcloud projects add-iam-policy-binding ${CLUSTER_PROJECT_ID} \
--role="container.clusterViewer" \
--member="${MEMBER}"
Ecco alcuni esempi di valori membro:
- user:test-user@gmail.com
- group:admins@example.com
- serviceAccount:test123@example.domain.com
Gestire l'abbonamento allo spazio come SpaceManager
Il ruolo di amministratore del cluster o i membri con il ruolo SpaceManager possono assegnare il ruolo a un utente, a un gruppo o a un account di servizio.
kf set-space-role MEMBER -t [Group|ServiceAccount|User]
Il ruolo di amministratore del cluster o i membri con il ruolo SpaceManager possono rimuovere un membro da un ruolo.
kf unset-space-role MEMBER -t [Group|ServiceAccount|User]
Puoi visualizzare i membri e i relativi ruoli all'interno di uno spazio.
kf space-users
Esempi:
Assegnare il ruolo SpaceDeveloper a un utente.
kf set-space-role alice@example.com SpaceDeveloper
Assegnare il ruolo SpaceDeveloper a un gruppo.
kf set-space-role devs@example.com SpaceDeveloper -t Group
Assegna il ruolo SpaceDeveloper a un account di servizio.
kf set-space-role sa-dev@example.domain.com SpaceDeveloper -t ServiceAccount
Sviluppo di app come SpaceDeveloper
I membri con il ruolo SpaceDeveloper possono eseguire operazioni di sviluppo di app di Knowledge Factory all'interno dello spazio.
Per eseguire il push di un'app:
kf push app_name -p [PATH_TO_APP_ROOT_DIRECTORY]
Per visualizzare i log di un'app:
posix-terminal
kf logs app_name
Esegui SSH in un pod Kubernetes che esegue l'app:
posix-terminal
kf ssh app_name
Visualizza i service broker disponibili:
kf marketplace
Visualizza le app come SpaceManager o SpaceAuditor
I membri con il ruolo SpaceManager o SpaceAuditor potevano visualizzare le app disponibili all'interno dello spazio:
kf apps
Visualizzare gli spazi kf all'interno di un cluster
Tutti i ruoli (SpaceManager, SpaceDeveloper e SpaceAuditor) possono visualizzare gli spazi Kf disponibili all'interno di un cluster:
kf spaces
Visualizzare i membri dello spazio e i loro ruoli all'interno di uno spazio.
kf space-users
Flag di impersonificazione
Per verificare l'autorizzazione di un membro, un membro con più privilegi può testare le autorizzazioni di un altro membro utilizzando i flag di rappresentazione: --as
e --as-group
.
Ad esempio, in qualità di amministratore del cluster, puoi verificare se un utente (nome utente: bob) ha l'autorizzazione per eseguire il push di un'app.
kf push APP_NAME --as bob
Verifica che un gruppo (gestore-gruppo@example.com) disponga dell'autorizzazione per assegnare le autorizzazioni ad altri membri.
kf set-space-role bob SpaceDeveloper --as-group manager-group@example.com