Rôles et autorisations IAM

Vous contrôlez les accès dans Cloud Build à l'aide de Identity and Access Management (IAM). IAM vous permet de créer et de gérer les autorisations pour les ressources Google Cloud. Cloud Build fournit un ensemble spécifique de rôles IAM prédéfinis dans lesquels chaque rôle contient un ensemble d'autorisations. Vous pouvez utiliser ces rôles pour accorder un accès plus précis à des ressources Google Cloud spécifiques et empêcher tout accès indésirable à d'autres ressources. IAM vous permet d'adopter le principe de sécurité du moindre privilège afin de n'accorder que l'accès nécessaire à vos ressources.

Cette page décrit les autorisations et les rôles Cloud Build.

Rôles Cloud Build prédéfinis

Avec IAM, toutes les méthodes d'API de l'API Cloud Build nécessitent que l'identité effectuant la requête API dispose des autorisations appropriées pour utiliser la ressource. Pour accorder des autorisations, vous devez définir des stratégies qui attribuent des rôles à un compte principal (utilisateur, groupe ou compte de service). Vous pouvez attribuer plusieurs rôles à un compte principal sur la même ressource.

Le tableau ci-dessous répertorie les rôles IAM Cloud Build et les autorisations associées :

Rôle Description Autorisations
Name (Nom) : roles/cloudbuild.builds.viewer
Title (Titre) : Cloud Build Viewer
Peut afficher Cloud Build

ressources

cloudbuild.builds.get

cloudbuild.builds.list

Name (Nom) : roles/cloudbuild.builds.editor
Title (Titre) : Éditeur Cloud Build
Contrôle complet de Cloud Build

ressources

cloudbuild.builds.get

cloudbuild.builds.list

cloudbuild.builds.create

cloudbuild.builds.update

Nom: roles/cloudbuild.builds.approver
Titre: Validateur Cloud Build
Autorisez l'accès aux approbations ou

refuser les builds en attente

cloudbuild.builds.get

cloudbuild.builds.list

cloudbuild.builds.approve

cloudbuild.builds.update

Nom: roles/cloudbuild.builds.builder
Titre: Compte de service Cloud Build
Lorsque vous activez l'API Cloud Build
pour un projet,
le compte de service Cloud Build
est automatiquement créé dans le projet
. et reçoit ce rôle pour les ressources
du projet. Le compte de service Cloud Build
n'utilise ce rôle que si
est requis pour effectuer des actions lors de l'exécution de votre compilation par
.
Pour obtenir la liste des autorisations
associées à ce rôle, consultez la section
Compte de service Cloud Build.
Name (Nom) : roles/cloudbuild.integrations.viewer
Title (Titre) : Cloud Build Integrations Viewer
Peut afficher Cloud Build

connexions hôtes

cloudbuild.integrations.get

cloudbuild.integrations.list

Name (Nom) :roles/cloudbuild.integrations.editor
Title (Titre) : Cloud Build Integrations Editor
Modifier le contrôle de Cloud Build

connexions hôtes

cloudbuild.integrations.get

cloudbuild.integrations.list

cloudbuild.integrations.update

Name (Nom) :roles/cloudbuild.integrations.owner
Title (Titre) : Cloud Build Integrations Owner
Contrôle complet de Cloud Build

connexions hôtes

cloudbuild.integrations.get

cloudbuild.integrations.list

cloudbuild.integrations.create

cloudbuild.integrations.delete

cloudbuild.integrations.update

Nom: roles/cloudbuild.workerPoolOwner
Titre: Propriétaire de pools de nœuds de calcul Cloud Build
Contrôle total du pool privé cloudbuild.workerpools.create

cloudbuild.workerpools.delete

cloudbuild.workerpools.update

cloudbuild.workerpools.get

cloudbuild.workerpools.list

resourcemanager.projects.get

resourcemanager.projects.list

Name (Nom) :roles/cloudbuild.workerPoolEditor
Title (Titre) : Cloud Build WorkerPool Editor
Peut mettre à jour les pools privés cloudbuild.workerpools.update

cloudbuild.workerpools.get

cloudbuild.workerpools.list

resourcemanager.projects.get

resourcemanager.projects.list

Name (Nom) : roles/cloudbuild.workerPoolViewer
Title (Titre) : Cloud Build WorkerPool Viewer
Possibilité de consulter les pools privés cloudbuild.workerpools.get

cloudbuild.workerpools.list

resourcemanager.projects.get

resourcemanager.projects.list

Name (Nom) : roles/cloudbuild.workerPoolUser
Title (Titre) : Cloud Build WorkerPool User
Peut exécuter des builds dans le pool privé cloudbuild.workerpools.use

Outre les rôles Cloud Build prédéfinis ci-dessus, les rôles standard Lecteur, Éditeur et Propriétaire incluent également les autorisations associées à Cloud Build. Cependant, nous vous recommandons d'attribuer des rôles prédéfinis lorsque cela est possible afin de respecter le principe de sécurité du moindre privilège.

Le tableau ci-dessous répertorie les rôles de base et les rôles IAM Cloud Build associés.

Rôle Rôle(s) associé(s)
roles/viewer roles/cloudbuild.builds.viewer, roles/cloudbuild.integrations.viewer
roles/editor roles/cloudbuild.builds.editor, roles/cloudbuild.integrations.editor
roles/owner roles/cloudbuild.integrations.owner

Permissions

Le tableau suivant répertorie les autorisations dont l'appelant doit disposer pour appeler chaque méthode :

Méthode API Autorisation requise Nom du rôle
builds.create()
triggers.create()
triggers.patch()
triggers.delete()
triggers.run()
cloudbuild.builds.create Éditeur Cloud Build
builds.cancel() cloudbuild.builds.update Éditeur Cloud Build
builds.get()
triggers.get()
cloudbuild.builds.get Éditeur Cloud Build, Lecteur Cloud Build
builds.list()
triggers.list()
cloudbuild.builds.list Éditeur Cloud Build, Lecteur Cloud Build

Autorisations pour afficher les journaux de compilation

Pour afficher les journaux de compilation, vous avez besoin d'autorisations supplémentaires selon si vous les stockez dans le bucket Cloud Storage par défaut ou dans un bucket Cloud Storage spécifié par l'utilisateur. Pour en savoir plus sur les autorisations requises pour afficher les journaux de compilation, consultez la section Stocker et afficher les journaux de compilation.

Étape suivante