Esta página descreve as opções de controle de acesso no Cloud Data Fusion.
É possível controlar o acesso aos recursos no Cloud Data Fusion das seguintes maneiras:
Para controlar o acesso a operações do plano de controle, como a criação e a atualização de instâncias pelo console do Google Cloud, a Google Cloud CLI e a API REST, use o Identity and Access Management (IAM), conforme descrito nesta página.
Para conceder acesso aos serviços de dados do Google Cloud, como o BigQuery ou Cloud Storage para uma conta de serviço em que os pipelines estão em execução, usar do IAM.
Para controlar permissões granulares para ações realizadas no do Compute Engine, conhecido como plano de dados operações, como iniciar pipelines, usar controle de acesso baseados em papéis (RBAC).
Para mais informações sobre a arquitetura e os recursos envolvidos o controle de acesso do Cloud Data Fusion. Consulte Rede. Para saber mais sobre a concessão de papéis e permissões, consulte Gerenciar o acesso a projetos, pastas e organizações.
Sobre o IAM no Cloud Data Fusion
Para controlar o acesso aos recursos do Cloud Data Fusion, conceda e as permissões do IAM para contas de serviço e outros principais do seu projeto do Google Cloud.
Para conceder acesso detalhado a contas de usuários para que eles possam usar o interface da Web do Cloud Data Fusion, use RBAC
Por padrão, o Cloud Data Fusion usa as seguintes contas de serviço:
Conta de serviços do Cloud Data Fusion:
A conta de serviço do Cloud Data Fusion é um agente de serviço gerenciado pelo Google que podem acessar os recursos do cliente no momento do projeto do pipeline. Este agente de serviço é adicionado automaticamente a um projeto quando você ativa a API Cloud Data Fusion. Ele é usado para todas as instâncias do projeto.
O agente de serviço tem as seguintes responsabilidades:
comunicação com outros serviços, como o Cloud Storage; BigQuery ou Datastream durante o projeto do pipeline.
Ativar a execução provisionando clusters do Dataproc para enviar jobs de pipeline.
Papéis da conta de serviço do Cloud Data Fusion
Por padrão, a conta de serviço do Cloud Data Fusion tem apenas o
Papel de agente de serviço da API Cloud Data Fusion
(roles/datafusion.serviceAgent
).
O nome principal deste agente de serviço é
service-CUSTOMER_PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com
:
Os recursos padrão a seguir estão associados à API Data Fusion Agente de serviço.
Papel | Recurso | Permissões |
---|---|---|
Agente de serviço da API Cloud Data Fusion | Serviços associados:
|
Consulte as permissões do agente de serviço da API Cloud Data Fusion. |
Conta de serviço padrão ou personalizada do Compute Engine
A conta de serviço do Compute Engine é a conta padrão O Cloud Data Fusion usa para implantar e executar jobs que acessam outros recursos do Google Cloud. Por padrão, ele é anexado a um VM do cluster do Dataproc para permitir que o Cloud Data Fusion acesse do Dataproc durante uma execução de pipeline.
Escolha uma conta de serviço personalizada para anexar ao Dataproc. cluster na hora de criar uma instância do Cloud Data Fusion Perfis de computação na interface da Web do Cloud Data Fusion.
Para mais informações, consulte Contas de serviço no Cloud Data Fusion.
Papéis para a conta de serviço do Compute Engine
Por padrão, para acessar recursos (como origens e coletores) ao executar uma pipeline, o Cloud Data Fusion usa Conta de serviço padrão do Compute Engine
É possível configurar uma conta de serviço personalizada gerenciada pelo usuário para instâncias do Cloud Data Fusion e conceda um papel a essa conta. Depois, é possível escolher essa conta de serviço ao criar novas instâncias.
Papel Executor do Cloud Data Fusion
No projeto que contém a instância do Cloud Data Fusion, tanto para padrões
e contas de serviço personalizadas gerenciadas pelo usuário, conceda ao
função (datafusion.runner
).
Papel | Descrição | Permissão |
---|---|---|
Executor do Data Fusion (datafusion.runner) |
Permite que a conta de serviço do Compute Engine se comunique serviços do Cloud Data Fusion na projeto de locatário | datafusion.instances.runtime |
Papel Usuário da conta de serviço
Na conta de serviço padrão ou gerenciada pelo usuário no projeto em que
os clusters do Dataproc são iniciados quando você executa pipelines, conceda à
conta de serviço do Cloud Data Fusion o papel de usuário da conta de serviço
(roles/iam.serviceAccountUser
).
Para mais informações, consulte Conceder permissão à conta de serviço.
Papel Worker do Dataproc
Para executar os jobs em clusters do Dataproc, conceda o papel de worker do Dataproc
papel (roles/dataproc.worker
) para o serviço padrão ou gerenciado pelo usuário
contas usadas pelos pipelines do Cloud Data Fusion.
Funções para usuários
Para acionar qualquer operação no Cloud Data Fusion, você (o principal) precisa têm permissões suficientes. As permissões individuais são agrupadas em papéis, e você conceder papéis a esse principal.
Se o RBAC não estiver ativado ou se você estiver usando uma edição do Cloud Data Fusion que não oferece suporte ao RBAC, os usuários com qualquer função do IAM do Cloud Data Fusion terão acesso total à interface da Web do Cloud Data Fusion. O papel de administrador só permite que os usuários gerenciem a instância, como
Operações Create
, Update
, Upgrade
e Delete
.
Conceda os papéis a seguir aos principais, dependendo das permissões necessárias no Cloud Data Fusion.
Papel | Descrição | Permissões |
---|---|---|
Administrador do Cloud Data Fusion (roles/datafusion.admin ) |
Todas as permissões de leitor e permissões para criar, atualizar e excluir instâncias do Cloud Data Fusion. |
|
Leitor do Cloud Data Fusion (roles/datafusion.viewer ) |
|
|
Acessar recursos em outro projeto no momento do design
Esta seção descreve o controle de acesso em recursos localizados em um um projeto do Google Cloud diferente da instância do Cloud Data Fusion criada no momento tempo de resposta.
Quando você projeta pipelines na Web do Cloud Data Fusion interface, você pode usar funções, como Wrangler ou Prévia, que acessar recursos em outros projetos.
As seções a seguir descrevem como determinar a conta de serviço no ambiente de execução e, em seguida, conceda as permissões apropriadas.
Determinar a conta de serviço do ambiente
O nome da conta de serviço é o Cloud Data Fusion, e o principal
para este agente de serviço
service-CUSTOMER_PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com
:
Conceder permissão para acessar recursos em outro projeto
Para conceder os papéis que dão permissão para acessar vários recursos, siga estas etapas:
- No projeto em que o recurso de destino existe, adicione o
Conta de serviço do Cloud Data Fusion (
service-CUSTOMER_PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com
) como principal. - Conceda papéis à conta de serviço do Cloud Data Fusion no destino no projeto em que o recurso de destino existe.
Depois de conceder os papéis, você pode acessar recursos em um projeto diferente em o tempo de design da mesma forma que você acessa recursos do projeto instância está localizada.
Acessar recursos em outro projeto no ambiente de execução
Esta seção descreve o controle de acesso a recursos localizados em um projeto do Google Cloud diferente da sua instância do Cloud Data Fusion no momento da execução.
No momento da execução, você executa o pipeline em um cluster do Dataproc, que pode acessar recursos em outros projetos. Por padrão, o O cluster do Dataproc é iniciado no mesmo projeto a instância do Cloud Data Fusion, mas é possível usar clusters em outra projeto.
Para acessar os recursos em outros projetos do Google Cloud, siga estas etapas:
- Determine a conta de serviço do seu projeto.
- No projeto em que o recurso está, conceda papéis do IAM à conta de serviço padrão do Compute Engine para conceder acesso recursos em outro projeto.
Determinar a conta de serviço do Compute Engine
Para mais informações sobre a conta de serviço do Compute Engine, consulte Sobre o IAM no Cloud Data Fusion.
Conceder acesso a recursos do IAM em outro projeto
A conta de serviço padrão do Compute Engine requer permissões para acessar recursos em outro projeto. Esses papéis e permissões podem ser diferentes dependendo do recurso que você quer acessar.
Para acessar os recursos, siga estas etapas:
- Conceda papéis e permissões, especificando o serviço do Compute Engine como uma conta principal no projeto em que o recurso de destino existe.
- Adicionar papéis apropriados para acessar o recurso.
Permissões da API do Cloud Data Fusion
As seguintes permissões são necessárias para executar o API Cloud Data Fusion.
Chamada de API | Permissão |
---|---|
instances.create |
datafusion.instances.create |
instances.delete |
datafusion.instances.delete |
instances.list |
datafusion.instances.list |
instances.get |
datafusion.instances.get |
instances.update |
datafusion.instances.update |
operations.cancel |
datafusion.operations.cancel |
operations.list |
datafusion.operations.list |
operations.get |
datafusion.operations.get |
Permissões para tarefas comuns
As tarefas comuns no Cloud Data Fusion exigem as seguintes permissões:
Tarefa | Permissões |
---|---|
Como acessar a interface da Web do Cloud Data Fusion | datafusion.instances.get |
Acesse a página Instâncias do Cloud Data Fusion em o console do Google Cloud | datafusion.instances.list |
Como acessar a página Detalhes de uma instância | datafusion.instances.get |
Criar uma nova instância | datafusion.instances.create |
Como atualizar rótulos e opções avançadas para personalizar uma instância | datafusion.instances.update |
Como excluir uma instância | datafusion.instances.delete |
A seguir
- Saiba mais sobre o controle de acesso entre vários projetos.