En esta página, se describen los roles y los permisos de Identity and Access Management (IAM) necesarios para ejecutar las pruebas de conectividad.
Puedes otorgar permisos a usuarios o cuentas de servicio o roles predefinidos, o puedes crear un rol personalizado que use permisos que tú especifiques.
Los permisos de IAM usan un prefijo de networkmanagement.
Si quieres obtener o configurar políticas de IAM, o bien probar los permisos de IAM con la API de administración de redes, consulta Administrar las políticas de acceso.
Roles
En esta sección, se describe cómo usar los roles predefinidos y personalizados cuando se otorgan permisos para pruebas de conectividad.
Para obtener una explicación de cada permiso, consulta la tabla de permisos.
Para obtener más información sobre los roles de proyecto y los recursos de Google Cloud , consulta la siguiente documentación:
- Documentación de Resource Manager
- Documentación de Identity and Access Management.
- Documentación de Compute Engine que describe el control de acceso
Roles predefinidos
Las pruebas de conectividad tienen los siguientes roles predefinidos:
networkmanagement.admintiene permiso para realizar todas las operaciones en un recurso de prueba.networkmanagement.viewertiene permiso para enumerar o para obtener un recurso de prueba específico.
En la siguiente tabla, se enumeran los roles predefinidos y los permisos que se aplican a cada rol.
(
Full access to Network Management resources.
Lowest-level resources where you can grant this role:
(
Grants the GCP Network Management API the authority to complete analysis based on network configurations from Compute Engine and Container Engine.
(
Read-only access to Network Management resources.
Lowest-level resources where you can grant this role:
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.resourcemanager.resourcemanager.projects.getresourcemanager.projects.list
GCP Network Management Service Agent
roles/)
cloudsql.instances.getcloudsql.instances.listcompute.addresses.getcompute.addresses.listcompute.backendServices.getcompute.backendServices.listcompute.compute.compute.firewalls.getcompute.firewalls.listcompute.forwardingRules.getcompute.forwardingRules.listcompute.globalAddresses.getcompute.globalAddresses.listcompute.compute.compute.compute.compute.healthChecks.getcompute.healthChecks.listcompute.httpHealthChecks.getcompute.httpHealthChecks.listcompute.httpsHealthChecks.getcompute.httpsHealthChecks.listcompute.instanceGroups.getcompute.instanceGroups.listcompute.instances.getcompute.instances.listcompute.compute.compute.networks.getcompute.compute.networks.listcompute.compute.packetMirrorings.getcompute.packetMirrorings.listcompute.compute.compute.regionHealthChecks.getcompute.compute.compute.compute.compute.compute.compute.compute.compute.compute.regionUrlMaps.getcompute.regionUrlMaps.listcompute.routers.getcompute.routers.listcompute.routes.getcompute.routes.listcompute.subnetworks.getcompute.subnetworks.listcompute.targetGrpcProxies.getcompute.targetGrpcProxies.listcompute.targetHttpProxies.getcompute.targetHttpProxies.listcompute.targetHttpsProxies.getcompute.compute.targetInstances.getcompute.targetInstances.listcompute.targetPools.getcompute.targetPools.listcompute.targetSslProxies.getcompute.targetSslProxies.listcompute.targetTcpProxies.getcompute.targetTcpProxies.listcompute.targetVpnGateways.getcompute.targetVpnGateways.listcompute.urlMaps.getcompute.urlMaps.listcompute.vpnGateways.getcompute.vpnGateways.listcompute.vpnTunnels.getcompute.vpnTunnels.listcontainer.clusters.getcontainer.clusters.listcontainer.nodes.getcontainer.nodes.list
Network Management Viewer
roles/)
networkmanagement.networkmanagement.networkmanagement.networkmanagement.locations.*
networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.networkmanagement.resourcemanager.resourcemanager.projects.getresourcemanager.projects.list
Roles personalizados
Para crear roles personalizados, selecciona una lista de permisos en la tabla de permisos para pruebas de conectividad.
Por ejemplo, puedes crear un rol llamado reachabilityUsers y
otorgar los permisos list, get y rerun a
este rol. Un usuario con este rol puede volver a ejecutar
las pruebas de conectividad existentes
y ver los resultados de la prueba actualizados en función de la configuración de red más reciente.
Roles de proyecto
Puedes usar roles de proyecto para establecer permisos para los recursos de Google Cloud .
Debido a que las pruebas de conectividad deben tener acceso de lectura a
los parámetros de configuración de recursos deGoogle Cloud en tu red de nube privada virtual (VPC)
para ejecutar una prueba, debes otorgar al menos el
rol de visualizador de red de Compute
(roles/compute.networkViewer) a usuarios o cuentas de servicio que ejecutan una prueba
en esos recursos. También puedes crear un rol personalizado o autorizar de manera temporal
los permisos asociados con la función anterior para un usuario específico.
Como alternativa, puedes otorgar a un usuario o una cuenta de servicio uno de los siguientes roles predefinidos para proyectos de Google Cloud :
project.viewertiene todos los permisos de un rolnetworkmanagement.viewer.project.editoroproject.ownertiene todos los permisos del rolnetworkmanagement.admin.
Permisos
En esta sección, se describen los permisos para las pruebas de conectividad y cómo usarlos cuando se prueban diferentes tipos de configuración de red.
Permisos de pruebas de conectividad
Las pruebas de conectividad tienen los siguientes permisos de IAM.
| Permiso | Descripción |
|---|---|
networkmanagement.connectivitytests.list |
Enumera todas las pruebas configuradas en el proyecto especificado. |
networkmanagement.connectivitytests.get |
Obtiene los detalles de una prueba de conectividad específica. |
networkmanagement.connectivitytests.create |
Crea un objeto de prueba nuevo en el proyecto especificado con los datos que especificas para la prueba. Este permiso incluye el permiso para actualizar, volver a ejecutar o borrar pruebas. |
networkmanagement.connectivitytests.update |
Actualiza uno o más campos en una prueba existente. |
networkmanagement.connectivitytests.delete |
Borra la prueba especificada. |
networkmanagement.connectivitytests.rerun |
Vuelve a ejecutar una verificación de accesibilidad única para una prueba especificada. |
Si no tienes permiso para crear o actualizar una prueba, los botones correspondientes estarán inactivos. Entre estos, se incluyen el botón Crear prueba de conectividad y, en la página Detalles de la prueba de conectividad, el botón Editar. En cada caso, cuando mantienes el puntero sobre el botón inactivo, las pruebas de conectividad muestran un mensaje que describe el permiso que necesitas.
Permisos para ejecutar una prueba
Necesitas los siguientes roles y permisos para ejecutar una prueba:
- Permiso
networkmanagement.connectivitytests.create(onetworkmanagement.connectivitytests.rerun) en un proyecto con un recurso de pruebas de conectividad. - Rol de visualizador de red de Compute
(
roles/compute.networkViewer) o el rol de visualizador (roles/viewer) heredado para todos los proyectos incluidos en la ruta de seguimiento.
Ten en cuenta las siguientes consideraciones adicionales con los diferentes tipos de opciones de conectividad.
Conectividad de intercambio de tráfico entre redes de VPC, Network Connectivity Center o conexión de Cloud VPN
Si la ruta de seguimiento incluye el intercambio de tráfico entre redes de VPC, Network Connectivity Center o la conexión de Cloud VPN a una red en un proyecto diferente, se simulará una ruta de paquetes en esa red solo si tienes permisos para ese proyecto. De lo contrario, se devuelve un resultado de prueba incompleto (por ejemplo, un seguimiento que finaliza con el estado final de Reenvío).
Proyectos de VPC compartida
Si un extremo de origen o destino (como una instancia de máquina virtual [VM]) usa una VPC compartida, debes tener permiso para acceder a los proyectos host y de servicio.
- Si tienes permiso para acceder tanto al proyecto host como al proyecto de servicio, la información de seguimiento incluye detalles sobre todos los recursos pertinentes.
- Si no tienes permiso para acceder a uno de los proyectos, la información sobre los recursos definidos en ese proyecto se oculta en el seguimiento. Se muestra un error de permiso.
Ejemplos
Tienes acceso al proyecto de la instancia de VM (proyecto de servicio), pero no al proyecto de su red (proyecto host). Si ejecutas una prueba con esta instancia de VM como origen (especificada por el nombre), se ocultan todos los pasos asociados con el proyecto host (por ejemplo, aplicar firewalls o rutas).
Tienes acceso al proyecto de red (proyecto host), pero no al proyecto de VM (proyecto de servicio). Si ejecutas una prueba con esta instancia de VM como origen (especificada por su dirección IP), se ocultan todos los pasos asociados con el proyecto de servicio, por ejemplo, un paso con los detalles de la instancia de VM.
Servicios publicados de Private Service Connect
Si el paquete va al servicio publicado de Private Service Connect (a través de un extremo o un backend de Private Service Connect), la parte del registro en el proyecto del productor solo se muestra si tienes acceso a ella. De lo contrario, el registro finaliza con un estado final general, como Se entregó el paquete al proyecto del productor de PSC o Se descartó el paquete dentro del proyecto del productor de PSC.
Servicios administrados por Google
Si el paquete va hacia o desde la red administrada por Google asociada a un servicio administrado por Google (como Cloud SQL), no se muestran los pasos dentro del proyecto administrado por Google. Se muestra un paso inicial o final general.
Direcciones IP públicas de los recursos de Google Cloud
Si especificas una dirección IP pública que está asignada a un recurso en uno de tus proyectos como origen o destino de prueba, pero no tienes permisos para el proyecto en el que se define el recurso con esta dirección, esta dirección IP se considera una dirección IP de Internet. No se muestran los detalles sobre el recurso subyacente ni la ruta del paquete después de que se alcanza este recurso.
Permisos para ver los resultados de la prueba
Para ver los resultados de la prueba, ten en cuenta lo siguiente:
- Para ver los resultados de las pruebas creadas o actualizadas después de octubre de 2024,
solo necesitas permiso para ver el recurso de prueba (
networkmanagement.connectivitytests.get); no necesitas permisos para los recursos y proyectos incluidos en la ruta de seguimiento. - Para ver los resultados de las pruebas ejecutadas antes de octubre de 2024,
debes tener el rol de visualizador de red de Compute
o el rol de visualizador heredado (
roles/viewer) para todos los proyectos incluidos en la ruta de seguimiento.
Políticas jerárquicas de firewall
Es posible que tu seguimiento incluya una política jerárquica de firewall que no tienes permiso para ver. Sin embargo, aunque no tengas permiso para ver los detalles de la política, puedes ver las reglas de la política que se aplican a la red de VPC. Para obtener más detalles, consulta Roles de IAM en la descripción general de "Políticas jerárquicas de firewall".
¿Qué sigue?
- Administra políticas de acceso.
- Obtén información sobre las pruebas de conectividad.
- Crea y ejecuta pruebas de conectividad.
- Soluciona problemas de pruebas de conectividad.