IAM de Data Catalog

En este documento, se describen los roles de Identity and Access Management (IAM) que permiten que los usuarios usen Data Catalog para buscar y etiquetar Google Cloud de Google Cloud.

Terminología de IAM

Permisos
Se verifica durante el tiempo de ejecución para permitir que los usuarios realicen una operación o accedan a un recurso de Google Cloud. A los usuarios no se les otorgan permisos directamente, sino que se les otorgan funciones que contienen permisos.
Funciones
Una función es una colección predefinida de permisos. Roles personalizados, que consisten de una colección personalizada de permisos.

Visualiza los roles de Data Catalog

En la consola de Google Cloud, sigue estos pasos:

  1. Dirígete a la pestaña IAM y Administrador > Roles.

    Ir a Funciones

  2. En el campo Filtro, selecciona Se usa en, escribe Data Catalog o Data Lineage, y haz clic en Intro.

  3. Haz clic en un rol para ver sus permisos en el panel de la derecha.

    Por ejemplo, el rol Administrador de Data Catalog tiene acceso completo a todos Recursos de Data Catalog.

Roles predefinidos de Data Catalog

Algunos roles predefinidos de Data Catalog incluyen el de Administrador, visualizador de Data Catalog y creador de TagTemplate de Data Catalog. Algunos de estos roles se describen en las secciones posteriores.

Para obtener una lista y una descripción de los roles predefinidos de Data Catalog y los permisos asociados con cada rol, consulta Roles de Data Catalog.

Rol Administrador de Data Catalog

El rol roles/datacatalog.admin tiene acceso a todos los Recursos de Data Catalog. Un administrador de Data Catalog Agregar diferentes tipos de usuarios a un proyecto de Data Catalog

Rol de administrador de datos de DataCatalog

El rol roles/datacatalog.dataSteward te permite agregar, editar o borrar los administradores de datos y la descripción general de texto enriquecido para una entrada de datos, como una en la tabla de BigQuery.

Función de visualizador de Data Catalog

Para simplificar el acceso a los recursos de Google Cloud, Data Catalog proporciona el rol roles/datacatalog.viewer con permiso de lectura de metadatos para todos los recursos catalogados de Google Cloud.

Este rol también otorga los permisos para ver la etiqueta de Data Catalog plantillas y etiquetas.

Otorga el rol de visualizador de Data Catalog en tu proyecto para permitir a los usuarios para ver recursos de Google Cloud en Data Catalog.

Función de creador de TagTemplate de Data Catalog.

El rol roles/datacatalog.tagTemplateCreator permite a los usuarios crear plantillas de etiquetas.

Rol de administrador de búsqueda de Data Catalog

El rol roles/datacatalog.searchAdmin permite a los usuarios recuperar, a través de la búsqueda, todos los recursos catalogados de Google Cloud dentro de un proyecto o una organización.

Rol de administrador de la configuración de migración de Data Catalog

El rol roles/datacatalog.migrationConfigAdmin permite que los usuarios establezcan y recuperen configuración relacionada con la migración de recursos Data Catalog en Dataplex Catalog

Roles predefinidos del linaje de datos

Para acceder al gráfico de linaje de cualquier entrada de Data Catalog, el usuario necesita acceso a la entrada en Data Catalog. Para acceder a la una entrada de Data Catalog, el usuario necesita un rol de visualizador en la recurso del sistema o Visualizador de Data Catalog (roles/datacatalog.viewer) en el proyecto que almacena Entrada de Data Catalog En esta sección, se describen los roles necesarios ver y manipular el gráfico de linaje.

Rol de visualizador de linaje

El Visualizador de linaje de datos (roles/datalineage.viewer) permite que los usuarios vean Dataplex gráficos de linaje en la consola de Google Cloud y leer información de linaje con la API de Data Lineage. El ejecuciones, y los eventos para un proceso determinado se almacenan en el mismo proyecto que el el proceso de administración de recursos. En el caso del linaje automatizado, el proceso, las ejecuciones y los eventos se almacenan en el proyecto en el que el trabajo que generó el linaje se en ejecución. Podría ser, por ejemplo, el proyecto en el que se creó un trabajo de BigQuery en ejecución.

Necesitas distintos roles para ver el linaje entre los recursos y los metadatos de los recursos en el gráfico. Para lo primero, necesitas Data Lineage Viewer (roles/datalineage.viewer). Para la segunda, necesitas los mismos roles que se usan a fin de acceder a las entradas de metadatos en Data Catalog. Las siguientes dos subsecciones proporcionan más detalles.

Roles para ver el linaje entre dos recursos

Para ver el linaje entre los recursos del gráfico de linaje, el usuario necesita Data Lineage Viewer (roles/datalineage.viewer) en los siguientes proyectos:

  • El proyecto desde el que el usuario ve el linaje (conocido como proyecto activo), es decir, el proyecto del menú desplegable en la parte superior de la consola de Google Cloud o el proyecto desde el que se realizan las llamadas a la API. Por lo general, este sería el proyecto de recursos de Data Catalog.
  • Los proyectos en los que se registra el linaje (conocidos como proyecto de procesamiento). El linaje se almacena en el proyecto en el que se ejecutó el proceso correspondiente, como se describió anteriormente. Este proyecto puede ser diferente del que almacena el recurso para el que el usuario ve el linaje.

Si quieres obtener más información para otorgar roles, consulta Administra el acceso. Es posible que también puedas obtener los permisos necesarios a través de los roles personalizados o bien otros roles predefinidos.

Según el caso de uso,es posible que debas otorgar Visualizador de linaje de datos (roles/datalineage.viewer) a nivel de la organización o la carpeta para asegurarte de que se garantice que el usuario acceda al gráfico del linaje completo (consulta Otorga o revoca un solo rol). Los roles necesarios para el linaje de datos se pueden otorgar solo a través de Google Cloud CLI.

Roles para ver los metadatos de los recursos en el gráfico de linaje

Cuando los metadatos sobre un recurso del gráfico se almacenan en Data Catalog, el usuario solo puede verlos si tiene un rol de visualizador en el recurso del sistema o visualizador de Data Catalog (roles/datacatalog.viewer) correspondiente en el proyecto en el que se almacena la entrada de Data Catalog. El acceso a los metadatos de los activos en el gráfico es independiente del acceso al linaje. Es posible que el usuario tenga acceso a los recursos del grafo con los roles de visualizador adecuados, pero no pueda acceder al linaje entre ellos. Esto ocurre cuando el usuario no tiene el Visualizador de linaje de datos (roles/datalineage.viewer) en el proyecto en el que se registró el linaje. En este caso, la API y la IU de Data Lineage no mostrarán el linaje ni mostrarán ningún error para evitar filtrar información sobre la existencia del linaje. Por lo tanto, la ausencia de linaje para un recurso no significa que no haya linaje para ese recurso. Es posible que el usuario no tenga acceso a ese linaje.

Rol de productor de eventos de linaje de datos

El rol roles/datalineage.producer permite a los usuarios registrar el linaje de forma manual con la API de Data Lineage.

Rol de editor de linaje de datos

El rol roles/datalineage.editor permite a los usuarios modificar el linaje de forma manual con la API de Data Lineage.

Rol de administrador de linaje de datos

El rol roles/datalineage.admin permite a los usuarios realizar todas las operaciones de linaje que se indican en esta sección.

Roles para ver las etiquetas públicas y privadas

Puedes buscar etiquetas públicas mediante una búsqueda simple. Puedes ver una entrada de datos, incluidas sus etiquetas públicas, siempre que tengas los permisos necesarios para ver los datos entrada. No se requieren permisos adicionales en la plantilla de la etiqueta. Para los permisos necesarios para ver la entrada de datos, consulta la tabla de esta sección.

Sin embargo, te recomendamos que también otorgues datacatalog.tagTemplates.get. permiso a los usuarios que se espera que busquen estas etiquetas públicas. Esta permite a los usuarios usar también el predicado de búsqueda tag: o el faceta de búsqueda de plantilla de etiqueta en la página de búsqueda de Data Catalog.

Para las etiquetas privadas, necesitas permisos de lectura tanto en la plantilla de etiqueta como en para buscar la etiqueta y verla en la página de detalles de la entrada. Los usuarios deben usar el predicado de búsqueda tag: o la faceta de búsqueda de la plantilla de etiqueta. encontrar las etiquetas; no se admite la búsqueda simple de etiquetas privadas.

Notas:

  • El permiso de lectura necesario en la plantilla de etiqueta privada es datacatalog.tagTemplates.getTag.

  • Los permisos de lectura en la entrada de datos para las etiquetas públicas y privadas se incluye en la siguiente tabla.

Recurso Permiso Función
Conjuntos de datos, tablas, modelos, rutinas y conexiones de BigQuery bigquery.datasets.get
bigquery.tables.get
bigquery.models.getMetadata
bigquery.routines.get
bigquery.connections.get
roles/datacatalog.tagTemplateViewer
roles/bigquery.metadataViewer
roles/bigquery.connectionUser
Temas de Pub/Sub pubsub.topics.get roles/datacatalog.tagTemplateViewer
roles/pubsub.viewer
Instancias, bases de datos, tablas y vistas de Spanner Instance: spanner.instances.get
Database:spanner.databases.get
Table: spanner.databases.get
Views: spanner.databases.get
datacatalog.tagTemplates.getTag
No hay roles predefinidos disponibles.
Instancias y tablas de Bigtable bigtable.instances.get
bigtable.tables.get
datacatalog.tagTemplates.getTag
roles/datacatalog.tagTemplateViewer
roles/bigtable.viewer
Servicios, base de datos y tablas de Dataproc Metastore metastore.tables.get
metastore.databases.get
metastore.services.get
roles/datacatalog.tagTemplateViewer
roles/metastore.metadataViewer
Entradas personalizadas datacatalog.entries.get No hay roles predefinidos disponibles.

Roles para buscar recursos de Google Cloud

Antes de buscar, descubrir o mostrar recursos de Google Cloud, Data Catalog comprueba que el usuario tenga asignada una función de IAM con los permisos de lectura de metadatos requeridos por BigQuery, Pub/Sub, Dataproc Metastore o algún otro sistema de origen para acceder al recurso.

Ejemplo: Data Catalog verifica que se haya otorgado al usuario una función con bigquery.tables.get permission antes de mostrar los metadatos de la tabla BigQuery.

En la siguiente tabla, se enumeran los permisos y los roles asociados necesarios para que un usuario usar Data Catalog para buscar en los recursos enumerados de Google Cloud de Google Cloud.

Recurso Permiso Función
Conjuntos de datos, tablas, modelos, rutinas y conexiones de BigQuery bigquery.datasets.get
bigquery.tables.get
bigquery.models.getMetadata
bigquery.routines.get
bigquery.connections.get
roles/bigquery.metadataViewer
roles/bigquery.connectionUser
Consulta también el rol Visualizador de Data Catalog
Temas de Pub/Sub pubsub.topics.get roles/pubsub.viewer
Consulta también el rol de visualizador de Data Catalog
Tablas y bases de datos de Spanner Instancia: spanner.instances.get
Base de datos: spanner.databases.get
Vistas: spanner.databases.get
No hay roles predefinidos disponibles.
Instancias y tablas de Bigtable bigtable.instances.get
bigtable.tables.get
roles/bigtable.viewer
Consulta también el rol de visualizador de Data Catalog
Lakes, zonas, tablas y conjuntos de archivos de Dataplex dataplex.lakes.get
dataplex.zones.get
dataplex.entities.get
dataplex.entities.get
No hay roles predefinidos disponibles.
Servicios, base de datos y tablas de Dataproc Metastore metastore.tables.get
metastore.databases.get
metastore.services.get
roles/metastore.metadataViewer

Roles para adjuntar etiquetas a los recursos de Google Cloud

Se requieren los mismos permisos para adjuntar etiquetas públicas y privadas a los recursos de Google Cloud.

Data Catalog permite a los usuarios extender los metadatos en Google Cloud. recursos adjuntando etiquetas. Se definieron una o más etiquetas que se pueden adjuntar a un recurso en una plantilla de etiqueta.

Cuando un usuario intenta usar la plantilla de etiqueta para adjuntar una etiqueta a una recurso de Google Cloud, Data Catalog verifica que el usuario tenga los permisos necesarios para usar la plantilla de etiqueta y actualizar el recurso metadatos. Los permisos se otorgan a través de los roles de IAM, como se muestra en la siguiente tabla.

La siguiente tabla muestra los permisos y los roles asociados necesarios para un usuario debe usar Data Catalog para adjuntar etiquetas públicas y privadas a los recursos enumerados de Google Cloud.

Cada fila de la siguiente tabla enumera los permisos necesarios para etiquetar recursos. Las funciones correspondientes pueden otorgar permisos adicionales. Haga clic en cada función para ver todos los permisos asociados.

Notas:

  • El propietario de una entrada de datos tiene el permiso datacatalog.entries.updateTag de forma predeterminada. A todos los demás usuarios se les debe otorgar el rol datacatalog.tagEditor.

  • El permiso datacatalog.tagTemplates.use también es obligatorio para todos de recursos enumerados en la tabla.

Recurso Permisos Rol
Conjuntos de datos, tablas,
modelos, rutinas y
conexiones de BigQuery
bigquery.datasets.updateTag
bigquery.tables.updateTag
bigquery.models.updateTag
bigquery.routines.updateTag
bigquery.connections.updateTag
roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/bigquery.dataEditor
Temas de Pub/Sub pubsub.topics.updateTag roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/pubsub.editor
Tablas y bases de datos de Spanner Instancia: spanner.instances.UpdateTag
Base de datos: spanner.databases.UpdateTag
Tabla: spanner.databases.UpdateTag
Vistas:spanner.databases.UpdateTag
No hay roles predefinidos disponibles.
Instancias y tablas de Bigtable bigtable.instances.update
bigtable.tables.update
roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/bigtable.admin
Lakes, zonas, tablas y conjuntos de archivos de Dataplex dataplex.lakes.update
dataplex.zones.update
dataplex.entities.update
dataplex.entities.update
No hay roles predefinidos disponibles.
Servicios, base de datos y tablas de Dataproc Metastore metastore.tables.update
metastore.databases.update
metastore.services.update
roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/metastore.editor
roles/metastore.metadataEditor

Roles personalizados para los recursos de Google Cloud

Los roles de editor predefinidos para entradas de datos de otros sistemas de Google Cloud pueden proporcionar un acceso de escritura más amplio del necesario. Usa Roles personalizados para especificar permisos *.updateTag solo en un recurso de Google Cloud

Roles para modificar la descripción general de texto enriquecido y los administradores de datos en Data Catalog

Los usuarios necesitan los siguientes roles para adjuntar una descripción general de texto enriquecido y asignar datos administradores a las entradas de Data Catalog:

Recurso Permisos Rol
Proyectos de Google Cloud datacatalog.entries.updateOverview
datacatalog.entries.updateContacts
roles/datacatalog.dataSteward

Roles para modificar la configuración de migración en Data Catalog

Los usuarios necesitan los siguientes roles para establecer y recuperar la configuración relacionada con la migración de Data Catalog a Dataplex:

Recurso Permisos Rol
Proyectos y organizaciones de Google Cloud datacatalog.migrationConfig.set
datacatalog.migrationConfig.get
roles/datacatalog.migrationConfigAdmin

Federación de identidades en Data Catalog

La federación de identidades te permite usar un proveedor de identidad (IdP) externo para autenticar y autorizar usuarios a los servicios de Google Cloud con IAM.

Data Catalog admite la federación de identidades con lo siguiente: limitaciones:

Más información