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 enfoca en los permisos de IAM relevantes para Dataproc sin servidor y los roles de IAM que otorgan esos permisos.
Permisos de Dataproc Serverless
Los permisos de Dataproc sin servidores permiten que los usuarios, incluidas las cuentas de servicio, realicen acciones en los recursos de Dataproc sin servidores. Por ejemplo, el permiso dataproc.batches.create
te permite crear lotes de Dataproc Serverless 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 (métodos) de Dataproc sin servidor. Las tablas se organizan según las APIs asociadas a cada recurso de Dataproc Serverless (lotes, sesiones, sessionTemplates y operaciones). Para obtener una lista de los permisos de Google Cloud incluidos en cada rol, consulta Roles de Dataproc.
Alcance de los permisos: El alcance de los permisos de Dataproc sin servidor que se muestran en las siguientes tablas es el proyecto de Google Cloud en el que se otorgan (alcance de cloud-platform
). Consulta Permisos de la cuenta de servicio.
Ejemplos:
dataproc.batches.create
permite la creación de lotes en el proyecto que los contiene.dataproc.sessions.create
permite la creación de una sesión interactiva en el proyecto que lo contiene.dataproc.operations.list
permite mostrar una lista de detalles de las operaciones de Dataproc en el proyecto en el que se otorga.
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 poder obtener actualizaciones de estado de la herramienta de línea de comandos gcloud
.
Permisos de la 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 poder obtener actualizaciones de estado de la herramienta de línea de comandos gcloud
.
Permisos de la plantilla de entorno de ejecución de la sesión
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 poder obtener actualizaciones de estado de la herramienta de línea de comandos 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 operaciones por lotes, dataproc.operations.cancel
también requiere el permiso dataproc.batches.cancel
.
Roles de Dataproc sin servidores
Los roles de IAM de Dataproc Serverless son un paquete de uno o más permisos.
Debes otorgar roles a usuarios o grupos para permitirles realizar acciones en los recursos de Dataproc sin servidores de tu proyecto. Por ejemplo, el rol de Visualizador de Dataproc contiene los permisos de obtención y enumeración dataproc.batches
y dataproc.sessions
, que te permiten obtener y enumerar lotes y sesiones de Dataproc Serverless en un proyecto.
En la siguiente tabla, se enumeran las funciones de IAM sin servidores de Dataproc y los permisos asociados a 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.sessionTemplates.create dataproc.sessionTemplates.delete dataproc.sessionTemplates.get dataproc.sessionTemplates.list dataproc.sessionTemplates.update |
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.get dataproc.sessionTemplates.list dataproc.sessionTemplates.update |
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 roles personalizados a través de la consola de Google Cloud o la herramienta de línea de comandos de gcloud
.
Cómo administrar las políticas de IAM
Puedes obtener y configurar políticas de IAM con la consola de Google Cloud, la API de IAM o la herramienta de línea de comandos gcloud
.
- Para obtener información sobre la consola de Google Cloud, consulta Control de acceso a través de la consola de Google Cloud.
- Para la API, consulta Control de acceso con la API.
- Para la herramienta de línea de comandos de
gcloud
, consulta Control de acceso con la herramienta de línea de comandos de Google Cloud CLI.