Permisos y roles de IAM de Dataproc Serverless

Descripción general

La administración de identidades y accesos (IAM) te permite controlar el acceso de usuarios y grupos a los recursos de tu proyecto. Este documento se centra en los permisos de IAM correspondientes a Dataproc Serverless y las funciones de IAM que otorgan esos permisos.

Permisos de Dataproc Serverless

Los permisos sin servidores de Dataproc permiten que los usuarios, incluidas las cuentas de servicio, realicen acciones en los recursos de Dataproc Serverless. Por ejemplo, el permiso dataproc.batches.create te permite crear lotes sin servidores de Dataproc en tu proyecto. No se otorgan permisos a los usuarios directamente, sino funciones, que incluyen uno o más permisos.

En las siguientes tablas, se enumeran los permisos necesarios para llamar a las APIs sin servidores de Dataproc (métodos). Las tablas se organizan según las APIs asociadas con cada recurso de Dataproc Serverless (lotes, sesiones, sessionTemplates y operaciones). Para obtener una lista de los permisos de Google Cloud incluidos en cada función, consulta Funciones de Dataproc.

Alcance de los permisos: El alcance de los permisos de Dataproc Serverless que se enumeran en las siguientes tablas es el proyecto de Google Cloud que los contiene (alcance cloud-platform). Consulta Permisos de cuenta de servicio.

Ejemplos:

  • dataproc.batches.create permite la creación de lotes en el proyecto que los contiene.
  • dataproc.sessions.create permite crear una sesión interactiva en el proyecto contenedor.
  • dataproc.operations.list permite la lista de detalles de las operaciones de Dataproc en el proyecto contenedor.

Permisos por lotes

Método Permisos necesarios
projects.locations.batches.create dataproc.batches.create 1
projects.locations.batches.delete dataproc.batches.delete
projects.locations.batches.get dataproc.batches.get
projects.locations.batches.list dataproc.batches.list
  1. dataproc.batches.create también requiere los permisos dataproc.batches.get y dataproc.operations.get para permitir que obtenga actualizaciones de estado desde la herramienta de línea de comandos de gcloud.

Permisos de sesión

Método Permisos necesarios
projects.locations.sessions.create dataproc.sessions.create 1
projects.locations.sessions.delete dataproc.sessions.delete
projects.locations.sessions.get dataproc.sessions.get
projects.locations.sessions.list dataproc.sessions.list
projects.locations.sessions.terminate dataproc.sessions.terminate

1 dataproc.sessions.create también requiere los permisos dataproc.sessions.get y dataproc.operations.get para permitirle obtener actualizaciones de estado desde la herramienta de línea de comandos de gcloud.

Permisos de plantillas de entorno de ejecución de sesiones

Método Permisos necesarios
projects.locations.sessionTemplates.create dataproc.sessionTemplates.create 1
projects.locations.sessionTemplates.delete dataproc.sessionTemplates.delete
projects.locations.sessionTemplates.get dataproc.sessionTemplates.get
projects.locations.sessionTemplates.list dataproc.sessionTemplates.list
projects.locations.sessionTemplates.update dataproc.sessionTemplates.update
  1. dataproc.sessionTemplates.create también requiere los permisos dataproc.sessionTemplates.get y dataproc.operations.get para permitir que obtenga actualizaciones de estado desde la herramienta de línea de comandos de gcloud.

Permisos de operaciones

Método Permisos necesarios
projects.regions.operations.get dataproc.operations.get
projects.regions.operations.list dataproc.operations.list
projects.regions.operations.cancel 1 dataproc.operations.cancel
projects.regions.operations.delete dataproc.operations.delete
projects.regions.operations.getIamPolicy dataproc.operations.getIamPolicy
projects.regions.operations.setIamPolicy dataproc.operations.setIamPolicy
  1. Para cancelar las operaciones por lotes, dataproc.operations.cancel también requiere el permiso dataproc.batches.cancel.

Funciones de Dataproc Serverless

Las funciones de IAM sin servidores de Dataproc son un paquete de uno o más permisos. Otorga funciones a usuarios o grupos para permitirles realizar acciones en los recursos de Dataproc Serverless en tu proyecto. Por ejemplo, la función Visualizador de Dataproc contiene los permisos de obtención y enumeración dataproc.batches y dataproc.sessions, que te permiten obtener y enumerar los lotes y las sesiones de Dataproc Serverless en un proyecto.

En la siguiente tabla, se enumeran las funciones de IAM sin servidores de Dataproc Serverless y los permisos asociados con cada función:

ID de función Permisos
roles/dataproc.admin dataproc.batches.cancel
dataproc.batches.create
dataproc.batches.delete
dataproc.batches.get
dataproc.batches.list
dataproc.batches.cancel
dataproc.sessions.create
dataproc.sessions.delete
dataproc.sessions.get
dataproc.sessions.list
dataproc.sessions.terminate
dataproc.session.sessionTemplate.create
dataproc.sessionssessionTemplate.delete
dataproc.sessionTemplate.delete

roles/dataproc.editor dataproc.batches.cancel
dataproc.batches.create
dataproc.batches.delete
dataproc.batches.get
dataproc.batches.list
dataproc.sessions.create
dataproc.sessions.delete
dataproc.sessions.get
dataproc.sessions.list
dataproc.sessions.terminate
dataproc.sessionTemplates.create
dataproc.sessionTemplates.delete
dataproc.sessionTemplates.

roles/dataproc.viewer dataproc.batches.get
dataproc.batches.list
dataproc.sessions.get
dataproc.sessions.list
dataproc.sessionTemplates.get
dataproc.sessionTemplates.list

Funciones de proyecto

También puedes establecer permisos a nivel del proyecto mediante las funciones de Proyecto de IAM. Aquí hay un resumen de los permisos asociados con las funciones de proyecto de IAM:

Función de proyecto Permisos
Visualizador del proyecto Todos los permisos de proyecto para acciones de solo lectura que conservan el estado (obtener y enumerar)
Editor de proyecto Todos los permisos de Lector del proyecto más todos los permisos del proyecto para acciones que modifican el estado (crear, borrar, actualizar, usar, detener y empezar)
Propietario del proyecto Todos los permisos de Editor del proyecto más los permisos para administrar el control de acceso del proyecto (obtener/configurar IamPolicy) y para configurar la facturación del proyecto

Roles personalizados

Los permisos por lotes de Dataproc se pueden agregar a las funciones personalizadas a través de la consola de Google Cloud o la herramienta de línea de comandos de gcloud.

Administración de IAM

Puedes obtener y establecer políticas de IAM con la consola de Google Cloud, la API de IAM o la herramienta de línea de comandos de gcloud.

¿Qué sigue?