Este documento descreve os papéis de Identity and Access Management (IAM) que permitem usar o Data Catalog para pesquisar e marcar recursos do Google Cloud.
Para uma descrição detalhada do IAM e dos recursos dele, consulte a documentação do IAM.
Terminologia do IAM
- Permissões
- Marcado no tempo de execução para permitir que você realize uma operação ou acesse um recurso do Google Cloud. Você não recebe permissões diretamente, mas papéis que contêm permissões.
- Papéis
- Uma função é um conjunto predefinido de permissões. Papéis personalizados que consistem em uma coleção personalizada de permissões também são permitidos.
Conferir os papéis do Data Catalog
No console do Google Cloud, acesse a página IAM e administrador > Funções.
No campo Filtro, selecione Usado em, digite
Data Catalog
ouData Lineage
e clique em Enter.Clique em uma função para conferir as permissões dela no painel à direita.
Por exemplo, o papel de administrador do Data Catalog tem acesso total a todos os recursos do Data Catalog.
Papéis predefinidos do Data Catalog
Alguns papéis predefinidos do Data Catalog incluem o administrador, o leitor e o criador de TagTemplate do Data Catalog. Algumas dessas funções são descritas nas seções a seguir.
Para conferir uma lista e uma descrição dos papéis predefinidos do Data Catalog e as permissões associadas a cada função, consulte Papéis do Data Catalog.
Função de administrador do Data Catalog
A função roles/datacatalog.admin
tem acesso a todos os recursos do Data Catalog. Um administrador do Data Catalog pode
adicionar diferentes tipos de usuários a um projeto do Data Catalog.
Função de administrador de dados do Data Catalog
O papel roles/datacatalog.dataSteward
permite adicionar, editar ou
excluir os administradores de dados e a visão geral de texto enriquecido de uma entrada de dados, como uma
tabela do BigQuery.
Papel do Visualizador do Data Catalog
Para simplificar o acesso aos recursos do Google Cloud, o Data Catalog oferece a função roles/datacatalog.viewer
com permissão de leitura de metadados para todos os recursos do Google Cloud catalogados.
Essa função também concede as permissões para visualizar modelos e tags de tags do Data Catalog.
Conceda o papel de visualizador do Data Catalog no seu projeto para acessar os recursos do Google Cloud no Data Catalog.
Função criador de catálogo de dados do TagTemplate
O papel roles/datacatalog.tagTemplateCreator
permite criar modelos de tag.
Função de administrador de pesquisa do Data Catalog
O papel roles/datacatalog.searchAdmin
permite recuperar, por meio de pesquisa,
todos os recursos do Google Cloud catalogados em um projeto ou organização.
Função de administrador de configuração de migração do Data Catalog
O papel roles/datacatalog.migrationConfigAdmin
permite definir e extrair a configuração relacionada à migração de recursos do Data Catalog para o Dataplex Catalog.
Papéis de linhagem de dados predefinidos
Para acessar a linhagem de qualquer entrada do Data Catalog, você precisa
ter acesso à entrada no Data Catalog. Para acessar a entrada do Data Catalog, você precisa de uma função de leitor no recurso do sistema correspondente ou no Leitor do Data Catalog (roles/datacatalog.viewer
) no projeto que armazena a entrada do Data Catalog. Esta seção descreve os papéis necessários para
visualizar a linhagem.
Papel de leitor de linhagem
O papel de Leitor de linhagem de dados (roles/datalineage.viewer
) permite que você acesse a linhagem do Dataplex no console do Google Cloud e leia informações de linhagem usando a API Data Lineage. As
execuções e os eventos de um determinado processo são armazenados no mesmo projeto que o
processo. No caso da linhagem automatizada,
o processo, as execuções e os eventos
são armazenados no projeto em que o job que gerou a linhagem estava
em execução. Por exemplo, o projeto em que um job do BigQuery estava sendo executado.
Você precisa de diferentes funções para conferir a linhagem entre os recursos e os metadados
deles. Para o primeiro, você precisa do
Visualizador de linhagem de dados (roles/datalineage.viewer
).
Para o segundo, você precisa das mesmas funções usadas para acessar entradas de metadados
no Data Catalog.
Funções para conferir a linhagem entre dois recursos
Para conferir a linhagem entre os recursos, você precisa ter a
função de leitor da linhagem de dados (roles/datalineage.viewer
)
nos seguintes projetos:
- O projeto em que você está visualizando a linhagem (conhecido como projeto ativo), ou seja, o projeto no menu suspenso na parte de cima do console do Google Cloud ou o projeto em que as chamadas de API são feitas. Normalmente, esse é 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 do projeto que armazena o recurso para o qual você 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, conceda o papel de Visualizador da linhagem de dados (roles/datalineage.viewer
)
no nível da pasta ou da organização para garantir o acesso à linhagem. 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.
Funções para conferir metadados de recursos ao consultar a linhagem
Quando os metadados de um recurso são armazenados no Data Catalog, você só
pode acessar esses metadados se tiver uma função de leitor no recurso do sistema correspondente ou Visualizador do Data Catalog (roles/datacatalog.viewer
)
no projeto em que a entrada do Data Catalog está armazenada. Você
pode ter acesso a recursos na lista ou no gráfico de linhagem usando as funções de visualização
adequadas, mas não tem acesso à linhagem entre eles. Isso ocorre quando
você não tem o papel de leitor da linhagem de dados (roles/datalineage.viewer
)
no projeto em que a linhagem foi gravada. Nesse caso, a
API Data Lineage e o console do Google Cloud não mostram a linhagem nem
retornam um erro 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á
uma linhagem para esse recurso, mas que você não tem acesso a ela.
Função de produtor de eventos da linhagem de dados
O papel roles/datalineage.producer
permite que os usuários registrem manualmente informações de linhagem
usando a API Data Lineage.
Função de editor da linhagem de dados
O papel roles/datalineage.editor
permite que os usuários modifiquem manualmente as informações de linhagem
usando a API de linhagem de dados.
Função de administrador da linhagem de dados
A função roles/datalineage.admin
permite que os usuários realizem todas as operações de linhagem
listadas nesta seção.
Papéis para visualizar tags públicas e privadas
Você pode pesquisar tags públicas usando a pesquisa simples. Você pode conferir uma entrada de dados, incluindo as tags públicas dela, desde que tenha as permissões necessárias para isso. Não são necessárias outras permissões no modelo de tag. Para ver as permissões necessárias para acessar a entrada de dados, consulte a tabela nesta seção.
No entanto, recomendamos também conceder a permissão datacatalog.tagTemplates.get
a usuários que precisam pesquisar essas tags públicas. Essa
permissão 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 visualização no modelo de tag e na entrada de dados para pesquisar e visualizar a tag na página de detalhes da entrada. Os usuários precisam usar o predicado de pesquisa tag: ou a faceta de pesquisa do modelo de tag para encontrar as tags. A pesquisa simples de tags particulares não é aceita.
Observe o seguinte:
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ão incluídas 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 |
Nenhum papel predefinido está disponível. |
Tabelas e instâncias 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 |
Nenhum papel predefinido está disponível. |
Papéis para pesquisar recursos do Google Cloud
Antes de pesquisar, descobrir ou exibir recursos do Google Cloud, o Data Catalog verifica se você recebeu uma função do IAM com as permissões de leitura de metadados exigidas pelo BigQuery, Pub/Sub, Dataproc Metastore ou outro sistema de origem para acessar o recurso.
Exemplo:o Data Catalog verifica se você recebeu
uma função com bigquery.tables.get permission
antes de mostrar
os metadados da tabela do BigQuery.
A tabela a seguir lista as permissões e as funções associadas necessárias para usar o Data Catalog para pesquisar os recursos do Google Cloud listados.
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 de visualizador do Data Catalog |
Tópicos do Pub/Sub | pubsub.topics.get |
roles/pubsub.viewer Consulte também Papel de visualizador 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 |
Nenhum papel predefinido está disponível. |
Tabelas e instâncias do Bigtable | bigtable.instances.get bigtable.tables.get |
roles/bigtable.viewer Consulte também Papel de visualizador do Data Catalog |
Lakes, zonas, tabelas e conjuntos de arquivos do Dataplex | dataplex.lakes.get dataplex.zones.get dataplex.entities.get dataplex.entities.get |
Nenhum papel predefinido está disponível. |
Serviços, bancos de dados e tabelas do Dataproc Metastore | metastore.tables.get metastore.databases.get metastore.services.get |
roles/metastore.metadataViewer |
Funções para anexar tags aos recursos do Google Cloud
Para anexar tags públicas e privadas aos recursos do Google Cloud, são necessárias as mesmas permissões.
O Data Catalog permite que os usuários estendam metadados nos recursos do Google Cloud anexando tags. Uma ou mais tags que podem ser anexadas a um recurso sã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 você tem as permissões necessárias para usar o modelo de tag e atualizar os metadados do recurso. As permissões são concedidas por papéis do IAM, conforme mostrado na tabela abaixo.
A tabela a seguir lista as permissões e as funções associadas necessárias para que um usuário use o Data Catalog para anexar tags públicas e privadas aos recursos do Google Cloud listados.
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.
Observe o seguinte:
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 todos os 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 |
Nenhum papel predefinido está disponível. |
Tabelas e instâncias 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 |
Nenhum papel predefinido está disponível. |
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
As funções predefinidas do editor para entradas de dados de outros sistemas do Google Cloud
podem fornecer acesso de gravação mais amplo do que o necessário. Use
funções personalizadas para especificar
permissões *.updateTag
somente em um recurso do Google Cloud.
Papéis para modificar a visão geral do texto enriquecido e os administradores de dados no Data Catalog
Os usuários precisam das seguintes funções para anexar a visão geral do texto rico e atribuir administradores de dados 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 seguintes papéis para definir e extrair a configuração relacionada à 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 autenticação e autorização de usuários nos serviços do Google Cloud com o IAM.
O Data Catalog oferece suporte à federação de identidade com as seguintes limitações:
- Os métodos SearchCatalog e StarEntry da API Data Catalog oferecem suporte apenas à federação de identidade da força de trabalho e não estão disponíveis para a federação de identidade da carga de trabalho
- O Dataplex não é compatível com o console do Google Cloud para usuários da federação de identidade
A seguir
- Saiba como criar papéis personalizados.
- Saiba como conceder e gerenciar papéis.
- Saiba mais sobre os papéis do IAM do Dataplex.
- Saiba mais sobre o controle de acesso do BigQuery.
- Saiba mais sobre o controle de acesso do Pub/Sub.
- Saiba mais sobre o controle de acesso do metastore do Dataproc.