Gerenciamento de permissões em conjuntos de dados que usam repositórios de dados externos - AWS Lake Formation

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Gerenciamento de permissões em conjuntos de dados que usam repositórios de dados externos

Com a federação de AWS Glue Data Catalog metadados (federação do catálogo de dados), você pode conectar o catálogo de dados a metastores externos que armazenam metadados para seus dados do Amazon S3 e gerenciar com segurança as permissões de acesso aos dados usando. AWS Lake Formation Você não precisa migrar os metadados do repositório externo para o catálogo de dados.

O Catálogo de Dados fornece um repositório centralizado de metadados que facilita o gerenciamento e a descoberta de dados em sistemas diferentes. Quando sua organização gerencia dados no catálogo de dados, você pode usar AWS Lake Formation para controlar o acesso aos seus conjuntos de dados no Amazon S3.

nota

Atualmente, oferecemos suporte somente à federação de repositórios do Apache Hive (versão 3 e superior).

Para configurar a federação do Catálogo de Dados, fornecemos um aplicativo AWS Serverless Application Model (AWS SAM) chamado GlueDataCatalogFederation- HiveMetastore no AWS Serverless Application Repository.

A implementação de referência é fornecida GitHub como um projeto de código aberto na AWS Glue Data Catalog Federation - Hive Metastore.

O AWS SAM aplicativo cria e implanta os seguintes recursos que são necessários para conectar o Catálogo de Dados ao metastore do Hive:

  • Uma AWS Lambda função — Hospeda a implementação do serviço de federação que se comunica entre o Catálogo de Dados e o metastore do Hive. AWS Glue invoca essa função Lambda para recuperar objetos de metadados do metastore Hive.

  • Amazon API Gateway — O endpoint de conexão do seu repositório do Hive que atua como um proxy para rotear todas as invocações para a função do Lambda.

  • Uma função do IAM — uma função com as permissões necessárias para criar a conexão entre o catálogo de dados e o metastore do Hive.

  • AWS Glue conexão — Um Amazon API Gateway tipo de AWS Glue conexão que armazena o Amazon API Gateway endpoint e uma função do IAM para invocá-lo.

Quando você consulta tabelas, o AWS Glue serviço faz uma chamada de tempo de execução para o metastore do Hive e busca os metadados. A função do Lambda atua como um tradutor entre o Repositório do Hive e o catálogo de dados.

Após estabelecer a conexão, para sincronizar os metadados na repositório do Hive com o catálogo de dados, você precisa criar um banco de dados federado no catálogo de dados usando as informações da conexão do repositório do Hive, e mapear esse banco de dados para o banco de dados do Hive. Um banco de dados é chamado de banco de dados federado quando aponta para uma entidade fora do catálogo de dados.

Você pode aplicar as permissões do Lake Formation usando o controle de acesso baseado em tags e o método de recurso nomeado no banco de dados federado e compartilhá-lo entre várias Contas da AWS unidades organizacionais (OUs). AWS Organizations Você também pode compartilhar o banco de dados federado diretamente com as entidades principais do IAM de outra conta.

Você pode definir permissões refinadas em nível de coluna, nível de linha e nível de célula usando filtros de dados do Lake Formation nas tabelas externas do Hive. Você pode usar o Amazon Athena, o Amazon Redshift ou o Amazon EMR para consultar as tabelas externas gerenciadas pelo Lake Formation do Hive.

Para obter mais informações sobre compartilhamento de dados entre contas e filtragem de dados, consulte:

Etapas de alto nível da federação de metadados do catálogo de dados
  1. Você cria usuários e funções do IAM que têm as permissões apropriadas para implantar o AWS SAM aplicativo e criar bancos de dados federados.

  2. Você registra o local dos dados do Amazon S3 com o Lake Formation selecionando a opção Enable Data Catalog federation para conjuntos de dados que usam um repositório externo do Hive.

  3. Você define as configurações do AWS SAM aplicativo (nome da AWS Glue conexão, URL para o metastore do Hive e parâmetros da função Lambda) e implanta o aplicativo. AWS SAM

  4. O AWS SAM aplicativo implanta os recursos necessários para conectar o metastore externo do Hive ao Catálogo de Dados.

  5. Para aplicar as permissões do Lake Formation no banco de dados e nas tabelas do Hive, você cria um banco de dados no Catálogo de Dados usando os detalhes da conexão do Hive Metastore e mapeia esse banco de dados para o banco de dados do Hive.

  6. Conceda permissões nos bancos de dados federados às entidades principais da sua conta ou de outra conta.

nota

Você pode conectar o Data Catalog a um repositório externo do Hive, criar bancos de dados federados e executar consultas e scripts do ETL em bancos de dados e tabelas do Hive sem aplicar as permissões do Lake Formation. Para dados de origem no Amazon S3 que não estão registrados no Lake Formation, o acesso é determinado pelas políticas de permissões do IAM para o Amazon AWS Glue S3 e pelas ações.

Para conhecer as limitações, consulte Considerações e limitações do compartilhamento de dados de armazenamento de metadados do Hive.

Fluxo de trabalho

O diagrama a seguir mostra o fluxo de trabalho para conectar o AWS Glue Data Catalog a um metastore externo do Hive.

Workflow diagram showing Hive metastore connection to AWS Glue Data Catalog with numbered steps.
  1. Uma entidade principal envia uma consulta usando um serviço integrado, como Athena ou Redshift Spectrum.

  2. O serviço integrado faz uma chamada para o Catálogo de Dados para obter os metadados, que por sua vez chama o endpoint do metastore Hive disponível por trás Amazon API Gateway e recebe respostas às solicitações de metadados.

  3. O serviço integrado envia a solicitação ao Lake Formation para verificar as informações e credenciais da tabela para acessar a tabela.

  4. O Lake Formation autoriza a solicitação e fornece credenciais temporárias para o aplicativo integrado, que permite o acesso aos dados.

  5. Ao usar as credenciais temporárias recebidas do Lake Formation, o serviço integrado lê os dados do Amazon S3 e compartilha os resultados com a entidade principal.