En esta página se describen los roles y permisos de Gestión de Identidades y Accesos (IAM) necesarios para ejecutar Connectivity Tests.
Puede conceder permisos o roles predefinidos a usuarios o cuentas de servicio, o bien crear un rol personalizado que use los permisos que especifique.
Los permisos de gestión de identidades y accesos usan el prefijo networkmanagement
.
Para obtener o definir políticas de gestión de identidades y accesos, o para probar permisos de gestión de identidades y accesos con la API Network Management, consulta Gestionar políticas de acceso.
Roles
En esta sección se describe cómo usar roles predefinidos y personalizados al conceder permisos para Connectivity Tests.
Para ver una explicación de cada permiso, consulta la tabla de permisos.
Para obtener más información sobre los roles de proyecto y los Google Cloud recursos, consulta la siguiente documentación:
- Documentación de Resource Manager
- Documentación sobre Gestión de Identidades y Accesos
- Documentación de Compute Engine sobre el control de acceso
Funciones predefinidas
Pruebas de conectividad tiene los siguientes roles predefinidos:
networkmanagement.admin
tiene permiso para realizar todas las operaciones en un recurso de prueba.networkmanagement.viewer
tiene permiso para enumerar u obtener un recurso de prueba específico.
En la siguiente tabla se indican 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.
resourcemanager.
resourcemanager.projects.get
resourcemanager.projects.list
GCP Network Management Service Agent
roles/
)
cloudsql.instances.get
cloudsql.instances.list
compute.addresses.get
compute.addresses.list
compute.backendServices.get
compute.backendServices.list
compute.
compute.
compute.firewalls.get
compute.firewalls.list
compute.forwardingRules.get
compute.forwardingRules.list
compute.globalAddresses.get
compute.globalAddresses.list
compute.
compute.
compute.
compute.
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.
compute.
compute.networks.get
compute.
compute.networks.list
compute.
compute.packetMirrorings.get
compute.packetMirrorings.list
compute.
compute.
compute.regionHealthChecks.get
compute.
compute.
compute.
compute.
compute.
compute.
compute.
compute.
compute.
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.
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
Network Management Viewer
roles/
)
networkmanagement.
networkmanagement.
networkmanagement.
networkmanagement.locations.*
networkmanagement.
networkmanagement.
networkmanagement.
networkmanagement.
networkmanagement.
networkmanagement.
resourcemanager.
resourcemanager.projects.get
resourcemanager.projects.list
Roles personalizados
Puedes crear roles personalizados seleccionando una lista de permisos de la tabla de permisos de Pruebas de conectividad.
Por ejemplo, puedes crear un rol llamado reachabilityUsers
y
concederle los permisos list
, get
y rerun
. Un usuario con este rol puede volver a ejecutar las pruebas de conectividad y ver los resultados actualizados en función de la configuración de red más reciente.
Roles de proyecto
Puedes usar roles de proyecto para definir permisos en los Google Cloud recursos.
Como las pruebas de conectividad deben tener acceso de lectura a las configuraciones de recursos deGoogle Cloud tu red de nube privada virtual (VPC) para ejecutar una prueba, debes conceder al menos el rol de lector de red de Compute (roles/compute.networkViewer
) a los usuarios o las cuentas de servicio que ejecuten una prueba en esos recursos. También puedes crear un rol personalizado o autorizar temporalmente permisos asociados al rol anterior para un usuario específico.
También puedes conceder a un usuario o a una cuenta de servicio uno de los siguientes roles predefinidos para proyectos: Google Cloud
project.viewer
tiene todos los permisos del rolnetworkmanagement.viewer
.project.editor
oproject.owner
tiene todos los permisos del rolnetworkmanagement.admin
.
Permisos
En esta sección se describen los permisos de Connectivity Tests y cómo usarlos al probar diferentes tipos de configuraciones de red.
Permisos de pruebas de conectividad
Pruebas de conectividad tiene los siguientes permisos de IAM.
Permiso | Descripción |
---|---|
networkmanagement.connectivitytests.list |
Muestra todas las pruebas configuradas en el proyecto especificado. |
networkmanagement.connectivitytests.get |
Obtiene los detalles de una prueba específica. |
networkmanagement.connectivitytests.create |
Crea un objeto de prueba en el proyecto especificado con los datos que indiques para la prueba. Este permiso incluye el permiso para actualizar, volver a ejecutar o eliminar pruebas. |
networkmanagement.connectivitytests.update |
Actualiza uno o varios campos de una prueba. |
networkmanagement.connectivitytests.delete |
Elimina la prueba especificada. |
networkmanagement.connectivitytests.rerun |
Vuelve a ejecutar una verificación de accesibilidad única para una prueba específica. |
Si no tienes permiso para crear o actualizar una prueba, los botones correspondientes estarán inactivos. Entre ellos, se encuentran 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 mantengas el puntero sobre el botón inactivo, Pruebas de conectividad mostrará un mensaje que describe el permiso que necesitas.
Permisos para ejecutar una prueba
Necesitas los siguientes roles y permisos para ejecutar una prueba:
networkmanagement.connectivitytests.create
(onetworkmanagement.connectivitytests.rerun
) en un proyecto con un recurso de pruebas de conectividad.- Rol de lector de red de Compute
(
roles/compute.networkViewer
) o el rol antiguo Lector (roles/viewer
) en todos los proyectos incluidos en la ruta de la traza.
Tenga en cuenta las siguientes consideraciones adicionales sobre los diferentes tipos de opciones de conectividad.
Emparejamiento de redes de VPC, Network Connectivity Center o conectividad de Cloud VPN
Si la ruta de la traza incluye el emparejamiento de redes de VPC, Network Connectivity Center o la conectividad de Cloud VPN a una red de otro proyecto, se simula 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 rastreo que termina con el estado final Forward).
Proyectos de VPC compartida
Si un endpoint de origen o de destino (como una instancia de máquina virtual) usa una VPC compartida, debes tener permiso para acceder tanto al proyecto host como al de servicio.
- Si tienes permiso para acceder tanto al proyecto host como al de servicio, la información de la traza 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 permisos.
Ejemplos
Tienes acceso al proyecto de la instancia de VM (proyecto de servicio), pero no al proyecto de su red (proyecto del host). Si ejecutas una prueba con esta instancia de VM como origen (especificada por el nombre), se ocultarán todos los pasos asociados al proyecto host (por ejemplo, la aplicación de firewalls o rutas).
Tienes acceso al proyecto de red (proyecto del 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 ocultarán los pasos asociados al 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 punto final o un backend de Private Service Connect), la parte del rastreo del proyecto del productor solo se muestra si tienes acceso a ella. De lo contrario, el seguimiento termina con un estado final general, como Paquete entregado al proyecto productor de PSC o Paquete descartado en el proyecto productor de PSC.
Servicios gestionados por Google
Si el paquete va a la red gestionada por Google asociada a un servicio gestionado por Google (como Cloud SQL) o procede de ella, no se muestran los pasos del proyecto gestionado 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 asignada a un recurso de uno de tus proyectos como origen o destino de una prueba, pero no tienes permisos para acceder al proyecto en el que se define el recurso con esta dirección, se considera que esta dirección IP es una dirección IP de Internet. No se muestra ningún detalle sobre el recurso subyacente ni la ruta del paquete después de acceder a este recurso.
Permisos para ver los resultados de las pruebas
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 del 2024, solo necesitas el permiso para ver el recurso de prueba (
networkmanagement.connectivitytests.get
). No necesitas permisos para los recursos y proyectos incluidos en la ruta de la traza. - Para ver los resultados de las pruebas ejecutadas antes de octubre del 2024, debes tener el rol de lector de red de Compute o el rol de lector antiguo (
roles/viewer
) en todos los proyectos incluidos en la ruta de la traza.
Políticas de cortafuegos jerárquicas
Es posible que tu traza incluya una política de cortafuegos jerárquica para la que no tengas permiso de visualización. Sin embargo, aunque no tengas permiso para ver los detalles de la política, puedes consultar las reglas de la política que se aplican a tu red de VPC. Para obtener más información, consulta la sección Roles de gestión de identidades y accesos del artículo "Descripción general de las políticas de cortafuegos jerárquicas".
Siguientes pasos
- Gestionar políticas de acceso
- Información sobre las pruebas de conectividad
- Crear y ejecutar pruebas de conectividad
- Solucionar problemas con las pruebas de conectividad