Configure funções de partilha do BigQuery
Este documento descreve as funções de gestão de identidades e acessos (IAM) usadas para a partilha do BigQuery (anteriormente Analytics Hub) e como as conceder aos utilizadores. Para mais informações, consulte o artigo Funções e autorizações de partilha do BigQuery.
Funções de IAM de partilha do BigQuery
As secções seguintes descrevem as funções de partilha do BigQuery predefinidas. Pode atribuir estas funções aos utilizadores para realizarem várias tarefas nas suas trocas de dados e fichas.
Função de administrador do Analytics Hub
Para gerir trocas de dados,
a partilha do BigQuery oferece a
função de administrador do Analytics Hub
(roles/analyticshub.admin) que pode conceder para um Google Cloud projeto ou uma troca
de dados. Esta função permite que os utilizadores façam o seguinte:
- Criar, atualizar e eliminar trocas de dados.
- Criar, atualizar, eliminar e partilhar fichas.
- Faça a gestão dos administradores de partilha, dos administradores de fichas, dos publicadores, dos subscritores e dos visitantes do BigQuery.
Os utilizadores com esta função são denominados administradores de partilha do BigQuery.
Funções de administrador do publicador e da ficha do Analytics Hub
Para gerir fichas, a partilha oferece as seguintes funções predefinidas que pode conceder para um projeto, uma troca de dados ou uma ficha:
Função de publicador do Analytics Hub (
roles/analyticshub.publisher), que permite aos utilizadores fazer o seguinte:- Criar, atualizar e eliminar fichas.
- Definir políticas IAM nas fichas.
Os utilizadores com esta função são denominados publicadores de partilha do BigQuery.
Função de administrador da ficha do Analytics Hub (
roles/analyticshub.listingAdmin), que permite aos utilizadores fazer o seguinte:- Atualizar e eliminar fichas.
- Defina políticas IAM nas fichas.
Os utilizadores com esta função são denominados administradores da ficha de partilha do BigQuery.
Funções de subscritor e leitor do Analytics Hub
Para ver e subscrever fichas e trocas de dados, a partilha oferece as seguintes funções predefinidas que pode conceder para um projeto, uma troca de dados ou uma ficha:
Função de subscritor do Analytics Hub (
roles/analyticshub.subscriber), que permite aos utilizadores ver e subscrever fichas.Os utilizadores com esta função são denominados subscritores da partilha do BigQuery.
Função de leitor do Analytics Hub (
roles/analyticshub.viewer), que permite aos utilizadores ver fichas e autorizações da troca de dados.Os utilizadores com esta função são denominados leitores de partilha do BigQuery.
Função de proprietário da subscrição do Analytics Hub
Para gerir subscrições, a partilha fornece a seguinte função predefinida que pode conceder ao nível do projeto:
- Função de proprietário da subscrição do Analytics Hub
(
roles/analyticshub.subscriptionOwner), que permite aos utilizadores gerir as respetivas subscrições.
Os utilizadores com esta função são denominados proprietários da subscrição de partilha do BigQuery.
Conceda funções de IAM de partilha do BigQuery
Consoante a sua necessidade, pode conceder as funções de IAM nos seguintes níveis da hierarquia de recursos:
Projeto. Se conceder aos utilizadores uma função para um projeto, a função é aplicada a todas as trocas de dados e fichas que o projeto contém.
Troca de dados. Se conceder aos utilizadores uma função para uma troca de dados, a função é aplicada a todas as fichas que a troca de dados contém.
Ficha. Se conceder aos utilizadores uma função para uma ficha, a função é aplicada apenas a essa ficha específica.
Conceda a função para um projeto
Se quiser definir políticas de IAM num projeto, tem de ter a
função de administrador de IAM do projeto
(roles/resourcemanager.projectIamAdmin) nesse projeto. Para conceder as funções de gestão de identidades e acessos de partilha do BigQuery predefinidas para um projeto, selecione uma das seguintes opções.
Consola
Aceda a IAM para o projeto.
Clique em Conceder acesso.
No campo Novos membros, introduza o endereço de email da identidade à qual quer conceder acesso. Por exemplo:
- Email da Conta Google:
test-user@gmail.com - Grupo Google:
admins@googlegroups.com - Conta de serviço:
server@example.gserviceaccount.com - Domínio do Google Workspace:
example.com
- Email da Conta Google:
Na lista Selecionar uma função, mantenha o ponteiro sobre Analytics Hub e selecione uma das seguintes funções:
- Administrador do Analytics Hub
- Administrador da ficha do Analytics Hub
- Editor do Analytics Hub
- Subscritor do Analytics Hub
- Proprietário da subscrição do Analytics Hub
- Visualizador do Analytics Hub
Opcional: para controlar ainda mais o acesso dos utilizadores aos Google Cloud recursos, adicione uma associação de funções condicional.
Guarde as alterações.
Pode eliminar e atualizar administradores de um projeto através do mesmo painel do IAM, explicado nos passos anteriores.
gcloud
Para conceder funções ao nível do projeto, use o comando
gcloud projects add-iam-policy-binding:
gcloud projects add-iam-policy-binding PROJECT_ID \
--member='PRINCIPAL' \
--role='roles/analyticshub.admin'
Substitua o seguinte:
PROJECT_ID: o ID do projeto, por exemplo,my-project-1PRINCIPAL: uma identidade válida à qual quer conceder a funçãoPor exemplo:
- Email da Conta Google:
user:user@gmail.com - Grupo Google:
group:admins@googlegroups.com - Conta de serviço:
serviceAccount:server@example.gserviceaccount.com - Domínio do Google Workspace:
domain:example.com
- Email da Conta Google:
API
Leia a política existente com o método
getIamPolicydo recurso. Para projetos, use o métodoprojects.getIamPolicy.POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy
Substitua
PROJECT_IDpelo ID do projeto, por exemplo,my-project-1.Para adicionar responsáveis e as respetivas funções associadas, edite a política com um editor de texto. Use o seguinte formato para adicionar membros:
user:test-user@gmail.comgroup:admins@example.comserviceAccount:test123@example.domain.comdomain:example.domain.com
Por exemplo, para conceder a função
roles/analyticshub.adminagroup:admins@example.com, adicione a seguinte associação à política:{ "members": [ "group:admins@example.com" ], "role":"roles/analyticshub.admin" }Escreva a política atualizada através do método
setIamPolicy.Por exemplo, para definir uma política ao nível do projeto, use o método
project.setIamPolicy. No corpo do pedido, indique a política de IAM atualizada do passo anterior.POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setIamPolicy
Substitua
PROJECT_IDpelo ID do projeto.
Conceda a função para uma troca de dados
Para conceder a função para uma troca de dados, siga estes passos:
Consola
Na Google Cloud consola, aceda à página Partilha (Analytics Hub).
Clique no nome da troca de dados para a qual quer definir autorizações.
Aceda ao separador Detalhes.
Clique em Definir autorizações.
Para adicionar diretores, clique em Adicionar diretor.
No campo Novos responsáveis, adicione os IDs de email aos quais quer conceder acesso. Também pode usar
allUserspara tornar um recurso público e acessível a todos na Internet ouallAuthenticatedUserspara o tornar acessível apenas aos utilizadores do Google com sessão iniciada.No menu Selecionar uma função, selecione Analytics Hub e, de seguida, selecione uma das seguintes funções de gestão de identidades e acessos (IAM):
- Administrador do Analytics Hub
- Administrador da ficha do Analytics Hub
- Editor do Analytics Hub
- Subscritor do Analytics Hub
- Proprietário da subscrição do Analytics Hub
- Visualizador do Analytics Hub
Clique em Guardar.
API
Leia a política existente com o método
getIamPolicyatravés do métodoprojects.locations.dataExchanges.getIamPolicy:POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:getIamPolicy
Substitua o seguinte:
PROJECT_ID: o ID do projeto, por exemplo,my-project-1.LOCATION: a localização da sua troca de dados. Use letras minúsculas.DATAEXCHANGE_ID: o ID da troca de dados.
A partilha do BigQuery (anteriormente Analytics Hub) devolve a política atual.
Para adicionar ou remover membros e as respetivas funções de gestão de identidade e acesso (IAM) associadas, edite a política com um editor de texto. Use o seguinte formato para adicionar membros:
user:test-user@gmail.comgroup:admins@example.comserviceAccount:test123@example.domain.comdomain:example.domain.com
Por exemplo, para conceder a função
roles/analyticshub.subscriberagroup:subscribers@example.com, adicione a seguinte associação à política:{ "members": [ "group:subscribers@example.com" ], "role":"roles/analyticshub.subscriber" }Escreva a política atualizada através do método
projects.locations.dataExchanges.setIamPolicy. No corpo do pedido, indique a política de IAM atualizada do passo anterior.POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:setIamPolicy
No corpo do pedido, indique os detalhes da ficha. Se o pedido for bem-sucedido, o corpo da resposta contém detalhes da ficha.
Quando concede autorizações ao nível do recurso, como numa troca de dados, tem de usar letras minúsculas para a parte de localização do nome do recurso. A utilização de valores em maiúsculas ou com maiúsculas e minúsculas
pode causar erros Permission Denied.
- Utilize:
projects/myproject/locations/us/dataExchanges/123 - Evitar:
projects/myproject/locations/US/dataExchanges/123 - Evitar:
projects/myproject/locations/Eu/dataExchanges/123
Pode eliminar e atualizar funções para uma troca de dados através do mesmo painel do IAM, conforme explicado nos passos anteriores.
Conceda a função para uma ficha
Para conceder a função a uma ficha, siga estes passos:
Consola
Na Google Cloud consola, aceda à página Partilha (Analytics Hub).
Clique no nome da troca de dados que contém a ficha.
Clique na ficha para a qual quer adicionar utilizadores.
Clique em Definir autorizações.
Para adicionar responsáveis, clique em Adicionar responsável.
No campo Novos responsáveis, adicione os IDs de email da identidade à qual quer conceder acesso.
No menu Selecionar uma função, selecione Analytics Hub e, de seguida, selecione uma das seguintes funções de gestão de identidades e acessos (IAM):
- Administrador do Analytics Hub
- Administrador da ficha do Analytics Hub
- Editor do Analytics Hub
- Subscritor do Analytics Hub
- Proprietário da subscrição do Analytics Hub
- Visualizador do Analytics Hub
Clique em Guardar.
API
Leia a política existente com o método
getIamPolicyatravés do métodoprojects.locations.dataExchanges.listings.getIamPolicy:POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID:getIamPolicy
Substitua o seguinte:
PROJECT_ID: o ID do projeto, por exemplo,my-project-1.LOCATION: a localização da troca de dados que contém a ficha. Use letras minúsculas.DATAEXCHANGE_ID: o ID da troca de dados.LISTING_ID: o ID da ficha.
A partilha devolve a política atual.
Para adicionar ou remover membros e as respetivas funções de gestão de identidade e acesso (IAM) associadas, edite a política com um editor de texto. Use o seguinte formato para adicionar membros:
user:test-user@gmail.comgroup:admins@example.comserviceAccount:test123@example.domain.comdomain:example.domain.com
Por exemplo, para conceder a função
roles/analyticshub.publisheragroup:publishers@example.com, adicione a seguinte associação à política:{ "members": [ "group:publishers@example.com" ], "role":"roles/analyticshub.publisher" }Escreva a política atualizada através do método
projects.locations.dataExchanges.listings.setIamPolicy. No corpo do pedido, indique a política de IAM atualizada do passo anterior.POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING-ID:setIamPolicy
No corpo do pedido, indique os detalhes da ficha. Se o pedido for bem-sucedido, o corpo da resposta contém detalhes da ficha.
Quando concede autorizações ao nível do recurso, como num
anúncio, tem de usar letras minúsculas na parte de localização do
nome do recurso. A utilização de valores em maiúsculas ou com maiúsculas e minúsculas
pode causar erros Permission Denied.
- Utilize:
projects/myproject/locations/us/dataExchanges/123/listings/456 - Evitar:
projects/myproject/locations/US/dataExchanges/123/listings/456 - Evitar:
projects/myproject/locations/Eu/dataExchanges/123/listings/456
Pode eliminar e atualizar funções para uma ficha através do mesmo painel do IAM, explicado nos passos anteriores.
O que se segue?
- Saiba mais acerca das funções de IAM do BigQuery.
- Saiba mais acerca da partilha do BigQuery.
- Saiba como gerir as trocas de dados.
- Saiba como gerir fichas.
- Saiba como ver e subscrever fichas e trocas de dados.