Incluir recursos em domínios de dados

Os domínios de dados no Knowledge Catalog (antigo Dataplex Universal Catalog) permitem organizar projetos, produtos de dados e recursos individuais, como conjuntos de dados e tabelas do BigQuery, em uma hierarquia lógica. Depois de autorizar um domínio e criar vinculações de recursos, os usuários podem pesquisar nesse contexto de negócios para descobrir os recursos incluídos e visualizar os metadados deles.

Como funciona

Para incluir um recurso em um domínio, siga estas etapas:

  1. Encontre o ID do principal do domínio que você quer autorizar. Para mais informações, consulte Receber o principal do domínio.
  2. Autorize o domínio a conceder acesso a um recurso ou projeto específico.
  3. Crie uma vinculação entre o recurso e o domínio. Para mais informações, consulte Vincular recursos ao domínio.

Sobre a autorização de domínio de dados

A autorização de domínio estabelece confiança entre o recurso e o domínio. O proprietário de um recurso concede permissões do IAM ao principal do IAM do domínio de dados no recurso ou projeto de destino. Essa ação permite que o Knowledge Catalog autorize e execute a criação da vinculação que associa o recurso ao domínio.

A autorização do domínio é verificada apenas quando uma vinculação é criada. Isso significa que, se você revogar o papel do IAM do principal do domínio em um recurso, esse recurso não será automaticamente desvinculado ou removido do domínio. Os usuários do domínio com o papel roles/dataplex.dataDomainEntryReader continuam descobrindo o recurso e visualizando os metadados dele até que a vinculação entre o recurso e o domínio seja explicitamente excluída.

Autorização de domínio e permissões de usuário do domínio

Ao trabalhar com domínios de dados, é importante distinguir entre a autorização do domínio de dados e a concessão de permissões de domínio de dados a um usuário:

  • Autorização do domínio de dados:refere-se à autorização do domínio de dados em um recurso de destino. Você concede ao principal do IAM do domínio de dados permissões em um recurso subjacente, como um projeto ou um conjunto de dados do BigQuery, para criar a vinculação entre o recurso e o domínio.
  • Conceder permissões de domínio de dados a um usuário:refere-se a dar a um usuário ou conta de serviço permissões para interagir com o próprio domínio de dados. Você concede papéis do IAM aos usuários diretamente no domínio de dados para que eles possam visualizar, editar ou gerenciar o domínio no Knowledge Catalog. Para mais informações, consulte Papéis e permissões de domínio de dados.

Tipos de papel

Ao autorizar um domínio de dados em um recurso de destino, é possível selecionar um papel do IAM que se enquadre em um dos seguintes tipos: Leitor, Gravador ou Administrador.

Em geral, os tipos de papel de Gravador e Administrador são reservados para permitir que os domínios realizem uma gama maior de ações nos recursos autorizados, conforme descrito abaixo:

  • Os tipos de papel de editor permitem que o domínio gerencie as permissões de edição de metadados no recurso.
  • Os tipos de função de administrador permitem que o domínio gerencie as permissões no recurso.

No escopo dos domínios de dados, os três tipos de papel permitem que o domínio de dados crie uma vinculação com o recurso de destino. Quando a vinculação é criada, os usuários podem pesquisar o recurso no domínio e ver os metadados dele. Para mais informações, consulte Pesquisar recursos de dados.

Ao escolher o tipo de papel, considere o nível de acesso de longo prazo que você quer conceder ao domínio sobre o recurso.

Papéis recomendados para autorização de domínio

As tabelas a seguir listam os papéis recomendados que podem ser usados para autorizar o domínio a inspecionar os recursos. Para cada recurso, é possível escolher um papel diferente do recomendado, mas ele precisa conter as permissões necessárias para realizar vinculações de recursos.

Selecione na lista o tipo de recurso com os papéis que você quer visualizar.

Tipo de recurso Tipo de papel Papéis recomendados Descrição Permissões necessárias
Projeto Leitor roles/browser Concede ao domínio permissões para receber informações sobre um projeto. resourcemanager.projects.get
Editor roles/editor Concede ao domínio permissões para receber informações sobre um projeto e gerenciar os metadados dele. resourcemanager.projects.get
resourcemanager.projects.update
Administrador roles/owner Concede ao domínio o gerenciamento administrativo de um projeto, incluindo descoberta, governança de metadados e administração de políticas de acesso. resourcemanager.projects.get
resourcemanager.projects.update
resourcemanager.projects.setIamPolicy
Conjunto de dados do BigQuery Leitor roles/bigquery.metadataViewer Concede ao domínio permissões para receber informações sobre um conjunto de dados do BigQuery. bigquery.datasets.get
Editor roles/bigquery.dataEditor Concede ao domínio permissões para receber informações sobre um conjunto de dados do BigQuery e gerenciar os metadados dele. bigquery.datasets.get
bigquery.datasets.updateTag
Administrador roles/bigquery.dataOwner Concede ao domínio o gerenciamento administrativo de um conjunto de dados do BigQuery, incluindo descoberta, governança de metadados e administração de políticas de acesso. bigquery.datasets.get
bigquery.datasets.updateTag
bigquery.datasets.setIamPolicy
Tabela do BigQuery Leitor roles/bigquery.metadataViewer Concede ao domínio permissões para receber informações sobre uma tabela do BigQuery. bigquery.tables.get
Editor roles/bigquery.dataEditor Concede ao domínio permissões para receber informações sobre uma tabela do BigQuery e gerenciar os metadados dela. bigquery.tables.get
bigquery.tables.update
Administrador roles/bigquery.dataOwner Concede ao domínio o gerenciamento administrativo de uma tabela do BigQuery, incluindo descoberta, governança de metadados e administração de políticas de acesso. bigquery.tables.get
bigquery.tables.update
bigquery.tables.setIamPolicy
Produto de dados Leitor roles/dataplex.dataProductsViewer Concede ao domínio permissões para receber informações sobre um produto de dados. dataplex.dataProducts.get
Editor roles/dataplex.dataProductsEditor Concede ao domínio permissões para receber informações sobre um produto de dados e gerenciar os metadados dele. dataplex.dataProducts.get
dataplex.dataProducts.update
Administrador roles/dataplex.dataProductsAdmin Dá ao domínio o gerenciamento administrativo de um produto de dados, incluindo descoberta de produtos de dados, governança de metadados e administração de políticas de acesso. dataplex.dataProducts.get
dataplex.dataProducts.update
dataplex.dataProducts.setIamPolicy
Repositório do Dataform Leitor roles/dataform.codeViewer Concede ao domínio acesso somente leitura aos recursos de código do Dataform. dataform.repositories.get
Editor roles/dataform.codeOwner Concede ao domínio acesso total ao repositório do Dataform e aos recursos de código. dataform.repositories.get
dataform.repositories.update
Administrador roles/dataform.codeOwner Concede ao domínio acesso total ao repositório do Dataform e aos recursos de código. dataform.repositories.get
dataform.repositories.setIamPolicy
Banco de dados do Dataproc Metastore Leitor roles/metastore.metadataUser Concede ao domínio permissões para acessar a lista de bancos de dados do Dataproc Metastore. metastore.databases.get
Editor roles/metastore.metadataEditor Concede ao domínio acesso para ler e modificar os metadados de bancos de dados e tabelas do Dataproc Metastore. metastore.databases.get
metastore.databases.update
Administrador roles/metastore.metadataOwner Concede ao domínio acesso total aos metadados de bancos de dados e tabelas do Dataproc Metastore nesses bancos de dados. metastore.databases.get
metastore.databases.setIamPolicy
Tabela do Dataproc Metastore Leitor roles/metastore.metadataViewer Concede ao domínio acesso para ler os metadados de bancos de dados e tabelas do Dataproc Metastore nesses bancos de dados. metastore.tables.get
Editor roles/metastore.metadataEditor Concede ao domínio acesso para ler e modificar os metadados de bancos de dados e tabelas do Dataproc Metastore. metastore.tables.get
Administrador roles/metastore.metadataOwner Concede ao domínio acesso total aos metadados de bancos de dados e tabelas do Dataproc Metastore nesses bancos de dados. metastore.tables.get
metastore.tables.setIamPolicy
Banco de dados do Cloud Spanner Leitor roles/spanner.databaseReader Concede ao domínio permissões para ler o banco de dados do Spanner, executar consultas SQL e visualizar o esquema do banco de dados. spanner.databases.get
Editor roles/spanner.editor Concede ao domínio permissões administrativas e operacionais em todos os recursos do Spanner, incluindo gerenciamento de instâncias e bancos de dados, execução de consultas, gerenciamento de backup e restauração e gerenciamento de recursos. spanner.databases.get
spanner.databases.update
Administrador roles/spanner.databaseAdmin Dá ao domínio acesso total para gerenciar instâncias do Spanner no projeto e bancos de dados nessas instâncias. spanner.databases.get
spanner.databases.setIamPolicy
Tabela do BigLake Leitor roles/biglake.metadataViewer Concede ao domínio acesso somente leitura aos metadados de todos os recursos do BigLake. biglake.tables.get
Editor roles/biglake.editor Dá ao domínio acesso de leitura e gravação a todos os recursos do BigLake. biglake.tables.get
biglake.tables.update
Administrador roles/biglake.admin Concede ao domínio acesso total a todos os recursos do BigLake. biglake.tables.get
biglake.tables.setIamPolicy
Instância do AlloyDB para PostgreSQL Leitor roles/alloydb.viewer Dá ao domínio acesso somente leitura aos recursos do AlloyDB para PostgreSQL. alloydb.instances.get
Editor roles/alloydb.editor Concede ao domínio acesso de leitura e gravação aos recursos do AlloyDB para PostgreSQL. alloydb.instances.get
alloydb.instances.update
Conjunto de dados da Gemini Enterprise Agent Platform Leitor roles/aiplatform.viewer Concede ao domínio permissões para visualizar todos os recursos na Gemini Enterprise Agent Platform. aiplatform.datasets.get
Editor roles/aiplatform.user Concede ao domínio permissões para usar todos os recursos na Gemini Enterprise Agent Platform. aiplatform.datasets.get
aiplatform.datasets.update

Antes de começar

Antes de incluir recursos em um domínio de dados, verifique se você tem os papéis e as APIs necessários ativados. Além disso, considere os seguintes limites:

  • Um recurso só pode pertencer a um domínio.
  • Um domínio pode conter até 500 recursos.

Ativar APIs

Ative a API Dataplex, se ainda não tiver feito isso.

Funções necessárias para ativar APIs

Para ativar APIs, você precisa da permissão serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão pelo papel de proprietário (roles/owner). Caso contrário, é possível conseguir essa permissão pelo papel de administrador do Service Usage (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.

Ativar a API

Funções exigidas

Para receber as permissões necessárias para vincular recursos a domínios de dados, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.

Acessar o principal do IAM do domínio

Para autorizar um domínio de dados a realizar ações em um recurso, você precisa do ID do principal do IAM do domínio. Mantenha o ID do principal do domínio à mão, porque você precisa fornecê-lo ao autorizar o domínio no recurso.

Console

  1. No console do Google Cloud , acesse a página Domínios de dados.

    Acesse "Domínios de dados"

  2. Clique no nome de domínio para acessar a página de detalhes.

  3. Na guia Visão geral, acesse Informações e Identificadores.

  4. Copie o valor de Principal do IAM. O formato é semelhante ao seguinte:

principal://dataplex.googleapis.com/projects/DOMAIN_PROJECT_NUMBER/name/locations/LOCATION_ID/dataDomains/DOMAIN_ID

REST

Para receber o principal do domínio usando a API REST, use o método projects.locations.dataDomains.get para receber o domínio de dados. A resposta inclui o campo policyMember, que contém o principal do IAM (iamPolicyNamePrincipal ou iamPolicyUidPrincipal) para o domínio:

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do seu projeto do Google Cloud .
  • LOCATION_ID: a região em que o domínio de dados está. Por exemplo, us-central1.
  • DOMAIN_ID: o identificador exclusivo do domínio ou subdomínio de dados.

Método HTTP e URL:

GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID

Para enviar a solicitação, escolha uma destas opções:

curl

Execute o seguinte comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID"

PowerShell

execute o seguinte comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Autorizar o domínio em um recurso

Antes de vincular um recurso, é necessário conceder ao principal do domínio os papéis do IAM necessários no recurso de destino.

Console

  1. No console do Google Cloud , acesse o recurso de destino e abra o painel de permissões dele:

    • Para projetos, conjuntos de dados da Gemini Enterprise Agent Platform, bancos de dados e tabelas do Dataproc Metastore, repositórios do Dataform, instâncias do AlloyDB para PostgreSQL e tabelas do BigLake, acesse a página IAM e clique em Conceder acesso.
    • Para produtos de dados, acesse a página Produtos de dados, selecione o produto, clique em Compartilhar > Definir permissões.
    • Para conjuntos de dados e tabelas do BigQuery, acesse a página BigQuery, selecione um conjunto de dados ou uma tabela e clique em Compartilhar > Gerenciar permissões.
    • Para bancos de dados do Spanner, acesse a página Spanner, selecione o banco de dados e clique na guia Permissões.
  2. Clique em Adicionar principal ou equivalente.

  3. No campo Novos principais, cole o principal do IAM do domínio. Para ver as instruções sobre como conseguir o principal do domínio, consulte a seção Conseguir o principal do IAM do domínio.

  4. No menu Selecionar um papel, escolha o papel que se encaixa na sua finalidade. Para ver a lista completa de papéis, consulte a seção Papéis recomendados para autorização de domínio. Aguarde de dois a três minutos para que as mudanças sejam propagadas.

  5. Clique em Salvar.

gcloud

Use o comando da Google Cloud CLI do seu produto para conceder o papel necessário ao principal do domínio:

principal://dataplex.googleapis.com/projects/DOMAIN_PROJECT_NUMBER/name/locations/LOCATION_ID/dataDomains/DOMAIN_ID

Por exemplo, usando gcloud para vincular um projeto:

gcloud projects add-iam-policy-binding RESOURCE_PROJECT_ID \
--member "principal://dataplex.googleapis.com/projects/DOMAIN_PROJECT_NUMBER/name/locations/LOCATION_ID/dataDomains/DOMAIN_ID" \
--role ROLE

Substitua:

  • RESOURCE_PROJECT_ID: o ID do projeto de destino a ser autorizado.
  • DOMAIN_PROJECT_NUMBER: o número do projeto que hospeda o domínio de dados.
  • LOCATION_ID: a região em que o domínio de dados está. Por exemplo, us-central1.
  • DOMAIN_ID: o ID do domínio de dados.
  • ROLE: o papel do IAM que se encaixa na finalidade de vinculação necessária.

Para comandos específicos do produto, como bq add-iam-policy-binding para o BigQuery, consulte a documentação da API do produto.

REST

Para conceder permissões ao principal do domínio sobre um recurso, geralmente você recebe a política do IAM atual usando getIamPolicy, anexa a vinculação do principal do domínio ao papel escolhido e define a política atualizada usando setIamPolicy.

O exemplo a seguir mostra como definir a política do IAM para um projeto.

Acessar a política atual do IAM

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • RESOURCE_PROJECT_ID: o ID do projeto de destino a ser autorizado.

Método HTTP e URL:

POST https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:getIamPolicy

Para enviar a solicitação, escolha uma destas opções:

curl

Execute o seguinte comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:getIamPolicy"

PowerShell

execute o seguinte comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:getIamPolicy" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Defina a política atualizada, incluindo o principal do domínio

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • RESOURCE_PROJECT_ID: o ID do projeto de destino a ser autorizado.
  • DOMAIN_PROJECT_NUMBER: o número do projeto que hospeda o domínio de dados.
  • LOCATION_ID: a região em que o domínio de dados está. Por exemplo, us-central1.
  • DOMAIN_ID: o ID do domínio de dados.
  • ROLE: o papel do IAM que se encaixa na finalidade de vinculação necessária.

Método HTTP e URL:

POST https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:setIamPolicy

Corpo JSON da solicitação:

{
  "policy": {
    "bindings": [
      {
        "role": "ROLE",
        "members": [
          "principal://dataplex.googleapis.com/projects/DOMAIN_PROJECT_NUMBER/name/locations/LOCATION_ID/dataDomains/DOMAIN_ID"
        ]
      }
    ]
  }
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:setIamPolicy"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:setIamPolicy" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Para instruções sobre como definir políticas para outros recursos, consulte a seguinte documentação da API:

Vincular recursos ao domínio

Depois de autorizar o domínio nos recursos de destino, é possível vincular os recursos ao domínio. Se você incluir um projeto, todos os recursos dele serão adicionados automaticamente ao domínio, a menos que você substitua explicitamente a inclusão deles.

Console

  1. No console do Google Cloud , acesse a página Domínios de dados.

    Acesse "Domínios de dados"

  2. Selecione o domínio em que você quer adicionar recursos.

  3. Clique na guia Recursos.

  4. Clique em Adicionar recursos ou Adicionar projetos, dependendo do item que você quer incluir.

  5. Pesquise e selecione os recursos que você quer incluir no domínio.

  6. Clique em Selecionar.

REST

Para incluir um recurso em um domínio, use o método projects.locations.dataDomains.bindings.create.

Para ver o payload do recurso que você quer incluir no domínio, abra uma das seguintes seções:

Projeto

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud que hospeda o domínio de dados.
  • LOCATION_ID: a região em que o domínio de dados está. Por exemplo, us-central1.
  • DOMAIN_ID: o identificador exclusivo do domínio de dados.
  • RESOURCE_PROJECT_ID: o ID do projeto de destino a ser incluído no domínio.
  • BINDING_ID: um identificador exclusivo opcional para essa vinculação de recurso.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//cloudresourcemanager.googleapis.com/projects/RESOURCE_PROJECT_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Conjunto de dados e tabela do BigQuery

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud que hospeda o domínio de dados.
  • LOCATION_ID: a região em que o domínio de dados está. Por exemplo, us-central1.
  • DOMAIN_ID: o identificador exclusivo do domínio de dados.
  • RESOURCE_PROJECT_ID: o ID do projeto do Google Cloud que hospeda o recurso.
  • DATASET_ID: o ID do recurso de destino (como um conjunto de dados do BigQuery).
  • BINDING_ID: um identificador exclusivo opcional para essa vinculação de recurso.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//bigquery.googleapis.com/projects/RESOURCE_PROJECT_ID/datasets/DATASET_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Produto de dados

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud que hospeda o domínio de dados.
  • LOCATION_ID: a região em que o domínio de dados e o recurso existem. Por exemplo, us-central1.
  • DOMAIN_ID: o identificador exclusivo do domínio de dados.
  • RESOURCE_PROJECT_ID: o ID do projeto do Google Cloud que hospeda o produto de dados.
  • DATA_PRODUCT_ID: o ID exclusivo do produto de dados de destino.
  • BINDING_ID: um identificador exclusivo opcional para essa vinculação de recurso.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//dataplex.googleapis.com/projects/RESOURCE_PROJECT_ID/locations/LOCATION_ID/dataProducts/DATA_PRODUCT_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Repositório do Dataform

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • DOMAIN_PROJECT_ID: o ID do projeto que hospeda o domínio de dados.
  • DOMAIN_LOCATION_ID: a região em que o domínio de dados está hospedado. Por exemplo, us-central1.
  • DOMAIN_ID: o ID do domínio de dados.
  • BINDING_ID: o ID a ser atribuído à nova vinculação de domínio de dados.
  • PROJECT_ID: o ID do projeto que hospeda o repositório.
  • LOCATION_ID: a região que hospeda o repositório.
  • REPOSITORY_ID: o ID do repositório do Dataform.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//dataform.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/repositories/REPOSITORY_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Banco de dados do Dataproc Metastore

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • DOMAIN_PROJECT_ID: o ID do projeto que hospeda o domínio de dados.
  • DOMAIN_LOCATION_ID: a região em que o domínio de dados está hospedado. Por exemplo, us-central1.
  • DOMAIN_ID: o ID do domínio de dados.
  • BINDING_ID: o ID a ser atribuído à nova vinculação de domínio de dados.
  • PROJECT_ID: o ID do projeto que hospeda o banco de dados.
  • LOCATION_ID: a região que hospeda o serviço.
  • SERVICE_ID: o ID do serviço do Dataproc Metastore.
  • DATABASE_ID: o ID do banco de dados.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//metastore.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/services/SERVICE_ID/databases/DATABASE_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Tabela do Dataproc Metastore

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • DOMAIN_PROJECT_ID: o ID do projeto que hospeda o domínio de dados.
  • DOMAIN_LOCATION_ID: a região em que o domínio de dados está hospedado. Por exemplo, us-central1.
  • DOMAIN_ID: o ID do domínio de dados.
  • BINDING_ID: o ID a ser atribuído à nova vinculação de domínio de dados.
  • PROJECT_ID: o ID do projeto que hospeda a tabela.
  • LOCATION_ID: a região que hospeda o serviço.
  • SERVICE_ID: o ID do serviço do Dataproc Metastore.
  • DATABASE_ID: o ID do banco de dados.
  • TABLE_ID: o código da tabela.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//metastore.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/services/SERVICE_ID/databases/DATABASE_ID/tables/TABLE_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Banco de dados do Spanner

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • DOMAIN_PROJECT_ID: o ID do projeto que hospeda o domínio de dados.
  • DOMAIN_LOCATION_ID: a região em que o domínio de dados está hospedado. Por exemplo, us-central1.
  • DOMAIN_ID: o ID do domínio de dados.
  • BINDING_ID: o ID a ser atribuído à nova vinculação de domínio de dados.
  • PROJECT_ID: o ID do projeto que hospeda o banco de dados.
  • INSTANCE_ID: o ID da instância do Spanner.
  • DATABASE_ID: o ID do banco de dados.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//spanner.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_ID/databases/DATABASE_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

BigLake

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • DOMAIN_PROJECT_ID: o ID do projeto que hospeda o domínio de dados.
  • DOMAIN_LOCATION_ID: a região em que o domínio de dados está hospedado. Por exemplo, us-central1.
  • DOMAIN_ID: o ID do domínio de dados.
  • BINDING_ID: o ID a ser atribuído à nova vinculação de domínio de dados.
  • PROJECT_ID: o ID do projeto que hospeda o catálogo.
  • LOCATION_ID: a região que hospeda o catálogo.
  • CATALOG_ID: o ID do catálogo.
  • DATABASE_ID: o ID do banco de dados.
  • TABLE_ID: o código da tabela.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//biglake.googleapis.com/projects/PROJECT_ID/catalogs/CATALOG_ID/databases/DATABASE_ID/tables/TABLE_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

AlloyDB para PostgreSQL

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • DOMAIN_PROJECT_ID: o ID do projeto que hospeda o domínio de dados.
  • DOMAIN_LOCATION_ID: a região em que o domínio de dados está hospedado. Por exemplo, us-central1.
  • DOMAIN_ID: o ID do domínio de dados.
  • BINDING_ID: o ID a ser atribuído à nova vinculação de domínio de dados.
  • PROJECT_ID: o ID do projeto que hospeda o cluster.
  • LOCATION_ID: a região que hospeda o cluster.
  • CLUSTER_ID: o ID do cluster.
  • INSTANCE_ID: o ID da instância.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//alloydb.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Gemini Enterprise Agent Platform

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • DOMAIN_PROJECT_ID: o ID do projeto que hospeda o domínio de dados.
  • DOMAIN_LOCATION_ID: a região em que o domínio de dados está hospedado. Por exemplo, us-central1.
  • DOMAIN_ID: o ID do domínio de dados.
  • BINDING_ID: o ID a ser atribuído à nova vinculação de domínio de dados.
  • PROJECT_ID: o ID do projeto que hospeda o conjunto de dados.
  • LOCATION_ID: a região que hospeda o conjunto de dados.
  • DATASET_ID: o código do conjunto de dados.

Método HTTP e URL:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

Corpo JSON da solicitação:

{
  "resource": "//aiplatform.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/datasets/DATASET_ID"
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Ver recursos incluídos

Confira as pastas, os projetos e os recursos vinculados diretamente a um domínio de dados.

Console

  1. No console do Google Cloud , acesse a página Domínios de dados.

    Acesse "Domínios de dados"

  2. Clique no nome de domínio.

  3. Clique na guia Recursos. A lista mostra os recursos incluídos diretamente no domínio.

REST

Para listar as vinculações de recursos incluídas, use o método projects.locations.dataDomains.bindings.list:

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do seu projeto do Google Cloud .
  • LOCATION_ID: a região em que o domínio de dados está. Por exemplo, us-central1.
  • DOMAIN_ID: o identificador exclusivo do domínio de dados.

Método HTTP e URL:

GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings

Para enviar a solicitação, escolha uma destas opções:

curl

Execute o seguinte comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings"

PowerShell

execute o seguinte comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Remover um recurso do domínio

A remoção de um recurso o desvincula da hierarquia do domínio de dados.

Console

  1. No console do Google Cloud , acesse a página Domínios de dados.

    Acesse "Domínios de dados"

  2. Clique no nome de domínio.

  3. Clique na guia Recursos.

  4. Selecione o recurso que você quer remover.

  5. Clique em Excluir e confirme.

REST

Para excluir uma vinculação de recurso, use o método projects.locations.dataDomains.bindings.delete.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do seu projeto do Google Cloud .
  • LOCATION_ID: a região em que o domínio de dados está. Por exemplo, us-central1.
  • DOMAIN_ID: o identificador exclusivo do domínio de dados.
  • BINDING_ID: o identificador exclusivo da vinculação de recursos.

Método HTTP e URL:

DELETE https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings/BINDING_ID

Para enviar a solicitação, escolha uma destas opções:

curl

Execute o seguinte comando:

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings/BINDING_ID"

PowerShell

execute o seguinte comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings/BINDING_ID" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

A seguir