Identity and Access Management (IAM) te permite controlar el acceso de usuarios y grupos a los recursos de tu proyecto. En este documento, se describen los permisos de IAM relevantes para Serverless para Apache Spark y los roles de IAM que otorgan esos permisos.
Permisos de Serverless para Apache Spark
Los permisos de Serverless para Apache Spark permiten que los usuarios, incluidas las cuentas de servicio, realicen acciones en los recursos de Serverless para Apache Spark. Por ejemplo, el permiso dataproc.batches.create
te permite crear lotes de Serverless para Apache Spark 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 Serverless para Apache Spark. Las tablas se organizan según las APIs asociadas a cada recurso de Serverless para Apache Spark (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 Serverless para Apache Spark que se muestran en las siguientes tablas es el proyecto de Google Cloudcontenedor (alcance de cloud-platform
). Consulta Permisos de la cuenta de servicio.
Ejemplos:
dataproc.batches.create
permite la creación de lotes en el proyecto contenedor.dataproc.sessions.create
permite la creación de una sesión interactiva en el proyecto contenedor.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 permitirle obtener actualizaciones de estado de 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 de la herramienta de línea de comandos de gcloud
.
Permisos de la plantilla de tiempo 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 permitirle obtener actualizaciones de estado de 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 operaciones por lotes, dataproc.operations.cancel
también requiere el permiso dataproc.batches.cancel
.
Roles de Serverless para Apache Spark
Las funciones de IAM de Serverless para Apache Spark son un conjunto de uno o más permisos.
Debes otorgar roles a usuarios o grupos para permitirles realizar acciones en los recursos de Serverless para Apache Spark de tu proyecto. Por ejemplo, el rol 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 Serverless para Apache Spark en un proyecto.
En la siguiente tabla, se enumeran los roles de IAM de Serverless para Apache Spark y los permisos asociados con cada rol:
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 de Dataproc Batch se pueden agregar a roles personalizados a través de la consola de Google Cloud o la herramienta de línea de comandos degcloud
.
Cómo administrar las políticas de IAM
Puedes obtener y configurar políticas de IAM con la Google Cloud consola, la API de IAM o la herramienta de línea de comandos de gcloud
.
- Para la consola de Google Cloud , consultaControl de acceso con la consola de Google Cloud .
- Para la API, consulta Control de acceso a través de 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.