Proteger o lake

Com o modelo de segurança do Dataplex, é possível gerenciar quem tem acesso para realizar as seguintes tarefas:

  • Administrar um lake (criar e anexar recursos, zonas e outros lagos)
  • Acesso aos dados conectados a um lake por meio do recurso de mapeamento (recursos do Google Cloud, como buckets do Cloud Storage e conjuntos de dados do BigQuery)
  • Como acessar metadados sobre os dados conectados a um lake

Um administrador de um lake controla o acesso aos recursos do Dataplex (lago, zona e recursos) concedendo os papéis básicos e predefinidos a seguir.

Papéis básicos

Papel Descrição
Leitor do Dataplex
(roles/dataplex.viewer)
Capacidade de visualizar, mas não editar, o lake e as zonas e os recursos configurados.
Editor do Dataplex
(roles/dataplex.editor)
Capacidade de editar o lake. Pode criar e configurar lakes, zonas, recursos e tarefas.
Administrador do Dataplex
(roles/dataplex.administrator)
Capacidade de administrar um lake.
Desenvolvedor do Dataplex
(roles/dataplex.developer)
Capacidade de executar cargas de trabalho de análise de dados em um lake. *
* Para consultar uma tabela do BigQuery, você precisa de permissão para executar um job do BigQuery. Defina essa permissão no projeto que você quer atribuir ou cobrar pelo gasto de computação do job. Para mais informações, consulte Permissões e papéis predefinidos do BigQuery.
Para executar um job do Spark, crie clusters do Dataproc e envie jobs do Dataproc no projeto a que você quer que a computação seja atribuída.

Papéis predefinidos

O Google Cloud gerencia os papéis a seguir, que fornecem acesso granular ao Dataplex.

Papéis de metadados

Os papéis de metadados podem visualizar metadados, como esquemas de tabelas.

Papel Descrição
Gravador de metadados do Dataplex
(roles/dataplex.metadataWriter)
Capacidade de atualizar os metadados de um determinado recurso.
Leitor de metadados do Dataplex
(roles/dataplex.metadataReader)
Capacidade de ler os metadados (por exemplo, consultar uma tabela).

Funções de dados

A atribuição de papéis de dados a um principal permite que ele leia ou grave dados nos recursos subjacentes indicados pelos recursos do lake.

O Dataplex associa os papéis aos papéis de dados de cada recurso de armazenamento subjacente (Cloud Storage, BigQuery).

O Dataplex converte e propaga papéis de dados do Dataplex para o recurso de armazenamento subjacente, definindo os papéis corretos para cada recurso de armazenamento. A vantagem é que é possível conceder um único papel de dados do Dataplex na hierarquia do lake (por exemplo, um lake), e o Dataplex mantém o acesso especificado aos dados em todos os recursos conectados a esse lake (por exemplo, buckets do Cloud Storage e conjuntos de dados do BigQuery são referenciados por recursos nas zonas subjacentes).

Por exemplo, conceder a um principal o papel dataplex.dataWriter para um lake fornece ao principal acesso de gravação a todos os dados no lake, às zonas e recursos subjacentes dele. Os papéis de acesso aos dados concedidos em um nível inferior (zona) são herdados na hierarquia do lake para os recursos subjacentes.

Papel Descrição
Leitor de dados do Dataplex
(roles/dataplex.dataReader)
Capacidade de ler dados do armazenamento anexado a recursos, incluindo buckets de armazenamento e conjuntos de dados do BigQuery (e seus conteúdos). *
Gravador de dados do Dataplex
(roles/dataplex.dataWriter)
Capacidade de gravar nos recursos subjacentes indicados pelo recurso. *
Proprietário de dados do Dataplex
(roles/dataplex.dataOwner)
Concede o papel de Proprietário aos recursos subjacentes, incluindo a capacidade de gerenciar recursos filhos. Por exemplo, como proprietário dos dados de um conjunto de dados do BigQuery, você pode gerenciar as tabelas subjacentes.

Proteger o lake

É possível proteger e gerenciar o acesso ao seu lake e aos dados associados a ele. No console do Google Cloud, use uma das seguintes visualizações:

  • Visualização Gerenciar do Dataplex, na guia Permissões, ou
  • Visualização Secure do Dataplex

Usar a visualização Gerenciar

A guia Permissões permite gerenciar todas as permissões em um recurso de lake e apresenta uma visualização não filtrada de todas as permissões, incluindo as herdadas.

Para proteger o lake, siga estas etapas:

  1. Acesse o Dataplex no console do Google Cloud.

    Acessar o Dataplex

  2. Navegue até a visualização Gerenciar.

  3. Clique no nome do lake que você criou.

  4. Clique na guia Permissões..

  5. Clique na guia Visualizar por papéis.

  6. Clique em Adicionar para incluir um novo papel. Adicione os papéis Leitor de dados do Dataplex, Gravador de dados e Proprietário de dados.

  7. Verifique se os papéis Leitor de dados do Dataplex, Gravador de dados e Proprietário de dados são exibidos.

Usar a visualização Seguro

A visualização Seguro do Dataplex no Console do Google Cloud fornece o seguinte:

  • Uma visualização simples e filtrável apenas dos papéis do Dataplex centrados em um recurso específico.
  • Separe os papéis de dados dos papéis de recursos do lake.
Exemplo de permissões de dados que não são herdadas de recursos de lake mais alto
Figura 1: neste exemplo de lake, os dois principais têm permissões de dados no recurso chamado dados do Cloud Storage (dados do GCS). Essas permissões não são herdadas de recursos de lake mais alto.


Exemplo de permissões que não são herdadas de recursos de lake mais alto
Figura 2: este exemplo mostra:
  1. Uma conta de serviço que herda o papel de Administrador do Dataplex do projeto.
  2. Participantes (endereço de e-mail) que herdam os papéis de Editor e Leitor do Dataplex do projeto. Esses papéis se aplicam a todos os recursos.
  3. Um principal (endereço de e-mail) que herda o papel de administrador do Dataplex do projeto.

Gestão de políticas

Depois que você especifica a política de segurança, o Dataplex propaga as permissões para as políticas do IAM dos recursos gerenciados.

A política de segurança configurada no nível do lake é propagada para todos os recursos gerenciados nele. O Dataplex fornece o status e a visibilidade dessas propagações em grande escala na guia Gerenciar > Permissões do Dataplex. Ele monitora continuamente os recursos gerenciados em busca de alterações na política do IAM fora do Dataplex.

Os usuários que já têm permissões em um recurso continuam com essas permissões depois que um recurso é anexado a um lake do Dataplex. Da mesma forma, as vinculações de papéis que não são do Dataplex criadas ou atualizadas após a anexação do recurso ao Dataplex permanecem as mesmas.

Definir políticas no nível da coluna, da linha e da tabela

Os recursos de bucket do Cloud Storage têm tabelas externas associadas do BigQuery anexadas a eles.

É possível fazer upgrade de um recurso de bucket do Cloud Storage, o que significa que o Dataplex remove as tabelas externas anexadas e anexa as tabelas do BigLake.

É possível usar tabelas do BigLake em vez de tabelas externas para oferecer controle de acesso refinado, incluindo controles no nível da linha, controles no nível da coluna e máscara dos dados da coluna.

Segurança de metadados

Os metadados referem-se principalmente a informações de esquema associadas aos dados do usuário presentes em recursos gerenciados por um lake.

A descoberta do Dataplex examina os dados em recursos gerenciados e extrai informações do esquema tabular. Essas tabelas são publicadas em sistemas do BigQuery, do metastore do Dataproc e do Data Catalog.

BigQuery

Cada tabela descoberta tem uma tabela associada registrada no BigQuery. Para cada zona, há um conjunto de dados associado do BigQuery em que todas as tabelas externas associadas às tabelas descobertas nessa zona de dados são registradas.

As tabelas hospedadas no Cloud Storage descobertas são registradas no conjunto de dados criado para a zona.

Dataproc Metastore

Os bancos de dados e as tabelas são disponibilizados no Metastore do Dataproc associado à instância de lake do Dataplex. Cada zona de dados tem um banco de dados associado, e cada recurso pode ter uma ou mais tabelas associadas.

Para proteger os dados em um serviço Metastore do Dataproc, configure a rede VPC-SC. A instância do metastore do Dataproc é fornecida ao Dataplex durante a criação do lake, o que já o torna um recurso gerenciado pelo usuário.

Data Catalog

Cada tabela descoberta tem uma entrada associada no Data Catalog, para permitir a pesquisa e a descoberta.

Como o Data Catalog exige nomes de políticas do IAM durante a criação da entrada, o Dataplex fornece o nome da política do IAM do recurso do Dataplex a que a entrada precisa estar associada. Como resultado, as permissões na entrada do Dataplex são determinadas pelas permissões no recurso do recurso. Conceda o papel Leitor de metadados do Dataplex (roles/dataplex.metadataReader) e o papel Gravador de metadados do Dataplex (roles/dataplex.metadataWriter) no recurso do recurso.

A seguir