Configure access

Ce document décrit les autorisations IAM requises pour afficher les insights de sécurité de la chaîne d'approvisionnement logicielle dans la console Google Cloud.

Rôles requis

Pour afficher les insights sur la sécurité de la chaîne d'approvisionnement logicielle dans la console Google Cloud, vous devez disposer des rôles suivants ou d'un rôle disposant d'autorisations équivalentes:

Ces autorisations permettent d'accéder aux insights, mais pas d'effectuer d'autres actions telles que l'exécution de compilations dans Cloud Build.

  • Pour en savoir plus sur les autorisations requises pour un service spécifique, consultez la documentation associée à ce service.
  • Pour savoir comment accorder des autorisations, consultez la documentation Identity and Access Management sur l'octroi d'autorisations aux projets.

Par défaut, de nombreux services disposent d'autorisations par défaut pour d'autres services du même projet, mais ne peuvent pas accéder aux ressources d'un autre projet. Si vous exécutez des services dans différents Google Cloud projets ou si vous utilisez des rôles IAM ou des comptes de service personnalisés, vous devez accorder vous-même les autorisations appropriées.

Accorder des autorisations lorsque les services se trouvent dans le même projet

Si Cloud Build, Artifact Registry, Artifact Analysis et Cloud Run s'exécutent tous dans le même projet, chaque service utilise le compte de service par défaut pour agir en son nom, et les autorisations par défaut ne changent pas. Les services peuvent tous fonctionner ensemble sans modification des autorisations, mais vous devez accorder des autorisations aux utilisateurs qui doivent consulter les insights du projet.

Autorisations entre services

Aucune modification n'est requise:

  • Le compte de service Cloud Build par défaut est autorisé à importer et à télécharger des données avec Artifact Registry, et à lire des insights à partir d'Artifact Analysis. Le service peut ainsi signer des images de conteneur avec la provenance de compilation et les transférer vers Artifact Registry.
  • Les révisions Cloud Run utilisent le compte de service Compute Engine par défaut pour les déploiements, qui dispose des autorisations nécessaires pour télécharger des images depuis Artifact Registry et lire des données d'insights à partir d'Artifact Analysis.
Autorisations des utilisateurs pour afficher les insights

Vous devez attribuer aux utilisateurs de Cloud Build et de Cloud Run les rôles requis pour qu'ils puissent consulter les insights.

Accorder des autorisations lorsque les services se trouvent dans différents projets

Lorsque Artifact Registry et Artifact Analysis s'exécutent dans un projet distinct des autres services Google Cloud , vous devez accorder explicitement des autorisations pour toutes les activités interprojets. Prenons l'exemple de configuration de projet suivante:

  • Cloud Build s'exécute dans le projet A
  • Artifact Registry et Artifact Analysis s'exécutent dans le projet B
  • Cloud Run s'exécute dans le projet C
Autorisations entre services

Cloud Build et Cloud Run ne peuvent pas accéder aux ressources d'autres projets sans accorder explicitement l'accès aux comptes de service qui agissent au nom de ces services. Vous devez accorder les autorisations Artifact Registry et les autorisations d'analyse des artefacts appropriées dans le projet B, où les artefacts et les métadonnées des artefacts sont stockés.

Pour Cloud Build, vous devez attribuer les rôles suivants dans le projet B:

  • Le rédacteur Artifact Registry (roles/artifactregistry.writer) accorde des autorisations d'importation et de téléchargement.
  • Le lecteur d'occurrences d'analyse des artefacts (roles/containeranalysis.occurrences.viewer) accorde des autorisations pour afficher des insights.

Pour Cloud Run, vous devez attribuer les rôles suivants dans le projet B:

  • Le lecteur Artifact Registry (roles/artifactregistry.reader) accorde des autorisations de téléchargement pour les déploiements.
  • Le lecteur d'occurrences d'analyse des artefacts (roles/containeranalysis.occurrences.viewer) accorde des autorisations pour afficher des insights.
Autorisations des utilisateurs pour afficher les insights

Dans le projet B, vous devez accorder aux utilisateurs de Cloud Build et de Cloud Run disposant des rôles requis le droit de consulter les insights.

Étape suivante