Control de acceso

Descripción general

BigQuery ML utiliza la administración de identidades y accesos (IAM) para administrar el acceso a los recursos del modelo. Para otorgar acceso a un recurso del modelo, asigna una o más funciones de IAM de BigQuery a un usuario, un grupo o una cuenta de servicio. Los permisos de BigQuery ML se incorporan a las funciones de IAM de BigQuery.

En esta página, se proporcionan detalles sobre los permisos y las funciones de Cloud Identity and Access Management de BigQuery ML. Para obtener más información sobre los controles de acceso en BigQuery, consulta la página Control de acceso de BigQuery.

Permisos de BigQuery ML

En la siguiente tabla, se describen los permisos disponibles en BigQuery ML.

Para obtener más información sobre las actualizaciones de BigQuery ML, consulta las notas de la versión.

Permiso Descripción
bigquery.models.create Crea modelos nuevos.
bigquery.models.delete Borra modelos.
bigquery.models.getData Obtiene datos del modelo. Para obtener metadatos del modelo, necesitas bigquery.models.getMetadata.
bigquery.models.getMetadata Obtiene metadatos del modelo. Para obtener datos del modelo, necesitas bigquery.models.getData.
bigquery.models.list Enumera modelos y metadatos en modelos.
bigquery.models.updateData Actualiza los datos del modelo. Para actualizar los metadatos del modelo, necesitas bigquery.models.updateMetadata.
bigquery.models.updateMetadata Actualiza los metadatos del modelo. Para actualizar los datos del modelo, necesitas bigquery.models.updateData.
bigquery.models.create y bigquery.models.getData Realiza operaciones de AA: ML.PREDICT, ML.WEIGHTS, ML.TRAINING_INFO y ML.FEATURE_INFO

Funciones

En la siguiente tabla, se detallan las funciones predefinidas de Cloud IAM de BigQuery con una lista correspondiente de todos los permisos que incluye cada función. Los permisos de BigQuery ML se detallan junto con los permisos de BigQuery. Ten en cuenta que cada permiso es aplicable a un tipo de recurso específico.

Función Título Descripción Permisos Recurso más bajo
roles/bigquery.admin Administrador de BigQuery Proporciona permisos para administrar todos los recursos dentro del proyecto. Puede administrar todos los datos dentro del proyecto y puede cancelar trabajos de otros usuarios que se ejecutan dentro del proyecto.
  • bigquery.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Proyecto
roles/bigquery.connectionAdmin Administrador de conexión de BigQuery Beta
  • bigquery.connections.*
roles/bigquery.connectionUser Usuario de conexión de BigQuery Beta
  • bigquery.connections.get
  • bigquery.connections.getIamPolicy
  • bigquery.connections.list
  • bigquery.connections.use
roles/bigquery.dataEditor Editor de datos de BigQuery

Cuando se aplica a un conjunto de datos, dataEditor proporciona permisos para lo siguiente:

  • Leer los metadatos del conjunto de datos y hacer una lista de las tablas del conjunto de datos.
  • Crear, actualizar, obtener y borrar las tablas del conjunto de datos

Cuando se aplica a nivel de proyecto o de la organización, esta función también puede crear nuevos conjuntos de datos.

  • bigquery.datasets.create
  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.datasets.updateTag
  • bigquery.models.*
  • bigquery.routines.*
  • bigquery.tables.create
  • bigquery.tables.delete
  • bigquery.tables.export
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.tables.list
  • bigquery.tables.update
  • bigquery.tables.updateData
  • bigquery.tables.updateTag
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Dataset
roles/bigquery.dataOwner Propietario de datos de BigQuery

Cuando se aplica a un conjunto de datos, dataOwner proporciona permisos para lo siguiente:

  • Leer, actualizar y borrar el conjunto de datos.
  • Crear, actualizar, obtener y borrar las tablas del conjunto de datos

Cuando se aplica a nivel del proyecto o de la organización, esta función también puede crear conjuntos de datos nuevos.

  • bigquery.datasets.*
  • bigquery.models.*
  • bigquery.routines.*
  • bigquery.tables.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Dataset
roles/bigquery.dataViewer Lector de datos de BigQuery

Cuando se aplica a un conjunto de datos, dataViewer proporciona permisos para lo siguiente:

  • Leer los metadatos del conjunto de datos y hacer una lista de las tablas del conjunto de datos.
  • Leer datos y metadatos de las tablas del conjunto de datos

Cuando se aplica a nivel del proyecto o de la organización, esta función también puede enumerar todos los conjuntos de datos en el proyecto. Sin embargo, se requieren funciones adicionales para permitir la ejecución de los trabajos.

  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.models.getData
  • bigquery.models.getMetadata
  • bigquery.models.list
  • bigquery.routines.get
  • bigquery.routines.list
  • bigquery.tables.export
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.tables.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Dataset
roles/bigquery.jobUser Usuario de trabajo de BigQuery Proporciona permisos para ejecutar trabajos, incluidas las consultas, dentro del proyecto. Esta función puede verificar la existencia de todos los trabajos, enumerar sus propios trabajos y cancelar sus propios trabajos.
  • bigquery.jobs.create
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Proyecto
roles/bigquery.metadataViewer Lector de metadatos de BigQuery

Cuando se aplica a nivel de proyecto o de la organización, metadataViewer proporciona permisos para lo siguiente:

  • Enumerar todos los conjuntos de datos y leer los metadatos de todos los conjuntos de datos del proyecto.
  • Listar todas las tablas y vistas, y leer los metadatos de todas las tablas y vistas del proyecto.

Se requieren funciones adicionales para permitir la ejecución de trabajos.

  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.models.getMetadata
  • bigquery.models.list
  • bigquery.routines.get
  • bigquery.routines.list
  • bigquery.tables.get
  • bigquery.tables.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Proyecto
roles/bigquery.readSessionUser Usuario de sesión de lectura de BigQuery Acceso para crear y usar sesiones de lectura
  • bigquery.readsessions.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/bigquery.resourceAdmin Administrador de recursos de BigQuery Beta Administra todos los recursos de BigQuery.
  • bigquery.bireservations.*
  • bigquery.capacityCommitments.*
  • bigquery.jobs.get
  • bigquery.jobs.list
  • bigquery.jobs.listAll
  • bigquery.reservationAssignments.*
  • bigquery.reservations.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/bigquery.user Usuario de BigQuery Proporciona permisos para ejecutar trabajos, incluidas las consultas, dentro del proyecto. La función de usuario puede enumerar sus propios trabajos, cancelar sus propios trabajos y enumerar conjuntos de datos dentro de un proyecto. Además, te permite crear conjuntos de datos nuevos dentro del proyecto; al creador se le otorga la función bigquery.dataOwner para estos conjuntos nuevos.
  • bigquery.bireservations.get
  • bigquery.capacityCommitments.get
  • bigquery.capacityCommitments.list
  • bigquery.config.get
  • bigquery.datasets.create
  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.jobs.create
  • bigquery.jobs.list
  • bigquery.models.list
  • bigquery.readsessions.*
  • bigquery.reservationAssignments.list
  • bigquery.reservationAssignments.search
  • bigquery.reservations.get
  • bigquery.reservations.list
  • bigquery.routines.list
  • bigquery.savedqueries.get
  • bigquery.savedqueries.list
  • bigquery.tables.list
  • bigquery.transfers.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Proyecto

Funciones personalizadas

Además de las funciones predefinidas, BigQuery ML también admite funciones personalizadas. Si deseas obtener más información, consulta Crea y administra funciones personalizadas en la documentación de Cloud IAM.

Los clientes que usaron funciones personalizadas con BigQuery ML deben tener en cuenta que los nuevos permisos están actualmente disponibles para su uso con BigQuery ML, pero no entrarán en vigor hasta el 6 de junio de 2019. Los clientes con funciones personalizadas deben migrar a estos permisos antes del 6 de junio. Este cambio no afecta a las funciones predefinidas de IAM ni a las funciones básicas.

Para obtener más información sobre las actualizaciones de BigQuery ML, consulta las notas de la versión.