Guía de control de acceso a Cloud Dataflow

Descripción general

Puedes usar las funciones de IAM de Cloud Dataflow para limitar el acceso de los usuarios dentro de una organización o proyecto solo a los recursos relacionados con Cloud Dataflow, en lugar de otorgarles a los usuarios acceso de lector, editor o propietario a todo el proyecto de Cloud Platform.

En esta página, se describe cómo utilizar las funciones de IAM de Cloud Dataflow. Consulta la guía para desarrolladores de Google Cloud Identity and Access Management si quieres obtener una descripción detallada de IAM y de sus funciones.

Cada método de Cloud Dataflow requiere que el emisor tenga los permisos necesarios. Para obtener una lista de los permisos y funciones que admite Cloud Dataflow, consulta la siguiente sección.

Permisos y funciones

En esta sección, se resumen los permisos y las funciones que admite IAM de Cloud Dataflow.

Permisos necesarios

En la siguiente tabla, se enumeran los permisos que debe tener el emisor para llamar a cada método:

Método Permisos necesarios
dataflow.jobs.create dataflow.jobs.create
dataflow.jobs.cancel dataflow.jobs.cancel
dataflow.jobs.updateContents dataflow.jobs.updateContents
dataflow.jobs.list dataflow.jobs.list
dataflow.jobs.get dataflow.jobs.get
dataflow.messages.list dataflow.messages.list
dataflow.metrics.get dataflow.metrics.get

Funciones

En la siguiente tabla, se enumeran las funciones de IAM de Cloud Dataflow con la lista correspondiente de todos los permisos que se incluyen en cada función. Ten en cuenta que cada permiso corresponde a un tipo de recurso específico.

roles/
dataflow.admin
Administrador de Dataflow Función mínima para crear y administrar trabajos de Dataflow. compute.machineTypes.get
dataflow.*
resourcemanager.projects.get
resourcemanager.projects.list
storage.buckets.get
storage.objects.create
storage.objects.get
storage.objects.list
roles/
dataflow.developer
Desarrollador de Dataflow Proporciona los permisos necesarios para ejecutar y manipular los trabajos de Dataflow. dataflow.*
resourcemanager.projects.get
resourcemanager.projects.list
Proyecto roles/
dataflow.viewer
Visualizador de Dataflow Proporciona acceso de solo lectura a todos los recursos relacionados con Dataflow. dataflow.jobs.get
dataflow.jobs.list
dataflow.messages.*
dataflow.metrics.*
resourcemanager.projects.get
resourcemanager.projects.list
Proyecto roles/
dataflow.worker
Trabajador de Dataflow Proporciona los permisos necesarios para que una cuenta de servicio de Compute Engine ejecute unidades de trabajo en una canalización de Dataflow. compute.instanceGroupManagers.update
compute.instances.delete
compute.instances.setDiskAutoDelete
dataflow.jobs.get
logging.logEntries.create
storage.objects.create
storage.objects.get
Proyecto
Función Cargo Descripción Permisos Recurso más bajo

Nota: La función de Trabajador de Cloud Dataflow (roles/dataflow.worker) proporciona los permisos (dataflow.workItems.lease, dataflow.workItems.update y dataflow.workItems.sendMessage) necesarios a fin de que una cuenta de servicio de Compute Engine ejecute unidades de trabajo para una canalización de Apache Beam. Por lo general, solo debe asignarse a la cuenta y solo incluye la capacidad de solicitar y actualizar el trabajo desde el servicio de Cloud Dataflow.

Crea trabajos

A fin de crear un trabajo, roles/dataflow.admin incluye el conjunto de permisos necesarios mínimos para ejecutar y examinar trabajos.

De manera alternativa, se requieren los siguientes permisos:

Ejemplo de asignación de función

Para ilustrar la utilidad de las diferentes funciones de Cloud Dataflow, considera el siguiente desglose:

  • El desarrollador que crea y examina trabajos necesitará la función roles/dataflow.admin.
  • Para una administración de permisos más sofisticada, el desarrollador que interactúe con el trabajo de Cloud Dataflow necesitará la función roles/dataflow.developer.
    • Necesitará roles/storage.objectAdmino una función relacionada a fin de habilitar por etapas los archivos requeridos.
    • Para la depuración y la comprobación de cuotas, se necesita la función roles/compute.viewer del proyecto.
    • A falta de otras asignaciones de funciones, esto le permitirá al desarrollador crear y cancelar trabajos de Cloud Dataflow, pero no interactuar con las VM individuales o acceder a otros servicios en la nube.
  • La cuenta de servicio del controlador necesita la función roles/dataflow.worker a fin de procesar datos para el servicio de Cloud Dataflow. Necesitará otras funciones (por ejemplo, roles/storage.objectAdmin) para acceder a los datos del trabajo.

Asigna funciones en Cloud Dataflow

Actualmente, las funciones de Cloud Dataflow en la nube se pueden establecer solo en organizaciones y proyectos.

Si quieres administrar funciones a nivel de la organización, consulta Control de acceso para las organizaciones que usan IAM.

Para establecer funciones a nivel de proyecto, consulta Control de acceso a través de Google Cloud Platform Console.

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Si necesitas ayuda, visita nuestra página de asistencia.