Antes de comenzar
Sigue la guía de RBAC de GKE antes de continuar con los siguientes pasos.
Configura Identity and Access Management (IAM)
Además de los permisos otorgados mediante Kf RBAC, los usuarios, grupos o cuentas de servicio también deben autenticarse para ver los clústeres de GKE a nivel de proyecto. Este requisito es el mismo que el de GKE RBAC, lo que significa que los usuarios o grupos deben tener, al menos, el permiso container.clusters.get
de IAM en el proyecto que contiene el clúster. Este permiso se incluye en la función container.clusterViewer
y otras funciones con privilegios. Si deseas obtener más información, consulta Interacción con Identity and Access Management.
Asigna container.clusterViewer
a un usuario o grupo.
gcloud projects add-iam-policy-binding ${CLUSTER_PROJECT_ID} \
--role="container.clusterViewer" \
--member="${MEMBER}"
Estos son algunos ejemplos de valores de miembros:
- user:test-user@gmail.com
- group:admins@example.com
- serviceAccount:test123@example.domain.com
Administra la suscripción al espacio como SpaceManager
La función de administrador de clúster, o los miembros con la función SpaceManager, pueden asignar funciones a un usuario, un grupo o una cuenta de servicio.
kf set-space-role MEMBER -t [Group|ServiceAccount|User]
La función de administrador de clúster, o los miembros con la función SpaceManager, pueden quitar a un miembro de una función.
kf unset-space-role MEMBER -t [Group|ServiceAccount|User]
Puedes ver los miembros y sus funciones en un Space.
kf space-users
Ejemplos
Asigna la función SpaceDeveloper a un usuario.
kf set-space-role alice@example.com SpaceDeveloper
Asigna la función SpaceDeveloper a un grupo.
kf set-space-role devs@example.com SpaceDeveloper -t Group
Asigna la función SpaceDeveloper a una cuenta de servicio.
kf set-space-role sa-dev@example.domain.com SpaceDeveloper -t ServiceAccount
Desarrollo de apps como SpaceDeveloper
Los miembros con la función SpaceDeveloper pueden realizar operaciones de desarrollo de apps de Kf en el espacio.
Para enviar una app:
kf push app_name -p [PATH_TO_APP_ROOT_DIRECTORY]
Para ver los registros de una aplicación: posix-terminal
kf logs app_name
Establece una conexión SSH a un pod de Kubernetes que ejecuta la app: posix-terminal
kf ssh app_name
Ve los agentes de servicio disponibles:
kf marketplace
Visualiza apps como SpaceManager o SpaceAuditor
Los miembros con la función SpaceManager o SpaceAuditor podrían visualizar apps disponibles en el espacio:
kf apps
Ver espacios de Kf dentro de un clúster
Todas las funciones (SpaceManager, SpaceDeveloper y SpaceAuditor) pueden ver espacios Kf disponibles en un clúster:
kf spaces
Ver a los miembros del espacio y sus roles en un espacio.
kf space-users
Marcas de robo de identidad
Para verificar el permiso de un miembro, un miembro con un permiso más privilegiado puede probar los permisos de otro miembro mediante las marcas de robo de identidad: --as
y --as-group
.
Por ejemplo, como administrador del clúster, puedes verificar si un usuario (nombre de usuario: bob) tiene permiso para enviar una app.
kf push APP_NAME --as bob
Verifica que un grupo (manager-group@example.com) tenga permiso para asignar un permiso a otros miembros.
kf set-space-role bob SpaceDeveloper --as-group manager-group@example.com