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 les Tests de connectivité.
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 Google Cloud ressources, consultez les documentations suivantes :
- Documentation de Resource Manager
- Documentation sur Identity and Access Management
- Documentation de Compute Engine décrivant le contrôle des accès
Rôles prédéfinis
Tests de connectivité 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.
(
Full access to Network Management resources.
Lowest-level resources where you can grant this role:
(
Editor role for networkmanagement
(
Read-only access to Network Management resources.
Lowest-level resources where you can grant this role:
(
Full access to Cloud Network Insights resources.
(
Editor access to Cloud Network Insights resources.
(
Read-only access to Cloud Network Insights resources.
Role
Permissions
Network Management Admin
roles/)
networkmanagement.*
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.webpaths.getnetworkmanagement.resourcemanager.resourcemanager.projects.getresourcemanager.projects.list
Networkmanagement Editor
roles/)
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.locations.*
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.
networkmanagement.networkmanagement.networkmanagement.operations.*
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.webpaths.*
networkmanagement.webpaths.getnetworkmanagement.resourcemanager.resourcemanager.projects.getresourcemanager.projects.list
Network Management Viewer
roles/)
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.locations.*
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.webpaths.*
networkmanagement.webpaths.getnetworkmanagement.resourcemanager.resourcemanager.projects.getresourcemanager.projects.list
Cloud Network Insights Admin
roles/)
networkmanagement.locations.*
networkmanagement.networkmanagement.networkmanagement.
networkmanagement.networkmanagement.networkmanagement.networkmanagement.
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.providers.*
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.webpaths.*
networkmanagement.webpaths.getnetworkmanagement.resourcemanager.resourcemanager.projects.getresourcemanager.projects.list
Cloud Network Insights Editor
roles/)
networkmanagement.locations.*
networkmanagement.networkmanagement.networkmanagement.
networkmanagement.networkmanagement.networkmanagement.networkmanagement.
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.providers.*
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.webpaths.*
networkmanagement.webpaths.getnetworkmanagement.resourcemanager.resourcemanager.projects.getresourcemanager.projects.list
Cloud Network Insights Viewer
roles/)
networkmanagement.networkmanagement.networkmanagement.
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.webpaths.*
networkmanagement.webpaths.getnetworkmanagement.resourcemanager.resourcemanager.projects.getresourcemanager.projects.list
Service agent roles
Service agent roles should only be granted to service agents.
| Role | Permissions |
|---|---|
GCP Network Management Service Agent( Grants the GCP Network Management API the authority to complete analysis based on network configurations from Compute Engine and Container Engine. |
|
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 les Tests de connectivité.
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 Google Cloud ressources.
Étant donné que les tests de connectivité doivent disposer d'un accès en lecture aux
Google Cloud configurations de ressources dans 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 Google Cloud projets :
project.viewer: dispose de toutes les autorisations du rôlenetworkmanagement.viewer.project.editorouproject.owner: dispose de toutes les autorisations du rôlenetworkmanagement.admin.
Autorisations
Cette section décrit les autorisations pour les Tests de connectivité et leur utilisation lors du test de différents types de configurations réseau.
Autorisations Tests de connectivité
Tests de connectivité 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 pour exécuter un test
Vous avez besoin des rôles et autorisations suivants pour exécuter un test :
- Autorisation
networkmanagement.connectivitytests.create(ounetworkmanagement.connectivitytests.rerun) dans un projet avec une ressource Tests de connectivité. - Rôle de lecteur de réseau de Compute
(
roles/compute.networkViewer) ou ancien rôle de lecteur (roles/viewer) pour tous les projets inclus dans le chemin de trace.
Tenez compte des considérations supplémentaires suivantes avec différents types d'options de connectivité.
Connectivité d'appairage de réseaux VPC, NCC ou Cloud VPN
Si le chemin de trace inclut l'appairage de réseaux VPC, le Network Connectivity Center ou la connectivité Cloud VPN à un réseau dans un autre projet, un chemin de paquet dans ce réseau n'est simulé que si vous disposez des autorisations pour ce projet. Sinon, un résultat de test incomplet est renvoyé (par exemple, une trace se terminant par l'état final Forward).
Projets VPC partagé
Si un point de terminaison source ou de destination (tel qu'une instance de machine virtuelle) utilise un VPC partagé, vous devez disposer des autorisations nécessaires pour accéder aux projets hôte et de service.
- Si vous disposez des autorisations nécessaires pour accéder aux projets hôte et de service, les informations de trace incluent des détails sur toutes les ressources pertinentes.
- Si vous ne disposez pas des autorisations nécessaires pour accéder à l'un des projets, les informations sur les ressources définies dans ce projet sont masquées dans la trace. Une erreur d'autorisation s'affiche.
Exemples
Vous avez accès au projet d'instance de VM (projet de service), mais pas à son projet de réseau (projet hôte). Si vous exécutez un test avec cette instance de VM comme source (spécifiée par le nom), toutes les étapes associées au projet hôte (par exemple, l'application de pare-feu ou de routes) sont masquées.
Vous avez accès au projet de réseau (projet hôte), mais pas au projet de VM (projet de service). Si vous exécutez un test avec cette instance de VM comme source (spécifiée par son adresse IP), toutes les étapes associées au projet de service, par exemple une étape avec les détails de l'instance de VM, sont masquées.
Services publiés Private Service Connect
Si le paquet est envoyé au service publié Private Service Connect (via un point de terminaison Private Service Connect ou un backend Private Service Connect), la partie de la trace dans le projet de producteur n'est affichée que si vous y avez accès. Sinon, la trace se termine par un état final général tel que Paquet livré au projet de producteur PSC ou Paquet supprimé dans le projet de producteur PSC.
Services gérés par Google
Si le paquet est envoyé vers ou depuis le réseau géré par Google associé à un service géré par Google (tel que Cloud SQL), les étapes du projet géré par Google ne sont pas affichées. Une étape de démarrage générale ou une étape finale s'affiche.
Ressources gérées par Google
Certaines ressources, telles que les nœuds d'un cluster Google Kubernetes Engine Autopilot, sont créées et gérées automatiquement par Google Cloud. Lorsqu'une étape est masquée, car elle fait référence à ces ressources, elle affiche le type de ressource (par exemple, une instance de VM), mais pas ses détails.
Adresses IP publiques des Google Cloud ressources
Si vous spécifiez une adresse IP publique attribuée à une ressource dans l'un de vos projets comme source ou destination de test, mais que vous ne disposez pas des autorisations nécessaires pour accéder au projet dans lequel la ressource avec cette adresse est définie, cette adresse IP est considérée comme une adresse IP Internet. Aucun détail sur la ressource sous-jacente ou le chemin de paquet après l'accès à cette ressource n'est affiché.
Autorisations d'affichage des résultats des tests
Pour afficher les résultats des tests, tenez compte des points suivants :
- Pour afficher les résultats des tests créés ou mis à jour après octobre 2024, vous n'avez besoin que de l'autorisation d'afficher la ressource de test (
networkmanagement.connectivitytests.get). Vous n'avez pas besoin d'autorisations pour les ressources et les projets inclus dans le chemin de trace. - Pour afficher les résultats des tests exécutés avant octobre 2024,
vous devez disposer du rôle de lecteur de réseau de Compute
ou de l'ancien rôle de lecteur (
roles/viewer) pour tous les projets inclus dans le chemin de trace.
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 Rôles IAM dans la présentation des stratégies de pare-feu hiérarchiques.
Étape suivante
- Gérez les règles d'accès.
- Découvrez les tests de connectivité
- Créez et exécutez des tests de connectivité.
- Résolvez les problèmes liés aux Tests de connectivité.