Esta página descreve o caso de uso em que você controla o acesso aos recursos do Google Cloud no nível do namespace ao migrar dados do Cloud Storage para o BigQuery.
Para controlar o acesso aos recursos do Google Cloud, os namespaces no Cloud Data Fusion usam o Agente de serviço da API Data Fusion por padrão.
Para um melhor isolamento de dados, é possível associar uma conta de serviço personalizada do IAM (conhecida como conta de serviço por namespace) a cada namespace. A conta de serviço personalizada do IAM, que pode ser diferente para diferentes namespaces, permite controlar o acesso a recursos do Google Cloud entre namespaces para operações de tempo de design do pipeline no Cloud Data Fusion, como visualização do pipeline, Wrangler e validação do pipeline.
Para mais informações, consulte Controle de acesso com contas de serviço de namespace.
Cenário
Neste caso de uso, o departamento de marketing migra dados do Cloud Storage para o BigQuery usando o Cloud Data Fusion.
O departamento de marketing tem três equipes: A, B e C. Seu objetivo é estabelecer uma abordagem estruturada para controlar o acesso aos dados no Cloud Storage usando namespaces do Cloud Data Fusion correspondentes a cada equipe (A, B e C, respectivamente).
Solução
As etapas a seguir mostram como controlar o acesso aos recursos do Google Cloud com contas de serviço de namespace, impedindo o acesso não autorizado entre os bancos de dados de diferentes equipes.
Associar uma conta de serviço do Identity and Access Management a cada namespace
Configurar uma conta de serviço do IAM no namespace para cada equipe (consulte Configure uma conta de serviço de namespace):
Configurar o controle de acesso adicionando uma conta de serviço personalizada para Equipe A, por exemplo,
team-a@pipeline-design-time-project.iam.gserviceaccount.com
:Repita as etapas de configuração para as equipes B e C para configurar o controle de acesso com contas de serviço personalizadas semelhantes.
Limitar o acesso aos buckets do Cloud Storage
Limite o acesso aos buckets do Cloud Storage concedendo as permissões adequadas:
- Conceda à conta de serviço do IAM a permissão
storage.buckets.list
, necessária para listar buckets do Cloud Storage no projeto. Para mais informações, consulte Como listar buckets. Conceda permissão à conta de serviço do IAM para acessar os objetos em determinados buckets.
Por exemplo, conceda o papel de Leitor de objetos do Storage à conta de serviço do IAM associada ao espaço de nomes
team_A
no bucketteam_a1
. Essa permissão permite que a Equipe A visualize e liste objetos e pastas gerenciadas, além dos respectivos metadados, nesse bucket em um ambiente isolado de design.
Criar a conexão do Cloud Storage nos respectivos namespaces
Crie a conexão do Cloud Storage no namespace de cada equipe:
No console do Google Cloud, acesse a página Instâncias do Cloud Data Fusion e abra uma instância na interface da Web do Cloud Data Fusion.
Clique em Administrador do sistema > Configuração > Namespaces.
Clique no namespace que você quer usar, por exemplo, o namespace da Equipe A.
Clique na guia Conexões e em Adicionar conexão.
Selecione GCS e configure a conexão.
Criar uma conexão do Cloud Storage para cada namespace repetindo as etapas anteriores. Cada equipe pode interagir com um grupo uma cópia desse recurso para as operações de tempo de design.
Validar o isolamento de tempo de design para cada namespace
A Equipe A pode validar o isolamento durante o projeto acessando o Cloud Storage buckets nos respectivos namespaces:
No console do Google Cloud, acesse o Cloud Data Fusion Instâncias e abra uma instância na Web do Cloud Data Fusion interface gráfica do usuário.
Clique em Administrador do sistema > Configuração > Namespaces.
Selecione um namespace, por exemplo, o namespace da Equipe A,
team_A
.Clique em > Wrangler.
. MenuClique em GCS.
Na lista de buckets, clique no bucket
team_a1
.Você pode conferir a lista de buckets porque o namespace da Equipe A tem permissão
storage.buckets.list
.Ao clicar no bucket, você pode conferir o conteúdo dele porque o namespace da Equipe A tem o papel de leitor de objetos do Storage.
Volte para a lista de buckets e clique no bucket
team_b1
outeam_c1
. O acesso é restrito, já que você isolou esse recurso de tempo de design por Equipe A usando sua conta de serviço de namespace.
A seguir
- Saiba mais sobre segurança atributos no Cloud Data Fusion.