Présentation du contrôle des accès

Lorsque vous créez un projet Google Cloud Platform, vous êtes le seul utilisateur du projet. Par défaut, aucun autre utilisateur n'a accès à votre projet ou à ses ressources, y compris aux ressources Google Kubernetes Engine. Google Kubernetes Engine accepte plusieurs options de gestion de l'accès aux ressources de votre projet et de ses clusters à l'aide du contrôle des accès basé sur les rôles (RBAC, Role-Based Access Control).

Ces mécanismes présentent des fonctionnalités communes, mais ils ciblent différents types de ressources. Chaque mécanisme est expliqué dans une section ci-dessous, mais pour résumer :

  • Kubernetes RBAC est intégré à Kubernetes et permet d'accorder des autorisations précises pour des objets de clusters Kubernetes. Les autorisations existent en tant qu'objets ClusterRole ou Role dans le cluster. Les objets RoleBinding accordent des rôles aux utilisateurs Kubernetes, aux utilisateurs GCP, aux comptes de service GCP ou aux groupes Google (version bêta).

    Si vous utilisez principalement GKE et que vous avez besoin de contrôler avec précision chaque objet et opération de votre cluster, Kubernetes RBAC constitue le meilleur choix.

  • Cloud IAM gère les ressources GCP, y compris les clusters, et les types d'objets que contiennent ces derniers. Les autorisations sont attribuées aux membres Cloud IAM, qui existent dans GCP, G Suite ou Cloud Identity.

    Aucun mécanisme ne permet d'accorder des autorisations pour des objets Kubernetes spécifiques dans Cloud IAM. Par exemple, vous pouvez autoriser un utilisateur à créer des objets CustomResourceDefinition (CRD). Toutefois, vous ne pouvez pas lui accorder le droit de créer un seul objet CRD spécifique, ni limiter la création à un espace de noms ou à un cluster spécifique du projet. Un rôle Cloud IAM octroie des droits sur tous les clusters du projet, ou bien sur tous les clusters de tous les projets enfants s'il est appliqué au niveau du dossier.

    Si vous utilisez plusieurs composants GCP et que vous n'avez pas besoin de gérer des autorisations précises propres à Kubernetes, Cloud Identity and Access Management constitue un bon choix.

Kubernetes RBAC

Kubernetes étant compatible avec RBAC, vous pouvez créer des rôles ultraprécis qui existent dans le cluster Kubernetes. Un rôle peut être limité à un objet Kubernetes spécifique ou à un type d'objet Kubernetes, et il définit les actions (appelées verbes) que le rôle autorise concernant cet objet. Un RoleBinding est également un objet Kubernetes, et il attribue des rôles aux utilisateurs. Un utilisateur GKE peut être n'importe lequel des suivants :

  • Utilisateur GCP
  • Compte de service GCP
  • Compte de service Kubernetes
  • Utilisateur G Suite
  • Groupe Google G Suite (version bêta)

Pour en savoir plus, consultez la page Contrôle des accès basé sur les rôles.

Cloud IAM

Cloud Identity and Access Management vous permet de définir des rôles et de les attribuer à des membres. Un rôle est un ensemble d'autorisations qui, lorsqu'il est attribué à un membre, contrôle les accès à une ou plusieurs ressources GCP. Les rôles sont répartis en trois grandes catégories :

Un membre peut être n'importe lequel des suivants :

  • Compte Google
  • Compte de service
  • Groupe Google
  • Domaine G Suite
  • Domaine Cloud Identity

Une stratégie Cloud IAM attribue un ensemble d'autorisations à un ou plusieurs membres Google Cloud Platform.

Vous pouvez également utiliser Cloud IAM pour créer et configurer des comptes de service, qui sont des comptes GCP associés à votre projet et pouvant effectuer des tâches en votre nom. Les comptes de service se voient attribuer des rôles et des autorisations de la même manière que les utilisateurs humains.

Les comptes de service fournissent également d'autres fonctionnalités. Pour en savoir plus, consultez la page Créer des stratégies Cloud IAM.

Étapes suivantes

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Documentation Kubernetes Engine