Funciones y permisos

En esta página, se describen las funciones y los permisos de administración de identidades y accesos (IAM) necesarios para ejecutar las pruebas de conectividad.

Puedes otorgar permisos a usuarios o cuentas de servicio o funciones predefinidas, o puedes crear una función personalizada 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 red, consulta Administra el acceso.

Roles

En esta sección, se describe cómo usar las funciones predefinidas y personalizadas cuando se otorgan permisos para pruebas de conectividad.

Para obtener una explicación de cada permiso, consulte la tabla de permisos.

Para obtener más información sobre las funciones de proyecto y los recursos de Google Cloud, consulta la siguiente documentación:

Funciones predefinidas

Las pruebas de conectividad tienen las siguientes funciones predefinidas:

  • 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 enumeran las funciones predefinidas y los permisos que se aplican a cada función.

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.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.cancel
  • networkmanagement.operations.delete
  • networkmanagement.operations.get
  • networkmanagement.operations.list
  • networkmanagement.vpcflowlogsconfigs.create
  • networkmanagement.vpcflowlogsconfigs.delete
  • networkmanagement.vpcflowlogsconfigs.get
  • networkmanagement.vpcflowlogsconfigs.list
  • networkmanagement.vpcflowlogsconfigs.update

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.locations.*

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

networkmanagement.operations.get

networkmanagement.operations.list

networkmanagement.vpcflowlogsconfigs.get

networkmanagement.vpcflowlogsconfigs.list

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

Roles personalizados

A fin de crear funciones personalizadas, selecciona una lista de permisos en la tabla de permisos para pruebas de conectividad.

Por ejemplo, puedes crear una función llamada reachabilityUsers y otorgar los permisos list, get y rerun a esta función. Un usuario con esta función 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.

Funciones de proyecto

Puedes usar funciones de proyecto para establecer permisos para los recursos de Google Cloud. Debido a que las pruebas de conectividad deben tener acceso de lectura a las configuraciones de recursos de Google Cloud en tu red de nube privada virtual (red de VPC) para ejecutar una prueba, debes otorgar al menos la función 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 una función personalizada 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 una de las siguientes funciones predefinidas para los proyectos de Google Cloud:

Permisos

En esta sección, se describen los permisos para las pruebas de conectividad y cómo usarlos cuando se prueban diferentes tipos de configuraciones 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 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 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. Estas 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 colocas el cursor sobre el botón inactivo, las pruebas de conectividad muestran un mensaje que describe el permiso que necesitas.

Permisos para ver los resultados de la prueba

Si no tienes permiso para ver los recursos de Compute Engine en la ruta de red que estás probando, aún puedes ver el resultado general de la prueba, pero los detalles sobre los recursos probados están ocultos.

Recursos del proyecto

En general, si no tienes acceso a un recurso del proyecto enumerado en un seguimiento, el resultado del análisis muestra un mensaje que lee en la parte No permission to view the resource. Las pruebas de conectividad ocultan el tipo de recurso, el nombre del recurso y otros detalles. Sin embargo, el seguimiento identifica el proyecto con el que está asociado el recurso.

Políticas jerárquicas de firewall

Es posible que tu seguimiento incluya una política de firewall jerárquica 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 Reglas de firewall efectivas en la descripción general de las políticas de firewall jerárquicas.

Permisos en múltiples proyectos

Si la configuración de red que pruebas usa el intercambio de tráfico entre redes de VPC o VPC compartida, las pruebas de conectividad deben tener permisos suficientes para acceder a la configuración en los diversos proyectos que usan estas redes.

Estos permisos permiten que las pruebas de conectividad ejecuten uno o más seguimientos completos de la ruta del paquete en diferentes redes y proyectos. De lo contrario, las pruebas de conectividad pueden acceder a las opciones de configuración solo en ese proyecto.

Permisos para redes de VPC compartidas

Para ejecutar una prueba desde un proyecto de servicio en una red de VPC compartida, debes tener la función de visualizador de red de Compute (roles/compute.networkViewer) o la función de visualizador del proyecto (roles/viewer) heredada para el proyecto host. Este requisito existe porque el firewall y la red de configuraciones de rutas de la red se encuentran en el proyecto host. Debes contar con una de estas funciones, incluso si los recursos que estás probando existen completamente dentro de un solo proyecto de servicio.

Para ejecutar una prueba desde un proyecto host de VPC compartida a instancias de máquina virtual (VM) en un proyecto de servicio, también debes tener una de estas funciones (roles/compute.networkViewer oroles/viewer ) en el proyecto de servicio. Además, cuando crees la prueba, debes proporcionar el ID del proyecto de servicio. Si no proporcionas este ID, la prueba de conectividad muestra un resultado general de accesibilidad de Unreachable con un mensaje unknown IP address.

Permisos para intercambio de tráfico de red de VPC, Cloud VPN y Cloud Interconnect

Si tienes una prueba de conectividad que examina la accesibilidad entre proyectos que están conectados mediante el intercambio de tráfico entre redes de VPC, los resultados que ves varían según tus permisos.

Para ver los resultados completos del análisis, debes tener la función Visualizador de red de Compute (roles/compute.networkViewer) o la función heredada Visualizador del proyecto (roles/viewer) en ambos proyectos.

Si tienes una de estas funciones en la red que contiene el extremo de origen, pero no la red que contiene el destino, el análisis muestra un resultado parcial. Es decir, el análisis muestra que el paquete se envió a una red de intercambio de tráfico de red de VPC. Sin embargo, las pruebas de conectividad no pueden proporcionar información adicional para esa red.

¿Qué sigue?