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 de modelo, asigna una o más funciones de IAM a un usuario, grupo o cuenta de servicio. Los permisos de BigQuery ML se incorporan en las funciones de IAM.

En esta página, se proporcionan detalles sobre las funciones y los permisos de IAM 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 enumeran las funciones predefinidas de IAM de BigQuery con la lista correspondiente de todos los permisos que se incluyen en 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 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 una tabla o vista, esta función proporciona permisos para lo siguiente:

  • Leer y actualizar los datos y metadatos de la tabla o vista
  • Borrar la tabla o vista

Esta función no se puede aplicar a modelos ni rutinas individuales.

Cuando se aplica a un conjunto de datos, esta función proporciona permisos para lo siguiente:

  • Leer los metadatos del conjunto de datos y enumerar las tablas en 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.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.getIamPolicy
  • bigquery.tables.list
  • bigquery.tables.update
  • bigquery.tables.updateData
  • bigquery.tables.updateTag
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Tabla o vista
roles/bigquery.dataOwner Propietario de datos de BigQuery

Cuando se aplica a una tabla o vista, esta función proporciona permisos para lo siguiente:

  • Leer y actualizar los datos y metadatos de la tabla o vista
  • Compartir la tabla o vista
  • Borrar la tabla o vista

Esta función no se puede aplicar a modelos ni rutinas individuales.

Cuando se aplica a un conjunto de datos, esta función 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
Tabla o vista
roles/bigquery.dataViewer Visualizador de datos de BigQuery

Cuando se aplica a una tabla o vista, esta función proporciona permisos para lo siguiente:

  • Leer datos y metadatos de la tabla o vista

Esta función no se puede aplicar a modelos ni rutinas individuales.

Cuando se aplica a un conjunto de datos, esta función proporciona permisos para lo siguiente:

  • Leer los metadatos del conjunto de datos y enumerar las tablas en el 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.export
  • 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.getIamPolicy
  • bigquery.tables.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Tabla o vista
roles/bigquery.jobUser Usuario de trabajo de BigQuery Proporciona permisos para ejecutar trabajos, incluidas las consultas, dentro del proyecto.
  • bigquery.jobs.create
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Proyecto
roles/bigquery.metadataViewer Visualizador de metadatos de BigQuery

Cuando se aplica a una tabla o vista, esta función proporciona permisos para lo siguiente:

  • Leer metadatos de la tabla o vista

Esta función no se puede aplicar a modelos ni rutinas individuales.

Cuando se aplica a un conjunto de datos, esta función proporciona permisos para lo siguiente:

  • Enumerar tablas y vistas en el conjunto de datos
  • Leer los metadatos de las tablas y vistas del conjunto de datos

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

  • Enumerar todos los conjuntos de datos y leer los metadatos de todos los conjuntos de datos del proyecto
  • Enumerar 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.getIamPolicy
  • bigquery.tables.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Tabla o vista
roles/bigquery.readSessionUser Usuario de sesión de lectura de BigQuery Otorga 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.resourceEditor Editor de recursos de BigQuery Beta Tiene permiso para administrar todos los recursos de BigQuery, pero no puede tomar decisiones de compra.
  • bigquery.bireservations.get
  • bigquery.capacityCommitments.get
  • bigquery.capacityCommitments.list
  • bigquery.jobs.get
  • bigquery.jobs.list
  • bigquery.jobs.listAll
  • bigquery.reservationAssignments.*
  • bigquery.reservations.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/bigquery.resourceViewer Visualizador de recursos de BigQuery Beta Tiene permiso para visualizar todos los recursos de BigQuery, pero no puede realizar cambios o tomar decisiones de compra.
  • bigquery.bireservations.get
  • bigquery.capacityCommitments.get
  • bigquery.capacityCommitments.list
  • bigquery.jobs.get
  • bigquery.jobs.list
  • bigquery.jobs.listAll
  • bigquery.reservationAssignments.list
  • bigquery.reservationAssignments.search
  • bigquery.reservations.get
  • bigquery.reservations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/bigquery.user Usuario de BigQuery

Cuando se aplica a un conjunto de datos, esta función permite leer los metadatos del conjunto de datos y enumerar las tablas en el conjunto de datos.

Cuando se aplica a un proyecto, esta función también permite ejecutar trabajos, incluidas las consultas, dentro del proyecto. Un miembro con esta función puede enumerar y cancelar sus propios trabajos y enumerar conjuntos de datos dentro de un proyecto. Además, permite la creación de nuevos conjuntos de datos dentro del proyecto. Al creador se le otorga la función de propietario de datos de BigQuery (roles/bigquery.dataOwner) en estos conjuntos de datos 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
Conjunto de datos

Funciones personalizadas

Además de las funciones predefinidas, BigQuery ML también admite funciones personalizadas. Para obtener más información, consulta Crea y administra funciones personalizadas en la documentación de 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 de 2019. 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.