Compartilhamento de um Data Lake usando controle de acesso baseado em tags do Lake Formation e recursos nomeados - 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á.

Compartilhamento de um Data Lake usando controle de acesso baseado em tags do Lake Formation e recursos nomeados

Este tutorial demonstra como você pode configurar AWS Lake Formation para compartilhar com segurança os dados armazenados em um data lake com várias empresas, organizações ou unidades de negócios, sem precisar copiar o banco de dados inteiro. Há duas opções para compartilhar seus bancos de dados e tabelas com outra pessoa Conta da AWS usando o controle de acesso entre contas do Lake Formation:

  • Controle de acesso baseado em tags do Lake Formation (LF-TBAC) (recomendado)

    O controle de acesso baseado em tags do Lake Formation é uma estratégia de autorização que define permissões com base em atributos. No Lake Formation, esses atributos são chamados de tags do LF. Para obter mais detalhes, consulte Como gerenciar um data lake usando o controle de acesso baseado em tags do Lake Formation.

  • Recursos nomeados do Lake Formation

    O método de recurso chamado Lake Formation é uma estratégia de autorização que define permissões para recursos. Os recursos incluem bancos de dados, tabelas e colunas. Os administradores do Data Lake podem atribuir e revogar permissões em recursos do Lake Formation. Para obter mais detalhes, consulte Compartilhamento de dados entre contas no Lake Formation.

    Recomendamos usar recursos nomeados se o administrador do Data Lake preferir conceder permissões explicitamente a recursos individuais. Quando você usa o método de recurso nomeado para conceder permissões do Lake Formation em um recurso do Catálogo de Dados para uma conta externa, o Lake Formation usa AWS Resource Access Manager (AWS RAM) para compartilhar o recurso.

Público-alvo

Este tutorial é destinado a administradores de dados, engenheiros de dados e analistas de dados. Quando se trata de compartilhar tabelas do Catálogo de Dados AWS Glue e administrar permissões no Lake Formation, os administradores de dados nas contas produtoras têm propriedade funcional com base nas funções que suportam e podem conceder acesso a vários consumidores, organizações externas e contas. A tabela a seguir lista os perfis usados neste tutorial:

Perfil Descrição
DataLakeAdminProducer O IAM usuário administrador do data lake tem o seguinte acesso:
  • Acesso completo de leitura, gravação e atualização a todos os recursos do catálogo de dados

  • Capacidade de conceder permissões aos recursos

  • Criar um link de recurso para a tabela compartilhada

  • Pode anexar tags do LF aos recursos, fornecendo acesso às entidades principais com base em quaisquer políticas criadas por administradores de dados

DataLakeAdminConsumer

O IAM usuário administrador do data lake tem o seguinte acesso:

  • Acesso completo de leitura, gravação e atualização a todos os recursos do catálogo de dados

  • Capacidade de conceder permissões aos recursos

  • Criar um link de recurso para a tabela compartilhada

  • Pode anexar tags do LF aos recursos, fornecendo acesso às entidades principais com base em quaisquer políticas criadas por administradores de dados

DataAnalyst O DataAnalyst usuário tem o seguinte acesso:
  • Acesso refinado a recursos compartilhados pelas políticas de acesso baseadas em tags do Lake Formation ou usando o método de recursos nomeados

Definir as configurações do catálogo de dados do Lake Formation na conta do produtor

Antes de começar este tutorial, você deve ter um Conta da AWS que possa ser usado para entrar como usuário administrativo com as permissões corretas. Para obter mais informações, consulte Conclua AWS as tarefas de configuração inicial.

O tutorial pressupõe que você esteja familiarizado comIAM. Para obter informações sobreIAM, consulte o Guia IAM do usuário.

Definir as configurações do catálogo de dados do Lake Formation na conta do produtor
nota

Neste tutorial, a conta que tem a tabela de origem é chamada de conta do produtor, e a conta que precisa acessar a tabela de origem é chamada de conta do consumidor.

O Lake Formation fornece seu próprio modelo de gerenciamento de permissões. Para manter a compatibilidade com versões anteriores do modelo de IAM permissão, a Super permissão é concedida ao grupo IAMAllowedPrincipals em todos os AWS Glue Data Catalog recursos existentes por padrão. Além disso, as configurações Usar somente controle de IAM acesso estão habilitadas para novos recursos do Catálogo de Dados. Este tutorial usa controle de acesso refinado usando permissões do Lake Formation e IAM políticas de uso para controle de acesso de baixa granularidade. Para mais detalhes, consulte Métodos para controle de acesso de alta granularidade. Portanto, antes de usar um AWS CloudFormation modelo para uma configuração rápida, você precisa alterar as configurações do Lake Formation Data Catalog na conta do produtor.

Importante

Essa configuração afeta todos os bancos de dados e tabelas recém-criados, portanto, é altamente recomendável concluir este tutorial em uma conta que não seja de produção ou em uma nova conta. Além disso, se você estiver usando uma conta compartilhada (como a conta de desenvolvimento da sua empresa), certifique-se de que ela não afete outros recursos. Se você preferir manter as configurações de segurança padrão, conclua uma etapa adicional ao compartilhar recursos com outras contas, na qual você revoga a Super permissão padrão do banco de dados ou da tabela do IAMAllowedPrincipals. Entraremos em detalhes mais adiante neste tutorial.

Para definir as configurações do catálogo de dados do Lake Formation na conta do produtor, conclua as etapas a seguir:

  1. Faça login AWS Management Console usando a conta do produtor como usuário administrador ou como usuário com PutDataLakeSettings API permissão do Lake Formation.

  2. No console do Lake Formation, no painel de navegação, em catálogo de dados, selecione Configurações.

  3. Desmarque Usar somente controle de IAM acesso para novos bancos de dados e Usar somente controle de IAM acesso para novas tabelas em novos bancos de dados

    Escolha Salvar.

    Data catalog settings interface for AWS Lake Formation with permission options.

    Além disso, você pode remover as permissões de CREATE_DATABASE para IAMAllowedPrincipals em Perfis e tarefas administrativas, Criadores de banco de dados. Só então, você pode determinar quem pode criar um novo banco de dados por meio das permissões do Lake Formation.

Etapa 1: provisionar seus recursos usando AWS CloudFormation modelos

O CloudFormation modelo da conta do produtor gera os seguintes recursos:

  • Um bucket do Amazon S3 para servir como Data Lake.

  • Uma função Lambda (para recursos personalizados apoiados pelo Lambda AWS CloudFormation ). Usamos a função para copiar exemplos de arquivos de dados do bucket público do Amazon S3 para o bucket do Amazon S3.

  • IAMusuários e políticas: DataLakeAdminProducer.

  • As configurações e permissões apropriadas do Lake Formation, incluindo:

    • Definir o administrador do data lake do Lake Formation na conta do produtor

    • Registrar um bucket do Amazon S3 como local do Data Lake do Lake Formation (conta do produtor)

  • Um AWS Glue Data Catalog banco de dados, tabela e partição. Como há duas opções para compartilhar recursos Contas da AWS, esse modelo cria dois conjuntos separados de banco de dados e tabela.

O AWS CloudFormation modelo da conta do consumidor gera os seguintes recursos:

  • IAMusuários e políticas:

    • DataLakeAdminConsumer

    • DataAnalyst

  • Um AWS Glue Data Catalog banco de dados. Esse banco de dados serve para criar links de recursos para recursos compartilhados.

Crie seus recursos na conta do produtor
  1. Faça login no AWS CloudFormation console em https://console.aws.amazon.com/cloudformation na região Leste dos EUA (Norte da Virgínia).

  2. Selecione Iniciar Pilha.

  3. Selecione Avançar.

  4. Em Nome da pilha, digite um nome de pilha, como stack-producer.

  5. Na seção Configuração do usuário, insira o nome de usuário e a senha para ProducerDatalakeAdminUserName e ProducerDatalakeAdminUserPassword.

  6. Para DataLakeBucketName, insira o nome do seu bucket do data lake. Esse nome precisa ser globalmente exclusivo.

  7. Para DatabaseNamee TableName, deixe os valores padrão.

  8. Escolha Próximo.

  9. Na página seguinte, selecione Avançar.

  10. Analise os detalhes na página final e selecione Eu reconheço que isso AWS CloudFormation pode criar IAM recursos.

  11. Escolha Criar.

    A criação da pilha pode levar até um minuto.

Crie seus recursos na conta do consumidor
  1. Faça login no AWS CloudFormation console em https://console.aws.amazon.com/cloudformation na região Leste dos EUA (Norte da Virgínia).

  2. Selecione Iniciar Pilha.

  3. Selecione Avançar.

  4. Em Nome da pilha, digite um nome de pilha, como stack-consumer.

  5. Na seção Configuração do usuário, insira o nome de usuário e a senha para ConsumerDatalakeAdminUserName e ConsumerDatalakeAdminUserPassword.

  6. Para DataAnalystUserName eDataAnalystUserPassword, insira o nome de usuário e a senha que você deseja para o IAM usuário analista de dados.

  7. Para DataLakeBucketName, insira o nome do seu bucket do data lake. Esse nome precisa ser globalmente exclusivo.

  8. Para DatabaseName, deixe os valores padrão.

  9. Em AthenaQueryResultS3BucketName, insira o nome do bucket do Amazon S3 que armazena resultados da consulta do Amazon Athena. Se você não tiver um, crie um bucket da Amazon S3.

  10. Selecione Avançar.

  11. Na página seguinte, selecione Avançar.

  12. Analise os detalhes na página final e selecione Eu reconheço que isso AWS CloudFormation pode criar IAM recursos.

  13. Escolha Criar.

    A criação da pilha pode levar até um minuto.

nota

Depois de concluir o tutorial, exclua a pilha AWS CloudFormation para evitar cobranças. Verifique se os recursos foram excluídos com sucesso no status de eventos da pilha.

Etapa 2: Pré-requisitos de compartilhamento entre contas do Lake Formation

Antes de compartilhar recursos com o Lake Formation, há pré-requisitos tanto para o método de controle de acesso baseado em tags quanto para o método de recursos nomeados.

Controle de acesso completo com base em tags: pré-requisitos do para compartilhamento de dados do entre contas
  • Para obter mais informações sobre os requisitos de compartilhamento de dados entre contas, consulte a seção Pré-requisitos no capítulo Compartilhamento de dados entre contas.

    Para compartilhar recursos do Catálogo de Dados com a versão 3 ou superior das configurações da versão Cross Account, o concedente precisa ter as IAM permissões definidas na política AWS gerenciada AWSLakeFormationCrossAccountManager em sua conta.

    Se você estiver usando a versão 1 ou a versão 2 das Configurações de versão entre contas, antes de usar o método de controle de acesso baseado em tags para conceder acesso entre contas aos recursos, você deve adicionar o seguinte objeto de permissões JSON à política de recursos do catálogo de dados na conta do produtor. Isso dá à conta do consumidor permissão para acessar o catálogo de dados quando glue:EvaluatedByLakeFormationTags é verdadeiro. Além disso, essa condição se torna verdadeira para recursos nos quais você concedeu permissão usando tags de permissão do Lake Formation para a conta do consumidor. Essa política é necessária Conta da AWS para todas as quais você está concedendo permissões.

    A política a seguir deve estar dentro de um elementoStatement. Discutiremos a IAM política completa na próxima seção.

    { "Effect": "Allow", "Action": [ "glue:*" ], "Principal": { "AWS": [ "consumer-account-id" ] }, "Resource": [ "arn:aws:glue:region:account-id:table/*", "arn:aws:glue:region:account-id:database/*", "arn:aws:glue:region:account-id:catalog" ], "Condition": { "Bool": { "glue:EvaluatedByLakeFormationTags": true } } }
Preencha os pré-requisitos de compartilhamento entre contas do método de recurso nomeado
  1. Se não houver uma política de recursos do catálogo de dados em sua conta, as concessões entre contas do Lake Formation que você fizer procederão normalmente. No entanto, se existir uma política de recursos do catálogo de dados, você deverá adicionar a seguinte declaração a ela para permitir que suas concessões entre contas sejam bem-sucedidas se forem feitas com o método de recurso nomeado. Se você planeja usar somente o método de recurso nomeado ou somente o método de controle de acesso baseado em tag, você pode pular esta etapa. Neste tutorial, avaliamos os dois métodos e precisamos adicionar a política a seguir.

    A política a seguir deve estar dentro de um elementoStatement. Discutiremos a IAM política completa na próxima seção.

    { "Effect": "Allow", "Action": [ "glue:ShareResource" ], "Principal": { "Service":"ram.amazonaws.com" }, "Resource": [ "arn:aws:glue:region:account-id:table/*/*", "arn:aws:glue:region:account-id:database/*", "arn:aws:glue:region:account-id:catalog" ] }
  2. Em seguida, adicione a política de AWS Glue Data Catalog recursos usando o AWS Command Line Interface (AWS CLI).

    Se você conceder permissões entre contas usando o método de controle de acesso baseado em tags e o método de recurso nomeado, defina o argumento EnableHybrid como “true” ao adicionar as políticas anteriores. Porque essa opção não é suportada atualmente no console e você deve usar o glue:PutResourcePolicy API AWS CLI e.

    Primeiro, crie um documento de política (como policy.json) e adicione as duas políticas anteriores. Substituir consumer-account-id com o account ID do Conta da AWS recebimento da bolsa, region com a região do catálogo de dados contendo os bancos de dados e tabelas para os quais você está concedendo permissões, e account-id com o Conta da AWS ID do produtor.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ram.amazonaws.com" }, "Action": "glue:ShareResource", "Resource": [ "arn:aws:glue:region:account-id:table/*/*", "arn:aws:glue:region:account-id:database/*", "arn:aws:glue:region:account-id:catalog" ] }, { "Effect": "Allow", "Principal": { "AWS": "region:account-id" }, "Action": "glue:*", "Resource": [ "arn:aws:glue:region:account-id:table/*/*", "arn:aws:glue:region:account-id:database/*", "arn:aws:glue:region:account-id:catalog" ], "Condition": { "Bool": { "glue:EvaluatedByLakeFormationTags": "true" } } } ] }

    Digite o AWS CLI comando a seguir. Substituir glue-resource-policy com os valores corretos (como file: //policy.json).

    aws glue put-resource-policy --policy-in-json glue-resource-policy --enable-hybrid TRUE

    Para obter mais informações, consulte put-resource-policy.

Etapa 3: Implementar o compartilhamento entre contas usando o método de controle de acesso baseado em tags

Nesta seção, orientamos sobre estas etapas de alto nível:

  1. Defina uma tag do LF.

  2. Atribua a tag do LF ao recurso de destino.

  3. Conceda permissão da tag do LF à conta do consumidor.

  4. Conceda permissão de dados à conta do consumidor.

  5. Opcionalmente, revogue as permissões para IAMAllowedPrincipals no banco de dados, nas tabelas e nas colunas.

  6. Crie um link de recurso para a tabela compartilhada.

  7. Crie uma tag do LF e atribua-a ao banco de dados de destino.

  8. Conceda permissão de dados da tag do LF à conta do consumidor.

Defina uma tag do LF
nota

Se você estiver conectado à sua conta de produtor, saia antes de concluir as etapas a seguir.

  1. Faça login na conta do produtor como administrador do data lake em https://console.aws.amazon.com/lakeformation/. Use o número da conta do produtor, o nome de IAM usuário (o padrão éDatalakeAdminProducer) e a senha que você especificou durante a criação da AWS CloudFormation pilha.

  2. No console do Lake Formation (https://console.aws.amazon.com/lakeformation/), no painel de navegação, em Permissões, escolha LF-Tags and Permissions.

  3. Selecione Adicionar tag do LF.

Atribua a tag do LF ao recurso de destino

Atribua a tag do LF ao recurso de destino e conceda permissões de dados para outra conta

Como administrador do Data Lake, você pode anexar tags aos recursos. Se você planeja usar uma função separada, talvez seja necessário conceder permissões, descrever e anexar ao perfil separado.

  1. No painel de navegação, em catálogo de dados, selecione Bancos de Dados.

  2. Selecione o banco de dados de destino (lakeformation_tutorial_cross_account_database_tbac) e, no menu Ações, selecione Editar tags do LF.

    Neste tutorial, você atribui uma tag do LF a um banco de dados, mas também pode atribuir tags do LF a tabelas e colunas.

  3. Escolha Atribuir nova tag do LF.

  4. Adicione a chave Confidentiality e o valor public.

  5. Selecione Salvar.

Conceda permissão da tag do LF à conta do consumidor.

Ainda na conta do produtor, conceda permissões à conta do consumidor para acessar a tag do LF.

  1. No painel de navegação, em Permissões, selecione permissões e tags do LF.

  2. Escolha a guia LF-Tags e escolha a chave e os valores da etiqueta LF que está sendo compartilhada com a conta do consumidor (chave Confidentiality e valor). public

  3. Escolha Conceder permissões.

  4. Em Tipo de permissão, escolha permissões do par chave-valor da tag LF.

  5. Para Entidades principais, selecione Contas externas.

  6. Insira o ID da Conta da AWS de destino.

    Contas da AWS dentro da mesma organização aparecem automaticamente. Caso contrário, você precisará inserir manualmente o Conta da AWS ID.

  7. Em Permissões, selecione Descrever.

    Essas são as permissões concedidas à conta do consumidor. Permissões concedidas são permissões que a conta do consumidor pode conceder a outras entidades principais.

  8. Selecione Conceder.

    Nesse ponto, o administrador do data lake do consumidor deve ser capaz de encontrar a tag de política que está sendo compartilhada por meio do console Lake Formation da conta do consumidor, em Permissões, LF-tags e permissões.

Conceda a permissão de dados à conta do consumidor.

Agora, forneceremos acesso aos dados da conta do consumidor especificando uma expressão de tag do LF, concedendo à conta do consumidor acesso a qualquer tabela ou banco de dados que corresponda à expressão.

  1. No painel de navegação, em Permissões, Permissões do Data Lake, selecione Conceder.

  2. Em Diretores, escolha Contas externas e insira a Conta da AWS ID de destino.

  3. Em Tags do LF ou recursos de catálogo, escolha a chave e os valores da tag do LF que está sendo compartilhada com a conta do consumidor (chave Confidentiality e valor public).

  4. Em Permissões, em Recursos combinados com tags do LF (recomendado), selecione Adicionar tag do LF.

  5. Selecione a chave e o valor da tag que está sendo compartilhada com a conta do consumidor (chave Confidentiality e valor public).

  6. Para permissões de banco de dados, selecione Descrever em Permissões de banco de dados para conceder permissões de acesso no nível do banco de dados.

  7. O administrador do data lake do consumidor deve ser capaz de encontrar a tag de política que está sendo compartilhada por meio da conta do consumidor no console do Lake Formation em https://console.aws.amazon.com/lakeformation/, em Permissões, funções e tarefas administrativas, LF-Tags.

  8. Selecione Descrever em Permissões concedíveis para que a conta do consumidor possa conceder permissões em nível de banco de dados a seus usuários.

  9. Para Permissões de tabela e coluna, selecione Selecionar e Descrever em Permissões de tabela.

  10. Selecione Selecionar e Descrever em Permissões concedíveis.

  11. Selecione Conceder.

Revogue a permissão para IAMAllowedPrincipals no banco de dados, nas tabelas e nas colunas (opcional).

No início deste tutorial, você alterou as configurações do Lake Formation Data Catalog. Se você pulou essa parte, esta etapa é necessária. Se tiver alterado as configurações do catálogo de dados do Lake Formation, ignore esta etapa.

Nesta etapa, precisamos revogar a Super permissão padrão do banco de dados IAMAllowedPrincipals ou da tabela. Para mais detalhes, consulte Etapa 4: mude seus armazenamentos de dados para o modelo de permissões do Lake Formation.

Antes de revogar a permissão paraIAMAllowedPrincipals, certifique-se de conceder aos IAM diretores existentes a permissão necessária por meio do Lake Formation. Isso inclui três etapas:

  1. Adicione IAM permissão ao IAM usuário ou função de destino com a GetDataAccess ação Lake Formation (com IAM política).

  2. Conceda ao IAM usuário ou função de destino com permissões de dados do Lake Formation (alterar, selecionar e assim por diante).

  3. Em seguida, revogue as permissões para IAMAllowedPrincipals. Caso contrário, após revogar as permissõesIAMAllowedPrincipals, IAM os diretores existentes talvez não consigam mais acessar o banco de dados de destino ou o Catálogo de Dados.

    A revogação da Superpermissão para IAMAllowedPrincipals é necessária quando você deseja aplicar o modelo de permissão do Lake Formation (em vez do modelo de IAM política) para gerenciar o acesso do usuário em uma única conta ou entre várias contas usando o modelo de permissão do Lake Formation. Você não precisa revogar a permissão IAMAllowedPrincipals de outras tabelas nas quais deseja manter o modelo de IAM política tradicional.

    Nesse ponto, o administrador do data lake da conta do consumidor deve ser capaz de encontrar o banco de dados e a tabela que estão sendo compartilhados por meio da conta do consumidor no console do Lake Formation em https://console.aws.amazon.com/lakeformation/bancos de dados, em Catálogo de dados. Caso contrário, confirme se o seguinte está configurado corretamente:

    1. A tag e os valores de política corretos são atribuídos aos bancos de dados e tabelas de destino.

    2. A permissão correta de tag e a permissão de dados são atribuídas à conta do consumidor.

    3. Revogue a super permissão padrão do banco de dados IAMAllowedPrincipals ou da tabela.

Criar um link de recurso para a tabela compartilhada

Quando um recurso é compartilhado entre contas e os recursos compartilhados não são colocados no catálogo de dados das contas do consumidor. Para disponibilizá-los e consultar os dados subjacentes de uma tabela compartilhada usando serviços como o Athena, precisamos criar um link de recurso para a tabela compartilhada. Um link de recurso é um objeto do catálogo de dados que é um link para um banco de dados, ou uma tabela local ou compartilhada. Para obter detalhes, consulte Criação de links de recursos. Ao criar um link de recurso, você pode:

  • Atribuir um nome diferente a um banco de dados ou tabela que esteja alinhado às políticas de nomenclatura de recursos do catálogo de dados.

  • Usar serviços como Athena e Redshift Spectrum para consultar bancos de dados ou tabelas compartilhados.

Para criar um link de recurso, conclua as etapas a seguir:

  1. Se você estiver conectado à sua conta de consumidor, saia.

  2. Faça login como administrador do Data Lake da conta do consumidor. Use o ID da conta do consumidor, o nome de IAM usuário (padrão DatalakeAdminConsumer) e a senha que você especificou durante a criação da AWS CloudFormation pilha.

  3. No console do Lake Formation (https://console.aws.amazon.com/lakeformation/), no painel de navegação, em Catálogo de dados, bancos de dados, escolha o banco de dados lakeformation_tutorial_cross_account_database_tbac compartilhado.

    Se você não vir o banco de dados, revise as etapas anteriores para ver se tudo está configurado corretamente.

  4. Selecione Visualizar Tabelas.

  5. Selecione a tabela compartilhada amazon_reviews_table_tbac.

  6. No menu Ações, selecione Criar link de recurso.

  7. Em Nome do link do recurso, digite um nome (para este tutorial, amazon_reviews_table_tbac_resource_link).

  8. Em Banco de dados, selecione o banco de dados no qual o link do recurso foi criado (para esta postagem, a pilha AWS CloudFormation n criou o banco de dadoslakeformation_tutorial_cross_account_database_consumer).

  9. Escolha Criar.

    O link do recurso aparece em catálogo de dados, Tabelas.

Crie uma tag do LF e atribua-a ao banco de dados de destino

As tags do Lake Formation residem no mesmo catálogo de dados dos recursos. Isso significa que as tags criadas na conta do produtor não estão disponíveis para uso ao conceder acesso aos links de recursos na conta do consumidor. Você precisa criar um conjunto separado de tags do LF na conta do consumidor para usar o controle de acesso baseado em tags do LF ao compartilhar os links de recursos na conta do consumidor.

  1. Defina a tag do LF na conta do consumidor. Para este tutorial, usamos a chave Division e os valores sales, marketing e analyst.

  2. Atribua a chave da tag do LF Division e o valor analyst ao banco de dados lakeformation_tutorial_cross_account_database_consumer, onde o link de recurso é criado.

Conceda permissão de dados da tag do LF ao consumidor

Como etapa final, conceda permissão de dados da tag do LF ao consumidor.

  1. No painel de navegação, em Permissões, Permissões do Data Lake, selecione Conceder.

  2. Para Diretores, escolha IAMusuários e funções e escolha o usuárioDataAnalyst.

  3. Em Recursos de tags do LF ou de catálogo, selecione Recursos correspondentes a tags do LF (recomendado).

  4. Selecione Chave Divisão e analista de valor.

  5. Para Permissões de banco de dados, selecione Descrever em Permissões de banco de dados.

  6. Para Permissões de tabela e coluna, selecione Selecionar e Descrever em Permissões de tabela.

  7. Selecione Conceder.

  8. Repita essas etapas para o usuário DataAnalyst, onde a chave tag do LF é Confidentiality e o valor é public.

    Nesse ponto, o usuário analista de dados na conta do consumidor deve ser capaz de encontrar o link do banco de dados e do recurso e consultar a tabela compartilhada por meio do console do Athena em. https://console.aws.amazon.com/athena/ Caso contrário, confirme se o seguinte está configurado corretamente:

    • O link do recurso é criado para a tabela compartilhada

    • Você concedeu ao usuário acesso à tag do LF compartilhada pela conta do produtor

    • Você concedeu ao usuário acesso à tag do LF associada ao link do recurso e ao banco de dados no qual o link do recurso foi criado

    • Verifique se você atribuiu a tag do LF correta ao link do recurso e ao banco de dados no qual o link do recurso foi criado

Etapa 4: Implementar o método de recurso nomeado

Para usar o método de recurso nomeado, orientamos você nas seguintes etapas de alto nível:

  1. Opcionalmente, revogue a permissão para IAMAllowedPrincipals no banco de dados, nas tabelas e nas colunas.

  2. Conceda a permissão de dados à conta do consumidor.

  3. Aceite um compartilhamento de recursos de AWS Resource Access Manager.

  4. Crie um link de recurso para a tabela compartilhada.

  5. Conceda permissão de dados para a tabela compartilhada ao consumidor.

  6. Conceda permissão de dados para o link de recurso ao consumidor.

Revogue a permissão para IAMAllowedPrincipals no banco de dados, nas tabelas e nas colunas (opcional).
  • No início deste tutorial, alteramos as configurações do Lake Formation Data Catalog. Se você pulou essa parte, esta etapa é necessária. Para obter instruções, consulte a etapa opcional na seção anterior.

Conceda a permissão de dados à conta do consumidor.
  1. nota

    Se você estiver conectado à conta do produtor como outro usuário, saia primeiro.

    Faça login no console do Lake Formation https://console.aws.amazon.com/lakeformation/usando o administrador do data lake da conta do produtor usando o Conta da AWS ID, o nome de IAM usuário (o padrão éDatalakeAdminProducer) e a senha especificados durante a criação da AWS CloudFormation pilha.

  2. Na página Permissões, em Permissões do Data Lake, selecione Conceder.

  3. Em Diretores, escolha Contas externas e insira uma Conta da AWS IDs ou mais AWS organizaçõesIDs. Para obter mais informações, consulte: Organizações AWS.

    As organizações às quais a conta do produtor pertence e Contas da AWS dentro da mesma organização aparecem automaticamente. Caso contrário, insira manualmente o ID da conta ou o ID da organização.

  4. Em Tags do LF ou recursos de catálogo, selecione Named data catalog resources.

  5. Em Bancos de dados, selecione o banco de dados lakeformation_tutorial_cross_account_database_named_resource.

  6. Selecione Adicionar tag do LF.

  7. Em Tabelas, selecione Todas as tabelas.

  8. Para Permissões de coluna de tabela, selecione Selecionar e Descrever em Permissões de tabela.

  9. Escolha Selecionar e Descrever em Permissões concedíveis.

  10. Opcionalmente, para Permissões de dados, escolha Acesso simples baseado em coluna se for necessário o gerenciamento de permissões em nível de coluna.

  11. Selecione Conceder.

Se você não revogou a permissão para IAMAllowedPrincipals, receberá um erro de falha na Concessão de permissões. Nesse ponto, você deve ver a tabela de destino sendo compartilhada AWS RAM com a conta do consumidor em Permissões, Permissões de dados.

Aceite um compartilhamento de recursos de AWS RAM
nota

Essa etapa é necessária somente para o compartilhamento Conta da AWS baseado, não para o compartilhamento baseado na organização.

  1. Faça login no AWS console https://console.aws.amazon.com/connect/usando o administrador do data lake da conta do consumidor usando o nome de IAM usuário (o padrão é DatalakeAdminConsumer) e a senha especificados durante a criação da AWS CloudFormation pilha.

  2. No AWS RAM console, no painel de navegação, em Compartilhado comigo, Compartilhamentos de recursos, escolha o recurso compartilhado do Lake Formation. O status deve ser Pendente.

  3. Selecione Ações e Concessão.

  4. Confirme os detalhes do recurso e selecione Aceitar compartilhamento de recursos.

    Nesse ponto, o administrador do data lake da conta do consumidor deve ser capaz de encontrar o recurso compartilhado no console do Lake Formation (https://console.aws.amazon.com/lakeformation/) em Catálogo de dados, bancos de dados.

Criar um link de recurso para a tabela compartilhada
Conceda permissão de dados para a tabela compartilhada ao consumidor

Para conceder permissão de dados para a tabela compartilhada ao consumidor, conclua as etapas a seguir:

  1. No console do Lake Formation (https://console.aws.amazon.com/lakeformation/), em Permissões, Permissões do Data lake, escolha Conceder.

  2. Para Diretores, escolha IAMusuários e funções e escolha o usuárioDataAnalyst.

  3. Em Tags do LF ou recursos de catálogo, selecione Recursos de catálogo de dados nomeados.

  4. Em Bancos de dados, selecione o banco de dados lakeformation_tutorial_cross_account_database_named_resource. Se você não encontrar o banco de dados na lista suspensa, selecione Carregar mais.

  5. Em Tabelas, selecione a tabela amazon_reviews_table_named_resource.

  6. Para Permissões de tabela e coluna, selecione Selecionar e Descrever em Permissões de tabela.

  7. Selecione Conceder.

Conceda permissão de dados para o link de recurso ao consumidor

Além de conceder permissão ao usuário do Data Lake para acessar a tabela compartilhada, você também precisa conceder permissão ao usuário do Data Lake para acessar o link do recurso.

  1. No console do Lake Formation (https://console.aws.amazon.com/lakeformation/), em Permissões, Permissões do Data lake, escolha Conceder.

  2. Para Diretores, escolha IAMusuários e funções e escolha o usuárioDataAnalyst.

  3. Em Tags do LF ou recursos de catálogo, selecione Recursos de catálogo de dados nomeados.

  4. Em Bancos de dados, selecione o banco de dados lakeformation_tutorial_cross_account_database_consumer. Se você não encontrar o banco de dados na lista suspensa, selecione Carregar mais.

  5. Em Tabelas, selecione a tabela amazon_reviews_table_named_resource_resource_link.

  6. Para Permissões de links de recursos, selecione Descrever em Permissões de links de recursos.

  7. Selecione Conceder.

    Nesse ponto, o usuário analista de dados na conta do consumidor deve ser capaz de encontrar o banco de dados e o link do recurso e consultar a tabela compartilhada por meio do console do Athena.

    Caso contrário, confirme se o seguinte está configurado corretamente:

    • O link do recurso é criado para a tabela compartilhada

    • Você concedeu ao usuário acesso à tabela compartilhada pela conta do produtor

    • Você concedeu ao usuário acesso ao link de recurso e ao banco de dados para o qual o link de recurso foi criado

Etapa 5: limpar AWS os recursos

Para evitar cobranças indesejadas Conta da AWS, você pode excluir os AWS recursos usados neste tutorial.

  1. Faça login no console do Lake Formation https://console.aws.amazon.com/lakeformation/usando a conta do produtor e exclua ou altere o seguinte:

    • AWS Resource Access Manager compartilhamento de recursos

    • Tags do Lake Formation

    • AWS CloudFormation pilha

    • Configurações do Lake Formation

    • AWS Glue Data Catalog

  2. Faça login no console do Lake Formation https://console.aws.amazon.com/lakeformation/usando a conta do consumidor e exclua ou altere o seguinte:

    • Tags do Lake Formation

    • AWS CloudFormation pilha