Concedendo permissões de lago de dados usando o método LF-5 TBAC - 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á.

Concedendo permissões de lago de dados usando o método LF-5 TBAC

É possível conceder as permissões DESCRIBE e ASSOCIATE do Lake Formation em tags do LF a entidades principais para que elas possam visualizar as tags do LF e atribuí-las aos recursos do catálogo de dados (bancos de dados, tabelas, visualizações e colunas). Quando as tags LF são atribuídas aos recursos do Catálogo de Dados, você pode usar o método de controle de acesso baseado em tags (LF-TBAC) do Lake Formation para proteger esses recursos. Para obter mais informações, consulte Controle de acesso baseado em tags do Lake Formation.

No início, somente o administrador do data lake pode conceder essas permissões. Se o administrador do data lake conceder essas permissões com a opção de concessão, outras entidades principais poderão concedê-las. As permissões DESCRIBE e ASSOCIATE são explicadas em Considerações e práticas recomendadas de controle de acesso com base em tags do Lake Formation.

Você pode conceder as ASSOCIATE permissões DESCRIBE e em uma etiqueta LF para uma conta externa AWS . Um administrador de data lake nessa conta pode então conceder essas permissões a outras entidades principais na conta. As entidades principais às quais o administrador do data lake na conta externa concede a permissão ASSOCIATE podem então atribuir tags do LF aos recursos do catálogo de dados que você compartilhou com a conta deles.

Ao conceder para uma conta externa, você deve incluir a opção de concessão.

Você pode conceder permissões em tags LF usando o AWS Lake Formation consoleAPI, o ou o AWS Command Line Interface ()AWS CLI.

Conceder permissões do catálogo de dados

Use o console do Lake Formation ou AWS CLI conceda permissões do Lake Formation em bancos de dados, tabelas, visualizações e colunas do Catálogo de Dados usando o método de controle de acesso baseado em tags (LF-TBAC) do Lake Formation.

Console

As etapas a seguir explicam como conceder permissões usando o método de controle de acesso baseado em tags (LF-TBAC) do Lake Formation e a página Conceder permissões de data lake no console do Lake Formation. A página está dividida nas seguintes seções:

  • Diretores — Os usuários, as funções e Contas da AWS para os quais conceder permissões.

  • Tags do LF ou recursos do catálogo – Os bancos de dados, tabelas ou links de recursos nos quais conceder permissões.

  • Permissões – As permissões do Lake Formation devem ser concedidas.

  1. Abra a página Conceder permissões de data lake.

    Abra o AWS Lake Formation console em https://console.aws.amazon.com/lakeformation/e faça login como administrador do data lake ou como usuário que recebeu permissões do Lake Formation nos recursos do Catálogo de Dados por meio do LF- TBAC com a opção de concessão.

    No painel de navegação, em Permissões, escolha Permissões do data lake. Em seguida, escolha Conceder.

  2. Especifique as entidades principais.

    Na seção Entidades principais, escolha um tipo de principal e, em seguida, especifique às entidades principais aos quais conceder permissões.

    A seção Entidades principais contém quatro blocos que são nomeados no texto a seguir. Cada bloco contém um botão de opção e um texto. O bloco IAM Identity Center é selecionado e a lista suspensa de usuários e grupos está abaixo dos blocos.
    IAMusuários e funções

    Escolha um ou mais usuários ou funções na lista de IAMusuários e funções.

    IAMCentro de Identidade

    Selecione um ou mais usuários na lista Usuários e grupos.

    Grupos e usuários do SAML

    Para QuickSight usuários SAML e grupos da Amazon, insira um ou mais nomes de recursos da Amazon (ARNs) para usuários ou grupos federados SAML ou ARNs para QuickSight usuários ou grupos da Amazon. Pressione Enter após cada umARN.

    Para obter informações sobre como construir oARNs, consulteLake Formation concede e revoga comandos AWS CLI.

    nota

    A integração do Lake Formation com a Amazon QuickSight é compatível somente com o Amazon QuickSight Enterprise Edition.

    Contas externas

    Para Contas da AWS, AWS organização ou IAMdiretor, insira uma ou mais organizações Conta da AWS IDs IDsIDs, unidades organizacionais ou ARN para o IAM usuário ou função válidas. Pressione Enter após cada ID.

    O ID da organização consiste em “o-” seguido por 10 a 32 letras minúsculas ou dígitos.

    Um ID de unidade organizacional começa com “ou-” seguido de 4 a 32 letras minúsculas ou dígitos (o ID da raiz que contém a OU). Essa sequência é seguida por um segundo travessão "-" e 8 a 32 letras minúsculas ou dígitos adicionais.

  3. Especifique as tags do LF.

    Certifique-se de que a opção Recursos correspondidos por tags do LF seja escolhida. Selecione Adicionar tag do LF.

    1. Escolha uma chave e valores de tag do LF.

      Se você escolher mais de um valor, estará criando uma expressão de tags do LF com um operador OR. Isso significa que, se algum dos valores da tag do LF corresponder a uma tag do LF atribuída a um recurso do catálogo de dados, você receberá permissões sobre o recurso.

      A seção tag do LF ou a seção de recursos do catálogo contém dois blocos dispostos horizontalmente, onde cada bloco contém um botão de opção e um texto descritivo. As opções são Recursos combinados com tags do LF (recomendado) e recursos do catálogo de dados nomeados. Os recursos correspondentes às tags do LF são selecionados. Abaixo dos blocos, há um campo Chave e um campo Valores organizados horizontalmente. O campo Chave contém “módulo” e o campo Valores é uma lista suspensa que contém três entradas: Pedidos, Vendas e Clientes. Cada entrada tem uma caixa de seleção associada. A caixa de seleção para Clientes está marcada. À direita desses dois campos, há um botão Remover. Na parte inferior, há um botão Adicionar tag do LF, indicando que você pode adicionar outra linha contendo os campos Chave e Valores e um botão Remover.
    2. (Opcional) Escolha Adicionar tag do LF novamente para especificar outra tag do LF.

      Se você especificar mais de uma tag do LF, estará criando uma expressão de tag do LF com um operador AND. A entidade principal recebe permissões em um recurso do catálogo de dados somente se o recurso tiver sido atribuído a uma tag do LF correspondente para cada tag do LF na expressão da tag do LF.

  4. Especifique as permissões.

    Especificar as permissões a serem concedidas à entidade principal em recursos correspondentes do catálogo de dados. Recursos correspondentes são aqueles recursos atribuídos a tags do LF que correspondem a uma das expressões de tags do LF concedidas à entidade principal.

    É possível especificar as permissões a serem concedidas em bancos de dados, tabelas e visualizações correspondentes.

    Duas seções da página são mostradas. A seção Permissões do banco de dados contém caixas de seleção para permissões de banco de dados e permissões concedidas. Abaixo da seção Banco de dados, a seção Permissões de tabela mostra as caixas de seleção para permissões de tabela e permissões concedidas.

    Em Permissões do banco de dados, selecione as permissões do banco de dados a serem concedidas à entidade principal nos bancos de dados correspondentes.

    Em Permissões de tabela, selecione as permissões de tabela ou visualização a serem concedidas à entidade principal nas tabelas e nas visualizações correspondentes.

    Também é possível selecionar as permissões Select, Describe e Drop nas Permissões de tabela a serem aplicadas às visualizações.

  5. Selecione Conceder.

AWS CLI

Você pode usar o AWS Command Line Interface (AWS CLI) e o método de controle de acesso baseado em tags (LF-TBAC) do Lake Formation para conceder permissões do Lake Formation em bancos de dados, tabelas e colunas do Catálogo de Dados.

Concedendo permissões de data lake usando o método AWS CLI e o LF- TBAC
  • Use o comando grant-permissions.

    O exemplo a seguir concede a expressão tag do LF "module=*" (todos os valores da chave tag do LF module) ao usuário datalake_user1. Esse usuário terá a permissão CREATE_TABLE em todos os bancos de dados correspondentes – bancos de dados aos quais foi atribuída a tag do LF com a chave module, com qualquer valor.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "CREATE_TABLE" --resource '{ "LFTagPolicy": {"CatalogId":"111122223333","ResourceType":"DATABASE","Expression":[{"TagKey":"module","TagValues":["*"]}]}}'

    O próximo exemplo concede a expressão da tag do LF "(level=director) AND (region=west OR region=south)" ao usuário datalake_user1. Esse usuário terá as permissões SELECT, ALTER e DROP com a opção de concessão em tabelas correspondentes – tabelas que foram atribuídas tanto a level=director quanto a region=west ou region=south.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" "ALTER" "DROP" --permissions-with-grant-option "SELECT" "ALTER" "DROP" --resource '{ "LFTagPolicy": {"CatalogId":"111122223333","ResourceType":"TABLE","Expression": [{"TagKey": "level","TagValues": ["director"]},{"TagKey": "region","TagValues": ["west", "south"]}]}}'

    O próximo exemplo concede a expressão LF-tag "module=orders" à AWS conta 1234-5678-9012. O administrador do data lake nessa conta pode então conceder a expressão "module=orders" às entidades principais em sua conta. Esses diretores terão então a CREATE_TABLE permissão para combinar bancos de dados pertencentes à conta 1111-2222-3333 e compartilhados com a conta 1234-5678-9012 usando o método de recurso nomeado ou o método LF-. TBAC

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=123456789012 --permissions "CREATE_TABLE" --permissions-with-grant-option "CREATE_TABLE" --resource '{ "LFTagPolicy": {"CatalogId":"111122223333","ResourceType":"DATABASE","Expression":[{"TagKey":"module","TagValues":["orders"]}]}}'