Ruoli e autorizzazioni

Questa pagina descrive i ruoli e le autorizzazioni Identity and Access Management (IAM) necessari per eseguire i Connectivity Tests.

Puoi concedere agli utenti o ai service account autorizzazioni o ruoli predefiniti oppure creare un ruolo personalizzato che utilizzi le autorizzazioni che specifichi.

Le autorizzazioni IAM utilizzano il prefisso networkmanagement.

Per ottenere o impostare i criteri IAM o per testare le autorizzazioni IAM con l'API di gestione della rete, vedi Gestire i criteri di accesso.

Ruoli

Questa sezione descrive come utilizzare i ruoli predefiniti e personalizzati quando concedi le autorizzazioni per i Connectivity Tests.

Per una spiegazione di ogni autorizzazione, consulta la tabella delle autorizzazioni.

Per ulteriori informazioni sui ruoli e sulle Google Cloud risorse del progetto, consulta la seguente documentazione:

Ruoli predefiniti

Connectivity Tests ha i seguenti ruoli predefiniti:

  • networkmanagement.admin ha l'autorizzazione per eseguire tutte le operazioni su una risorsa di test.
  • networkmanagement.viewer ha l'autorizzazione per elencare o ottenere una risorsa di test specifica.

La tabella seguente elenca i ruoli predefiniti e le autorizzazioni che si applicano a ogni ruolo.

Role Permissions

(roles/networkmanagement.admin)

Full access to Network Management resources.

Lowest-level resources where you can grant this role:

  • Project

networkmanagement.*

  • networkmanagement.connectivitytests.create
  • networkmanagement.connectivitytests.createTagBinding
  • networkmanagement.connectivitytests.delete
  • networkmanagement.connectivitytests.deleteTagBinding
  • networkmanagement.connectivitytests.get
  • networkmanagement.connectivitytests.getIamPolicy
  • networkmanagement.connectivitytests.list
  • networkmanagement.connectivitytests.listEffectiveTags
  • networkmanagement.connectivitytests.listTagBindings
  • networkmanagement.connectivitytests.rerun
  • networkmanagement.connectivitytests.setIamPolicy
  • networkmanagement.connectivitytests.update
  • networkmanagement.locations.get
  • networkmanagement.locations.list
  • networkmanagement.monitoringpoints.downloadConfig
  • networkmanagement.monitoringpoints.get
  • networkmanagement.monitoringpoints.list
  • networkmanagement.networkpaths.get
  • networkmanagement.networkpaths.list
  • networkmanagement.operations.cancel
  • networkmanagement.operations.delete
  • networkmanagement.operations.get
  • networkmanagement.operations.list
  • networkmanagement.providers.create
  • networkmanagement.providers.delete
  • networkmanagement.providers.generateProviderAccessToken
  • networkmanagement.providers.get
  • networkmanagement.providers.list
  • networkmanagement.topologygraphs.read
  • networkmanagement.vpcflowlogsconfigs.create
  • networkmanagement.vpcflowlogsconfigs.delete
  • networkmanagement.vpcflowlogsconfigs.get
  • networkmanagement.vpcflowlogsconfigs.list
  • networkmanagement.vpcflowlogsconfigs.update
  • networkmanagement.webpaths.get
  • networkmanagement.webpaths.list

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/networkmanagement.editor)

Editor role for networkmanagement

networkmanagement.connectivitytests.create

networkmanagement.connectivitytests.delete

networkmanagement.connectivitytests.get

networkmanagement.connectivitytests.getIamPolicy

networkmanagement.connectivitytests.list

networkmanagement.connectivitytests.listEffectiveTags

networkmanagement.connectivitytests.listTagBindings

networkmanagement.connectivitytests.rerun

networkmanagement.connectivitytests.update

networkmanagement.locations.*

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

networkmanagement.monitoringpoints.get

networkmanagement.monitoringpoints.list

networkmanagement.networkpaths.*

  • networkmanagement.networkpaths.get
  • networkmanagement.networkpaths.list

networkmanagement.operations.*

  • networkmanagement.operations.cancel
  • networkmanagement.operations.delete
  • networkmanagement.operations.get
  • networkmanagement.operations.list

networkmanagement.providers.generateProviderAccessToken

networkmanagement.providers.get

networkmanagement.providers.list

networkmanagement.topologygraphs.read

networkmanagement.vpcflowlogsconfigs.*

  • networkmanagement.vpcflowlogsconfigs.create
  • networkmanagement.vpcflowlogsconfigs.delete
  • networkmanagement.vpcflowlogsconfigs.get
  • networkmanagement.vpcflowlogsconfigs.list
  • networkmanagement.vpcflowlogsconfigs.update

networkmanagement.webpaths.*

  • networkmanagement.webpaths.get
  • networkmanagement.webpaths.list

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.connectivitytests.get

networkmanagement.connectivitytests.getIamPolicy

networkmanagement.connectivitytests.list

networkmanagement.connectivitytests.listEffectiveTags

networkmanagement.connectivitytests.listTagBindings

networkmanagement.locations.*

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

networkmanagement.monitoringpoints.get

networkmanagement.monitoringpoints.list

networkmanagement.networkpaths.*

  • networkmanagement.networkpaths.get
  • networkmanagement.networkpaths.list

networkmanagement.operations.get

networkmanagement.operations.list

networkmanagement.providers.generateProviderAccessToken

networkmanagement.providers.get

networkmanagement.providers.list

networkmanagement.topologygraphs.read

networkmanagement.vpcflowlogsconfigs.get

networkmanagement.vpcflowlogsconfigs.list

networkmanagement.webpaths.*

  • networkmanagement.webpaths.get
  • networkmanagement.webpaths.list

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/networkmanagement.CloudNetworkInsightsAdmin)

Full access to Cloud Network Insights resources.

networkmanagement.locations.*

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

networkmanagement.monitoringpoints.*

  • networkmanagement.monitoringpoints.downloadConfig
  • networkmanagement.monitoringpoints.get
  • networkmanagement.monitoringpoints.list

networkmanagement.networkpaths.*

  • networkmanagement.networkpaths.get
  • networkmanagement.networkpaths.list

networkmanagement.operations.get

networkmanagement.operations.list

networkmanagement.providers.*

  • networkmanagement.providers.create
  • networkmanagement.providers.delete
  • networkmanagement.providers.generateProviderAccessToken
  • networkmanagement.providers.get
  • networkmanagement.providers.list

networkmanagement.webpaths.*

  • networkmanagement.webpaths.get
  • networkmanagement.webpaths.list

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/networkmanagement.CloudNetworkInsightsEditor)

Editor access to Cloud Network Insights resources.

networkmanagement.locations.*

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

networkmanagement.monitoringpoints.*

  • networkmanagement.monitoringpoints.downloadConfig
  • networkmanagement.monitoringpoints.get
  • networkmanagement.monitoringpoints.list

networkmanagement.networkpaths.*

  • networkmanagement.networkpaths.get
  • networkmanagement.networkpaths.list

networkmanagement.operations.get

networkmanagement.operations.list

networkmanagement.providers.*

  • networkmanagement.providers.create
  • networkmanagement.providers.delete
  • networkmanagement.providers.generateProviderAccessToken
  • networkmanagement.providers.get
  • networkmanagement.providers.list

networkmanagement.webpaths.*

  • networkmanagement.webpaths.get
  • networkmanagement.webpaths.list

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/networkmanagement.CloudNetworkInsightsViewer)

Read-only access to Cloud Network Insights resources.

networkmanagement.monitoringpoints.get

networkmanagement.monitoringpoints.list

networkmanagement.networkpaths.*

  • networkmanagement.networkpaths.get
  • networkmanagement.networkpaths.list

networkmanagement.providers.generateProviderAccessToken

networkmanagement.providers.get

networkmanagement.providers.list

networkmanagement.webpaths.*

  • networkmanagement.webpaths.get
  • networkmanagement.webpaths.list

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

Service agent roles

Service agent roles should only be granted to service agents.

Role Permissions

(roles/networkmanagement.serviceAgent)

Grants the GCP Network Management API the authority to complete analysis based on network configurations from Compute Engine and Container Engine.

cloudsql.instances.get

cloudsql.instances.list

compute.addresses.get

compute.addresses.list

compute.backendServices.get

compute.backendServices.list

compute.externalVpnGateways.get

compute.externalVpnGateways.list

compute.firewalls.get

compute.firewalls.list

compute.forwardingRules.get

compute.forwardingRules.list

compute.globalAddresses.get

compute.globalAddresses.list

compute.globalForwardingRules.get

compute.globalForwardingRules.list

compute.globalNetworkEndpointGroups.get

compute.globalNetworkEndpointGroups.list

compute.healthChecks.get

compute.healthChecks.list

compute.httpHealthChecks.get

compute.httpHealthChecks.list

compute.httpsHealthChecks.get

compute.httpsHealthChecks.list

compute.instanceGroups.get

compute.instanceGroups.list

compute.instances.get

compute.instances.list

compute.networkEndpointGroups.get

compute.networkEndpointGroups.list

compute.networks.get

compute.networks.getEffectiveFirewalls

compute.networks.list

compute.networks.listPeeringRoutes

compute.packetMirrorings.get

compute.packetMirrorings.list

compute.regionBackendServices.get

compute.regionBackendServices.list

compute.regionHealthChecks.get

compute.regionHealthChecks.list

compute.regionNetworkEndpointGroups.get

compute.regionNetworkEndpointGroups.list

compute.regionTargetHttpProxies.get

compute.regionTargetHttpProxies.list

compute.regionTargetHttpsProxies.get

compute.regionTargetHttpsProxies.list

compute.regionTargetTcpProxies.get

compute.regionTargetTcpProxies.list

compute.regionUrlMaps.get

compute.regionUrlMaps.list

compute.routers.get

compute.routers.list

compute.routes.get

compute.routes.list

compute.subnetworks.get

compute.subnetworks.list

compute.targetGrpcProxies.get

compute.targetGrpcProxies.list

compute.targetHttpProxies.get

compute.targetHttpProxies.list

compute.targetHttpsProxies.get

compute.targetHttpsProxies.list

compute.targetInstances.get

compute.targetInstances.list

compute.targetPools.get

compute.targetPools.list

compute.targetSslProxies.get

compute.targetSslProxies.list

compute.targetTcpProxies.get

compute.targetTcpProxies.list

compute.targetVpnGateways.get

compute.targetVpnGateways.list

compute.urlMaps.get

compute.urlMaps.list

compute.vpnGateways.get

compute.vpnGateways.list

compute.vpnTunnels.get

compute.vpnTunnels.list

container.clusters.get

container.clusters.list

container.nodes.get

container.nodes.list

Ruoli personalizzati

Puoi creare ruoli personalizzati selezionando un elenco di autorizzazioni dalla tabella delle autorizzazioni per Connectivity Tests.

Ad esempio, puoi creare un ruolo denominato reachabilityUsers e concedere a questo ruolo le autorizzazioni list, get e rerun. Un utente con questo ruolo può eseguire di nuovo Connectivity Tests esistenti e visualizzare i risultati dei test aggiornati in base alla configurazione di rete più recente.

Ruoli progetto

Puoi utilizzare i ruoli progetto per impostare le autorizzazioni per le Google Cloud risorse. Poiché i test di connettività devono avere accesso in lettura alle Google Cloud configurazioni delle risorse nella rete Virtual Private Cloud (VPC) per eseguire un test, devi concedere almeno il ruolo Visualizzatore rete Compute (roles/compute.networkViewer) agli utenti o ai service account che eseguono un test su queste risorse. Puoi anche creare un ruolo personalizzato o autorizzare temporaneamente le autorizzazioni associate al ruolo precedente per un utente specifico.

In alternativa, puoi concedere a un utente o a un account di servizio uno dei seguenti ruoli predefiniti per i Google Cloud progetti:

Autorizzazioni

Questa sezione descrive le autorizzazioni per i Connectivity Tests e come utilizzarli durante il test di diversi tipi di configurazioni di rete.

Autorizzazioni per Connectivity Tests

Connectivity Tests ha le seguenti autorizzazioni IAM.

Autorizzazione Descrizione
networkmanagement.connectivitytests.list Elenca tutti i test configurati nel progetto specificato.
networkmanagement.connectivitytests.get Recupera i dettagli di un test specifico.
networkmanagement.connectivitytests.create Crea un nuovo oggetto di test nel progetto specificato con i dati che tu specifichi per il test. Questa autorizzazione include l'autorizzazione per aggiornare, eseguire di nuovo o eliminare i test.
networkmanagement.connectivitytests.update Aggiorna uno o più campi in un test esistente.
networkmanagement.connectivitytests.delete Elimina il test specificato.
networkmanagement.connectivitytests.rerun Esegue di nuovo una verifica della raggiungibilità una tantum per un test specificato.

Se non hai l'autorizzazione per creare o aggiornare un test, i pulsanti corrispondenti sono inattivi. Questi includono il pulsante Crea test di connettività e, nella pagina Dettagli test di connettività, il pulsante Modifica. In ogni caso, quando tieni il puntatore sopra il pulsante inattivo, Connectivity Tests visualizza un messaggio che descrive l'autorizzazione di cui hai bisogno.

Autorizzazioni per l'esecuzione di un test

Per eseguire un test, devi disporre dei seguenti ruoli e autorizzazioni:

  • Autorizzazione networkmanagement.connectivitytests.create (o networkmanagement.connectivitytests.rerun) in un progetto con una risorsa Connectivity Tests.
  • Ruolo Visualizzatore rete Compute (roles/compute.networkViewer) o il ruolo Visualizzatore legacy (roles/viewer) per tutti i progetti inclusi nel percorso di traccia.

Tieni presente le seguenti considerazioni aggiuntive con diversi tipi di opzioni di connettività.

Connettività peering di rete VPC, NCC o Cloud VPN

Se il percorso di traccia include la connettività peering di rete VPC, Network Connectivity Center o Cloud VPN a una rete in un progetto diverso, un percorso di pacchetti in quella rete viene simulato solo se hai le autorizzazioni per quel progetto. In caso contrario, viene restituito un risultato del test incompleto (ad esempio, una traccia che termina con lo stato finale Inoltra).

Progetti VPC condiviso

Se un endpoint di origine o di destinazione (ad esempio un'istanza di macchina virtuale (VM)) utilizza il VPC condiviso, devi avere l'autorizzazione per accedere sia al progetto host sia al progetto di servizio.

  • Se hai l'autorizzazione per accedere sia al progetto host sia al progetto di servizio, le informazioni di traccia includono i dettagli di tutte le risorse pertinenti.
  • Se non hai l'autorizzazione per accedere a uno dei progetti, le informazioni sulle risorse definite in questo progetto sono nascoste nella traccia. Viene visualizzato un errore di autorizzazione.
Esempi
  • Hai accesso al progetto dell'istanza VM (progetto di servizio), ma non hai accesso al progetto di rete (progetto host). Se esegui un test con questa istanza VM come origine (specificata dal nome), tutti i passaggi associati al progetto host (ad esempio, l'applicazione di firewall o route) sono nascosti.

  • Hai accesso al progetto di rete (progetto host), ma non hai accesso al progetto VM (progetto di servizio). Se esegui un test con questa istanza VM come origine (specificata dal relativo indirizzo IP), tutti i passaggi associati al progetto di servizio, ad esempio un passaggio con i dettagli dell'istanza VM, sono nascosti.

Servizi pubblicati di Private Service Connect

Se il pacchetto va al servizio pubblicato di Private Service Connect (tramite un endpoint di Private Service Connect o un backend di Private Service Connect), la parte della traccia nel progetto del producer viene mostrata solo se hai accesso. In caso contrario, la traccia termina con uno stato finale generale, ad esempio Pacchetto consegnato al progetto del producer PSC o Pacchetto eliminato all'interno del progetto del producer PSC.

Servizi gestiti da Google

Se il pacchetto va alla rete gestita da Google associata a un servizio gestito da Google (come Cloud SQL) o proviene da questa rete, i passaggi all'interno del progetto gestito da Google non vengono mostrati. Viene visualizzato un passaggio iniziale generale o un passaggio finale.

Risorse gestite da Google

Alcune risorse, come i nodi in un cluster Autopilot di Google Kubernetes Engine, vengono create e gestite automaticamente da Google Cloud. Quando un passaggio è nascosto perché fa riferimento a queste risorse, il passaggio mostra il tipo di risorsa (ad esempio, istanza VM), ma non i relativi dettagli.

Indirizzi IP pubblici delle Google Cloud risorse

Se specifichi un indirizzo IP pubblico assegnato a una risorsa in uno dei tuoi progetti come origine o destinazione di test, ma non hai le autorizzazioni per il progetto in cui è definita la risorsa con questo indirizzo, questo indirizzo IP viene considerato un indirizzo IP internet. Non vengono visualizzati i dettagli della risorsa sottostante o del percorso del pacchetto dopo che la risorsa è stata raggiunta.

Autorizzazioni per la visualizzazione dei risultati dei test

Per visualizzare i risultati dei test, tieni presente quanto segue:

  • Per visualizzare i risultati dei test creati o aggiornati dopo ottobre 2024, devi solo avere l'autorizzazione per visualizzare la risorsa di test (networkmanagement.connectivitytests.get); non hai bisogno delle autorizzazioni per le risorse e i progetti inclusi nel percorso di traccia.
  • Per visualizzare i risultati dei test eseguiti prima di ottobre 2024, devi disporre del ruolo Visualizzatore rete Compute o del ruolo Visualizzatore legacy (roles/viewer) per tutti i progetti inclusi nel percorso di traccia.

Criteri firewall gerarchici

La traccia potrebbe includere una policy del firewall gerarchica che non hai l'autorizzazione per visualizzare. Tuttavia, anche se non hai l'autorizzazione per visualizzare i dettagli dei criteri, puoi comunque visualizzare le regole dei criteri che si applicano alla tua rete VPC. Per i dettagli, vedi Ruoli IAM nella "Criteri firewall gerarchici" panoramica.

Passaggi successivi