Avant de commencer
Veuillez suivre le guide GKE RBAC avant de passer aux étapes suivantes.
Configurer Identity and Access Management (IAM)
Outre les autorisations accordées via Kf RBAC, les utilisateurs, les groupes ou les comptes de service doivent également être authentifiés pour afficher les utilisateurs GKE au niveau du projet. Cette exigence est la même que pour la configuration de GKE RBAC. Les utilisateurs/groupes doivent donc disposer au minimum de l'autorisation IAM container.clusters.get
dans le projet contenant le cluster. Cette autorisation est incluse dans le rôle container.clusterViewer
et dans d'autres rôles avec davantage de privilèges. Pour en savoir plus, consultez la page Interaction avec Identity and Access Management.
Attribuez le rôle container.clusterViewer
à un utilisateur ou à un groupe.
gcloud projects add-iam-policy-binding ${CLUSTER_PROJECT_ID} \
--role="container.clusterViewer" \
--member="${MEMBER}"
Exemples de valeurs de membres :
- user:test-user@gmail.com
- group:admins@example.com
- serviceAccount:test123@example.domain.com
Gérer les abonnements d'un espace en tant que SpaceManager
Le rôle d'administrateur de cluster ou les membres dotés du rôle SpaceManager peuvent attribuer un rôle à un utilisateur, un groupe ou un compte de service.
kf set-space-role MEMBER -t [Group|ServiceAccount|User]
Le rôle d'administrateur de cluster ou les membres dotés du rôle SpaceManager peuvent aussi supprimer un membre d'un rôle.
kf unset-space-role MEMBER -t [Group|ServiceAccount|User]
Vous pouvez afficher les membres et leur rôle au sein d'un espace.
kf space-users
Exemples
Attribuez le rôle SpaceDeveloper à un utilisateur.
kf set-space-role alice@example.com SpaceDeveloper
Attribuez le rôle SpaceDeveloper à un groupe.
kf set-space-role devs@example.com SpaceDeveloper -t Group
Attribuez le rôle SpaceDeveloper à un compte de service.
kf set-space-role sa-dev@example.domain.com SpaceDeveloper -t ServiceAccount
Développement d'applications en tant que "SpaceDeveloper"
Les membres disposant du rôle SpaceDeveloper peuvent effectuer des opérations de développement d'applications Kf au sein d'un espace.
Pour transférer une application :
kf push app_name -p [PATH_TO_APP_ROOT_DIRECTORY]
Pour afficher les journaux d'une application : posix-terminal
kf logs app_name
Pour se connecter en SSH à un pod Kubernetes exécutant l'application : posix-terminal
kf ssh app_name
Pour afficher les agents de service disponibles :
kf marketplace
Afficher des applications en tant que "SpaceManager" ou "SpaceAuditor"
Les membres disposant du rôle SpaceManager ou SpaceAuditor peuvent afficher les applications disponibles au sein de l'espace :
kf apps
Afficher les espaces Kf dans un cluster
Tous les rôles (SpaceManager, SpaceDeveloper et SpaceAuditor) peuvent afficher les espaces Kf disponibles dans un cluster :
kf spaces
Affichez les membres de l'espace et leur rôle au sein de l'espace.
kf space-users
Options contre l'usurpation d'identité
Pour vérifier l'autorisation d'un membre, un membre disposant de droits d'accès plus complets peut tester les autorisations d'un autre membre à l'aide des options contre l'usurpation d'identité : --as
et --as-group
.
Par exemple, en tant qu'administrateur de cluster, vous pouvez vérifier si un utilisateur (nom d'utilisateur : bob) est autorisé à transférer une application.
kf push APP_NAME --as bob
Vérifiez qu'un groupe (manager-group@example.com) est autorisé à attribuer des autorisations à d'autres membres.
kf set-space-role bob SpaceDeveloper --as-group manager-group@example.com