IAM do Data Catalog

Este documento descreve os papéis do Identity and Access Management (IAM) que permitem os usuários a usar o Data Catalog para pesquisar e incluir tags no Google Cloud do Google Cloud.

Terminologia do IAM

Permissões
Verificado no momento da execução para permitir que os usuários realizem uma operação ou acesso um recurso do Google Cloud. Os usuários não recebem permissões diretamente, mas recebem papeis que contêm permissões.
Papel
Uma função é um conjunto predefinido de permissões. Papéis personalizados que consistem em de um conjunto personalizado de permissões também são permitidos.

Ver papéis do Data Catalog

No console do Google Cloud, siga estas etapas:

  1. Acesse a página IAM e Administrador > Papéis.

    Acessar "Papéis"

  2. No campo Filtro, selecione Usado em, digite Data Catalog ou Data Lineage e clique em Enter.

  3. Clique em um papel para visualizar as permissões dele no painel à direita.

    Por exemplo, o papel Administrador do Data Catalog tem acesso total aos recursos do Data Catalog.

Papéis predefinidos do Data Catalog

Alguns papéis predefinidos do Data Catalog incluem o Administrador, Leitor do Data Catalog e Criador de TagTemplate do Data Catalog. Alguns desses são descritos nas próximas seções.

Para uma lista com uma descrição dos papéis predefinidos do Data Catalog e as permissões associadas a cada um deles, consulte Papéis do Data Catalog.

Papel Administrador do Data Catalog

O papel roles/datacatalog.admin tem acesso a todos os aos recursos do Data Catalog. Um administrador do Data Catalog pode adicionar diferentes tipos de usuários a um projeto do Data Catalog.

Papel de administrador de dados do DataCatalog

O papel roles/datacatalog.dataSteward permite adicionar, editar ou excluir os gestores de dados e a visão geral de rich text para uma entrada de dados, como um Tabela do BigQuery.

Papel do Visualizador do Data Catalog

Para simplificar o acesso aos recursos do Google Cloud, O Data Catalog oferece o papel roles/datacatalog.viewer permissão de leitura de metadados para todos os recursos catalogados do Google Cloud.

Esse papel também concede as permissões para visualizar a tag do Data Catalog modelos e tags.

Conceda o papel Leitor do Data Catalog em seu projeto para permitir que os usuários para visualizar os recursos do Google Cloud no Data Catalog.

Função criador de catálogo de dados do TagTemplate

O papel roles/datacatalog.tagTemplateCreator permite que os usuários criem modelos de tag.

Papel Administrador de pesquisa do DataCatalog

O papel roles/datacatalog.searchAdmin permite que os usuários recuperem, por meio de pesquisa, todos os recursos catalogados do Google Cloud em um projeto ou organização.

Papel Administrador de configuração de migração do DataCatalog

O papel roles/datacatalog.migrationConfigAdmin permite que os usuários definam e recuperem da configuração relacionada à migração de recursos de Data Catalog para o Catálogo do Dataplex.

Papéis de linhagem de dados predefinidos

Para acessar o gráfico de linhagem de qualquer entrada do Data Catalog, o usuário precisa o acesso à entrada no Data Catalog. Para acessar entrada no Data Catalog, o usuário precisa ter o papel de leitor nos registros recurso do sistema ou Leitor do Data Catalog (roles/datacatalog.viewer) no projeto que armazena o Entrada do Data Catalog. Nesta seção, descrevemos os papéis necessários para visualizar e manipular o gráfico de linhagem.

Papel de leitor de linhagem

O Leitor da linhagem de dados (roles/datalineage.viewer) permite que os usuários visualizem o Dataplex gráficos de linhagem no console do Google Cloud e ler informações de linhagem usando a API Data Lineage. O é executado, e os eventos de um determinado processo são todos armazenados no mesmo projeto que o de desenvolvimento de software. No caso da linhagem automatizada, o processo, as execuções e os eventos são armazenadas no projeto em que o trabalho que gerou a linhagem foi em execução. Pode ser, por exemplo, o projeto em que um job do BigQuery foi em execução.

Você precisa de papéis diferentes para ver a linhagem entre recursos no gráfico e os metadados deles no gráfico. Para o primeiro, você precisa do Leitor de linhagem de dados (roles/datalineage.viewer). No segundo caso, você precisa dos mesmos papéis usados para acessar as entradas de metadados no Data Catalog. As duas subseções a seguir fornecem mais detalhes.

Papéis para consultar a linhagem entre dois recursos

Para acessar a linhagem entre os recursos no gráfico de linhagem, o usuário precisa do Leitor de linhagem de dados (roles/datalineage.viewer) nos seguintes projetos:

  • O projeto em que o usuário está visualizando a linhagem (conhecido como projeto ativo), que é o projeto no menu suspenso na parte superior do console do Google Cloud ou o projeto em que as chamadas de API são feitas. Geralmente, é o projeto de recursos do Data Catalog.
  • Os projetos em que a linhagem é registrada (conhecidos como projeto de computação). A linhagem é armazenada no projeto em que o processo correspondente foi executado, conforme descrito acima. Esse projeto pode ser diferente daquele que armazena o recurso para o qual o usuário está visualizando a linhagem.

Para mais informações sobre como conceder papéis, consulte Gerenciar acesso. Também é possível receber as permissões necessárias com papéis personalizados ou outros papéis predefinidos.

Dependendo do caso de uso,é necessário conceder o papel Leitor de linhagem de dados (roles/datalineage.viewer) no nível da pasta ou da organização para garantir que um usuário tenha acesso ao gráfico de linhagem completo. Consulte Conceder ou revogar um único papel. Os papéis necessários para a linhagem de dados só podem ser concedidos pela Google Cloud CLI.

Papéis para ler metadados de recursos no gráfico de linhagem

Quando metadados sobre um recurso no gráfico são armazenados no Data Catalog, o usuário só consegue visualizá-los se tiver um papel de leitor no recurso do sistema ou no Leitor do Data Catalog (roles/datacatalog.viewer) correspondente no projeto em que a entrada do Data Catalog está armazenada. O acesso aos metadados de recursos no gráfico é independente do acesso à linhagem. É possível que o usuário tenha acesso aos recursos no gráfico por meio dos papéis de leitor apropriados, mas não possa acessar a linhagem entre eles. Isso acontece quando o usuário não tem o Leitor de linhagem de dados (roles/datalineage.viewer) no projeto em que a linhagem foi registrada. Nesse caso, a API Data Lineage e UI não vão mostrar a linhagem nem retornar erros, para evitar o vazamento de informações sobre a existência da linhagem. Portanto, a ausência de linhagem para um recurso não significa que não há linhagem para ele. O usuário pode não ter acesso a essa linhagem.

Papel de produtor de eventos de linhagem de dados

O papel roles/datalineage.producer permite que os usuários registrem a linhagem manualmente informações usando a API Data Lineage.

Papel "Editor de linhagem de dados"

O papel roles/datalineage.editor permite que os usuários modifiquem manualmente a linhagem informações usando a API Data Lineage.

Papel de Administrador da linhagem de dados

O papel roles/datalineage.admin permite que os usuários executem todas as operações de linhagem listados nesta seção.

Papéis para visualizar tags públicas e particulares

Você pode pesquisar tags públicas usando a pesquisa simples. É possível exibir uma entrada de dados, incluindo suas tags públicas, desde que você tenha as permissões necessárias para exibir os dados entrada. Nenhuma outra permissão no modelo de tag é necessária. Para permissões necessárias para exibir a entrada de dados, consulte a tabela nesta seção.

No entanto, recomendamos também conceder a datacatalog.tagTemplates.get permissão aos usuários que devem procurar essas tags públicas. Isso permite que os usuários também usem o predicado de pesquisa tag: ou o atributo de pesquisa do modelo de tag na página de pesquisa do Data Catalog.

Para tags particulares, você precisa de permissões de leitura no modelo de tag e no entrada de dados para pesquisar a tag e vê-la na página de detalhes da entrada. Os usuários precisam usar o predicado de pesquisa tag: ou o atributo de pesquisa do modelo de tag. para encontrar as tags. não há suporte para a pesquisa simples de tags privadas.

Observações:

  • A permissão de visualização necessária no modelo de tag particular é datacatalog.tagTemplates.getTag:

  • As permissões de visualização na entrada de dados para tags públicas e privadas está incluído na tabela a seguir.

Recurso Permissão Papel
Conjuntos de dados, tabelas, modelos, rotinas e conexões do 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
Tópicos do Pub/Sub pubsub.topics.get roles/datacatalog.tagTemplateViewer
roles/pubsub.viewer
Instâncias, bancos de dados, tabelas e visualizações do Spanner Instance: spanner.instances.get
Database:spanner.databases.get
Table: spanner.databases.get
Views: spanner.databases.get
datacatalog.tagTemplates.getTag
Não há papéis predefinidos disponíveis.
Instâncias e tabelas do Bigtable bigtable.instances.get
bigtable.tables.get
datacatalog.tagTemplates.getTag
roles/datacatalog.tagTemplateViewer
roles/bigtable.viewer
Serviços, bancos de dados e tabelas do Dataproc Metastore metastore.tables.get
metastore.databases.get
metastore.services.get
roles/datacatalog.tagTemplateViewer
roles/metastore.metadataViewer
Entradas personalizadas datacatalog.entries.get Não há papéis predefinidos disponíveis.

Papéis para pesquisar recursos do Google Cloud

Antes de pesquisar, descobrir ou exibir recursos do Google Cloud, o Data Catalog verifica se o usuário recebeu uma função do IAM com as permissões de leitura de metadados exigidas pelo BigQuery, o Pub/Sub, o Dataproc Metastore ou outro sistema de origem para acessar o recurso.

Exemplo: o Data Catalog verifica se o usuário recebeu uma função com bigquery.tables.get permission antes de exibir os metadados da tabela do BigQuery.

A tabela a seguir lista as permissões e os papéis associados necessários para que um usuário usar o Data Catalog para pesquisar os serviços do Google Cloud do Google Cloud.

Recurso Permissão Papel
Conjuntos de dados, tabelas, modelos, rotinas e conexões do BigQuery bigquery.datasets.get
bigquery.tables.get
bigquery.models.getMetadata
bigquery.routines.get
bigquery.connections.get
roles/bigquery.metadataViewer
roles/bigquery.connectionUser
Consulte também Papel Leitor do Data Catalog
Tópicos do Pub/Sub pubsub.topics.get roles/pubsub.viewer
Consulte também Papel de Leitor do Data Catalog
Bancos de dados e tabelas do Spanner Instância: spanner.instances.get
Banco de dados: spanner.databases.get
Visualizações: spanner.databases.get
Não há papéis predefinidos disponíveis.
Instâncias e tabelas do Bigtable bigtable.instances.get
bigtable.tables.get
roles/bigtable.viewer
Consulte também Papel de Leitor do Data Catalog
Lakes, zonas, tabelas e conjuntos de arquivos do Dataplex dataplex.lakes.get
dataplex.zones.get
dataplex.entities.get
dataplex.entities.get
Não há papéis predefinidos disponíveis.
Serviços, bancos de dados e tabelas do Dataproc Metastore metastore.tables.get
metastore.databases.get
metastore.services.get
roles/metastore.metadataViewer

Papéis para anexar tags aos recursos do Google Cloud

Para anexar tags públicas e particulares aos recursos do Google Cloud, é preciso ter as mesmas permissões.

O Data Catalog permite que os usuários estendam metadados no Google Cloud recursos anexando tags. Uma ou mais tags que podem ser anexadas a um recurso estão definidas em um modelo de tag.

Quando um usuário tenta usar o modelo de tag para anexar uma tag a um recurso do Google Cloud, o Data Catalog verifica se o usuário tem as permissões necessárias para usar o modelo de tag e atualizar o recurso metadados. As permissões são concedidas por papéis do IAM, conforme mostrado na tabela a seguir.

A tabela a seguir lista as permissões e os papéis associados necessários para um o usuário pode usar o Data Catalog para anexar tags públicas e privadas aos recursos listados do Google Cloud.

Cada linha na tabela a seguir lista as permissões necessárias para marcar recursos. Os papéis correspondentes podem conceder permissões adicionais. Clique em cada papel para ver todas as permissões associadas a ele.

Observações:

  • O proprietário de uma entrada de dados tem a permissão datacatalog.entries.updateTag por padrão. Todos os outros usuários precisam receber o papel datacatalog.tagEditor.

  • A permissão datacatalog.tagTemplates.use também é necessária para todas as recursos listados na tabela.

Recurso Permissões Papel
Conjuntos de dados, tabelas,
modelos, rotinas e
conexões do 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
Tópicos do Pub/Sub pubsub.topics.updateTag roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/pubsub.editor
Bancos de dados e tabelas do Spanner. Instância: spanner.instances.UpdateTag
Banco de dados: spanner.databases.UpdateTag
Tabela: spanner.databases.UpdateTag
Visualizações:spanner.databases.UpdateTag
Não há papéis predefinidos disponíveis.
Instâncias e tabelas do Bigtable bigtable.instances.update
bigtable.tables.update
roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/bigtable.admin
Lakes, zonas, tabelas e conjuntos de arquivos do Dataplex dataplex.lakes.update
dataplex.zones.update
dataplex.entities.update
dataplex.entities.update
Não há papéis predefinidos disponíveis.
Serviços, bancos de dados e tabelas do Dataproc Metastore metastore.tables.update
metastore.databases.update
metastore.services.update
roles/datacatalog.tagTemplateUser
roles/datacatalog.tagEditor
roles/metastore.editor
roles/metastore.metadataEditor

Papéis personalizados para recursos do Google Cloud

Os papéis de editor predefinidos para entradas de dados de outros sistemas do Google Cloud podem dar acesso de gravação mais amplo que o necessário. Usar papéis personalizados para especificar permissões *.updateTag apenas em um recurso do Google Cloud.

Papéis para modificar a visão geral de rich text e os gestores de dados no Data Catalog

Os usuários precisam dos papéis a seguir para anexar a visão geral do rich text e atribuir dados administradores a entradas no Data Catalog:

Recurso Permissões Papel
Projetos do Google Cloud datacatalog.entries.updateOverview
datacatalog.entries.updateContacts
roles/datacatalog.dataSteward

Papéis para modificar a configuração de migração no Data Catalog

Os usuários precisam dos papéis a seguir para definir e recuperar configurações relacionadas à migração do Data Catalog para o Dataplex:

Recurso Permissões Papel
Projetos e organizações do Google Cloud datacatalog.migrationConfig.set
datacatalog.migrationConfig.get
roles/datacatalog.migrationConfigAdmin

Federação de identidade no Data Catalog

A federação de identidade permite usar um provedor de identidade externo (IdP) para autenticar e autorizar usuários nos serviços do Google Cloud com do IAM.

O Data Catalog oferece suporte à federação de identidade com os seguintes limitações:

Para mais informações