Rôles et autorisations

Cette page décrit les rôles et les autorisations IAM (Identity and Access Management) requis pour exécuter des tests de connectivité.

Vous pouvez attribuer des autorisations ou des rôle prédéfinis à des utilisateurs ou à des comptes de service. Vous pouvez également créer un rôle personnalisé doté des autorisations que vous spécifiez.

Les autorisations IAM utilisent un préfixe networkmanagement.

Pour obtenir ou définir des stratégies IAM, ou pour tester les autorisations IAM avec l'API Network Management, consultez la section Gérer les règles d'accès.

Rôles

Cette section explique comment utiliser des rôles prédéfinis et personnalisés lors de l'octroi d'autorisations pour Connectivity Tests.

Pour en savoir plus sur chaque autorisation, consultez le tableau des autorisations.

Pour plus d'informations sur les rôles au niveau du projet et les ressources Google Cloud, consultez les documentations suivantes :

Rôles prédéfinis

Connectivity Tests offre les rôles prédéfinis suivants :

  • networkmanagement.admin : dispose des autorisations nécessaires pour effectuer toutes les opérations sur une ressource de test.
  • networkmanagement.viewer : dispose des autorisations nécessaires pour répertorier ou obtenir une ressource de test spécifique.

Le tableau suivant répertorie les rôles prédéfinis et les autorisations qui s'appliquent à chaque rôle.

Role Permissions

(roles/networkmanagement.admin)

Full access to Network Management resources.

Lowest-level resources where you can grant this role:

  • Project

networkmanagement.*

  • networkmanagement.config.get
  • networkmanagement.config.startFreeTrial
  • networkmanagement.config.update
  • networkmanagement.connectivitytests.create
  • networkmanagement.connectivitytests.delete
  • networkmanagement.connectivitytests.get
  • networkmanagement.connectivitytests.getIamPolicy
  • networkmanagement.connectivitytests.list
  • networkmanagement.connectivitytests.rerun
  • networkmanagement.connectivitytests.setIamPolicy
  • networkmanagement.connectivitytests.update
  • networkmanagement.locations.get
  • networkmanagement.locations.list
  • networkmanagement.operations.get
  • networkmanagement.operations.list
  • networkmanagement.topologygraphs.read

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/networkmanagement.viewer)

Read-only access to Network Management resources.

Lowest-level resources where you can grant this role:

  • Project

networkmanagement.config.get

networkmanagement.connectivitytests.get

networkmanagement.connectivitytests.getIamPolicy

networkmanagement.connectivitytests.list

networkmanagement.locations.*

  • networkmanagement.locations.get
  • networkmanagement.locations.list

networkmanagement.operations.*

  • networkmanagement.operations.get
  • networkmanagement.operations.list

networkmanagement.topologygraphs.read

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

Rôles personnalisés

Vous pouvez créer des rôles personnalisés en sélectionnant une liste d'autorisations dans la table d'autorisations pour Connectivity Tests.

Par exemple, vous pouvez créer un rôle appelé reachabilityUsers et lui accorder les autorisations list, get et rerun. Un utilisateur disposant de ce rôle peut réexécuter les tests de connectivité existants et afficher les résultats des tests mis à jour en fonction de la dernière configuration réseau.

Rôles au niveau du projet

Vous pouvez utiliser les rôles du projet pour définir des autorisations sur les ressources Google Cloud. Étant donné que les tests de connectivité doivent disposer d'un accès en lecture aux configurations de ressources Google Cloud sur votre réseau VPC (cloud privé virtuel) pour exécuter un test, vous devez attribuer au moins le rôle de lecteur de réseau de Compute (roles/compute.networkViewer) aux utilisateurs ou aux comptes de service qui effectuent un test sur ces ressources. Vous pouvez également créer un rôle personnalisé ou autoriser temporairement des autorisations associées au rôle précédent pour un utilisateur spécifique.

Vous pouvez également accorder à un compte d'utilisateur ou un compte service l'un des rôles prédéfinis suivants pour les projets Google Cloud :

Autorisations

Cette section décrit les autorisations pour Connectivity Tests et leur utilisation lors du test de différents types de configurations réseau.

Autorisations Connectivity Tests

Connectivity Tests dispose des autorisations IAM suivantes.

Autorisation Description
networkmanagement.connectivitytests.list Répertorie tous les tests configurés dans le projet spécifié.
networkmanagement.connectivitytests.get Récupère les détails d'un test spécifique.
networkmanagement.connectivitytests.create Crée un nouvel objet de test dans le projet spécifié avec les données que vous spécifiez pour le test. Cette autorisation inclut la possibilité de mettre à jour, de réexécuter ou de supprimer des tests.
networkmanagement.connectivitytests.update Met à jour un ou plusieurs champs dans un test existant.
networkmanagement.connectivitytests.delete Supprime le test spécifié.
networkmanagement.connectivitytests.rerun Réexécute un processus de vérification de l'accessibilité unique pour un test spécifié.

Si vous ne disposez pas des autorisations nécessaires pour créer ou mettre à jour un test, les boutons correspondants sont inactifs. Ces commandes incluent le bouton Créer un test de connectivité et, sur la page Informations sur le test de connectivité, le bouton Modifier. Dans chaque cas, lorsque vous passez la souris sur le bouton "Inactif", les tests de connectivité affichent un message décrivant l'autorisation dont vous avez besoin.

Autorisations d'affichage des résultats des tests

Si vous ne disposez pas des autorisations nécessaires pour afficher les ressources Compute Engine dans le chemin réseau que vous testez, vous pouvez toujours obtenir le résultat global du test, mais les détails sur les ressources testées sont masqués.

Ressources Projet

En général, si vous n'avez pas accès à une ressource de projet répertoriée dans une trace, le résultat de l'analyse affiche un message lu dans la partie No permission to view the resource. Les tests de connectivité masquent le type de ressource, le nom de la ressource et d'autres détails. Cependant, la trace identifie le projet auquel la ressource est associée.

Stratégies de pare-feu hiérarchiques

Votre trace peut inclure une stratégie de pare-feu hiérarchique que vous n'êtes pas autorisé à consulter. Toutefois, même si vous ne disposez pas des autorisations nécessaires pour afficher les détails de la stratégie, vous pouvez toujours voir les stratégies qui s'appliquent à votre réseau VPC. Pour en savoir plus, consultez la section Stratégies de pare-feu en vigueur dans la présentation des stratégies de pare-feu hiérarchiques.

Autorisations sur plusieurs projets

Si la configuration réseau que vous testez utilise l'appairage de réseaux VPC ou un VPC partagé, Connectivity Tests doit disposer des autorisations suffisantes pour accéder aux configurations dans les multiples projets utilisés par ces réseaux.

Ces autorisations permettent à Connectivity Tests d'exécuter une ou plusieurs traces complètes du chemin d'accès au paquet sur différents réseaux et projets. Sinon, Connectivity Tests ne peut accéder aux configurations que dans ce projet.

Autorisations pour les réseaux VPC partagés

Pour exécuter un test à partir d'un projet de service dans un réseau VPC partagé, vous devez disposer du rôle de lecteur de réseau Compute (roles/compute.networkViewer) ou de l'ancien rôle de lecteur de projet (roles/viewer) pour le projet hôte. Cette exigence existe, car les configurations de routage et de pare-feu du réseau se trouvent dans le projet hôte. Vous devez disposer d'un de ces rôles, même si les ressources que vous testez existent entièrement dans un seul projet de service.

Pour exécuter un test depuis un projet hôte de VPC partagé vers des instances de machine virtuelle (VM) dans un projet de service, vous devez également disposer de l'un de ces rôles (roles/compute.networkViewer ou roles/viewer) dans le projet de service. En outre, lorsque vous créez le test, vous devez fournir l'ID du projet de service. Si vous ne fournissez pas cet ID, le test de connectivité affiche un résultat global de joignabilité de Unreachable avec un message unknown IP address.

Autorisations pour l'appairage de réseaux VPC, Cloud VPN et Cloud Interconnect

Si vous effectuez un test de connectivité qui examine la joignabilité entre les projets connectés via l'appairage de réseaux VPC, les résultats que vous obtenez dépendent de vos autorisations.

Pour afficher les résultats complets de l'analyse, vous devez disposer du rôle de lecteur de réseau de Compute (roles/compute.networkViewer) ou de l'ancien rôle de lecteur de projet (roles/viewer) dans les deux projets.

Si vous disposez de l'un de ces rôles pour le réseau qui contient le point de terminaison source, mais pas sur le réseau contenant la destination, l'analyse affiche un résultat partiel. En d'autres termes, l'analyse indique que le paquet a été envoyé à un réseau d'appairage de réseaux VPC. Cependant, les tests de connectivité ne peuvent fournir aucune information supplémentaire pour ce réseau.

Étapes suivantes