Configurer l'accès aux ressources Cloud Build

Par défaut, seul le créateur d'un projet Google Cloud a accès au projet et à ses ressources. Pour accorder l'accès à d'autres utilisateurs, vous pouvez leur attribuer des rôles IAM (Identity and Access Management) sur le projet ou sur une ressource Cloud Build spécifique.

Cette page décrit les différentes façons de définir le contrôle des accès pour vos ressources Cloud Build.

Avant de commencer

Attribuer des rôles pour le projet

Console

  1. Ouvrez la page "IAM" dans Cloud Console :

    Ouvrir la page IAM

  2. Sélectionnez votre projet, puis cliquez sur Continuer.

  3. Cliquez sur Ajouter.

  4. Saisissez l'adresse e-mail de l'utilisateur ou du compte de service.

  5. Sélectionnez le rôle souhaité dans le menu déroulant. Les rôles Cloud Build se trouvent sous Cloud Build.

  6. Cliquez sur Enregistrer.

gcloud

Pour accorder un rôle à un compte principal, exécutez la commande add-iam-policy-binding :

gcloud group add-iam-policy-binding resource \
    --member=principal --role=role-id

Où :

  • group : le groupe d'outils gcloud de la ressource que vous souhaitez mettre à jour. Par exemple, vous pouvez utiliser des projets ou des organisations.

  • resource : nom de la ressource.

  • principal : identifiant du compte principal, qui se présente généralement sous la forme suivante : principal-type:id. Par exemple, "user:my-user@example.com". Pour obtenir la liste complète des types de compte principal ou de membre, consultez la documentation de référence sur les liaisons de stratégie.

  • role-id : le nom du rôle.

Par exemple, pour accorder le rôle de lecteur Cloud Build à l'utilisateur my-user@example.com pour le projet my-project :

gcloud projects add-iam-policy-binding my-project \
    --member=user:my-user@example.com --role=roles/cloudbuild.builds.viewer

Accorder des autorisations pour exécuter des commandes gcloud

Pour exécuter des commandes gcloud builds, les utilisateurs ne disposant que de rôles cloudbuild.builds.viewer ou cloudbuild.builds.editor doivent également disposer de l'autorisation serviceusage.services.use. Pour accorder cette autorisation à l'utilisateur, accordez-lui le rôle serviceusage.serviceUsageConsumer.

L'utilisateur doté de rôles/d'éditeur et de rôles/de propriétaire peut exécuter des commandes gcloud builds sans l'autorisation serviceusage.services.use supplémentaire.

Révoquer des rôles pour le projet

Console

  1. Ouvrez la page "IAM" dans Cloud Console :

    Ouvrir la page IAM

  2. Sélectionnez votre projet, puis cliquez sur Continuer.

  3. Dans le tableau des autorisations, recherchez l'ID de l'adresse e-mail du membre et cliquez sur l'icône en forme de crayon.

  4. Supprimez le rôle que vous souhaitez révoquer.

  5. Cliquez sur Save.

gcloud

Pour révoquer un rôle d'un utilisateur, exécutez la commande remove-iam-policy-binding :

gcloud group remove-iam-policy-binding resource \
    --member=principal --role=role-id

Où :

  • group : le groupe d'outils gcloud de la ressource que vous souhaitez mettre à jour. Par exemple, vous pouvez utiliser des projets ou des organisations.

  • resource : nom de la ressource.

  • principal : identifiant du compte principal, qui se présente généralement sous la forme suivante : principal-type:id. Par exemple, "user:my-user@example.com". Pour obtenir la liste complète des types de compte principal ou de membre, consultez la documentation de référence sur les liaisons de stratégie.

  • role-id : le nom du rôle.

Par exemple, pour révoquer le rôle de lecteur Cloud Build de l'utilisateur my-user@example.com pour le projet my-project, procédez comme suit :

gcloud projects remove-iam-policy-binding my-project \
    --member=user:my-user@example.com --role=roles/cloudbuild.builds.viewer

Afficher les rôles pour le projet

Console

  1. Ouvrez la page "IAM" dans Cloud Console :

    Ouvrir la page IAM

  2. Sélectionnez votre projet, puis cliquez sur Continuer.

  3. Sous Afficher par, cliquez sur Rôles.

  4. Pour afficher les comptes principaux dotés d'un rôle spécifique, développez le nom du rôle.

gcloud

Pour afficher tous les utilisateurs disposant d'un rôle particulier dans un projet Cloud, exécutez la commande suivante :

gcloud projects get-iam-policy project-id \
    --flatten="bindings[].members" \
    --format="table(bindings.members)" \
    --filter="bindings.role:role-id"

Où :

  • project-id est l'ID de votre projet.

  • role-id est le nom du rôle pour lequel vous souhaitez afficher les comptes principaux.

Par exemple, pour afficher tous les comptes principaux d'un projet disposant du rôle de lecteur de projet Cloud, exécutez la commande suivante :

gcloud projects get-iam-policy my-project \
    --flatten="bindings[].members" \
    --format="table(bindings.members)" \
    --filter="bindings.role:roles/cloudbuild.builds.viewer"

Créer des rôles personnalisés IAM

Pour les utilisateurs qui souhaitent définir leurs propres rôles contenant des groupes d'autorisations qu'ils spécifient, IAM propose des rôles personnalisés. Pour obtenir des instructions sur la création et l'utilisation de rôles personnalisés IAM, consultez la page Créer et gérer les rôles personnalisés.

Étape suivante