Como atualizar as configurações da versão de compartilhamento de dados entre contas - AWS Lake Formation

Como atualizar as configurações da versão de compartilhamento de dados entre contas

De tempos em tempos, a AWS Lake Formation atualiza as configurações de compartilhamento de dados entre contas para distinguir as alterações feitas no uso AWS RAM e para oferecer suporte às atualizações feitas no atributo de compartilhamento de dados entre contas. Quando o Lake Formation faz isso, ele cria uma nova versão das Configurações de versão entre contas.

Principais diferenças entre as versões de Configurações Entre Contas

Para obter mais informações sobre como o compartilhamento de dados entre contas funciona em diferentes versões de Configurações de versão entre contas, consulte as seções a seguir.

nota

Para compartilhar dados com outra conta, o concedente deve ter permissões de política do IAM gerenciadas por AWSLakeFormationCrossAccountManager. Isso é um pré-requisito para todas as versões.

A atualização da versão das Configurações de versão entre contas não afeta as permissões que o destinatário tem nos recursos compartilhados. Isso é aplicável ao atualizar da versão 1 para a versão 2, da versão 2 para a versão 3 e da versão 1 para a versão 3. Veja as considerações listadas abaixo ao atualizar as versões.

Versão 1

Método de recurso nomeado: mapeia cada concessão de permissão entre contas do Lake Formation para um compartilhamento de recursos do AWS RAM. O usuário (no perfil de concedente ou entidade principal) não precisa de permissões adicionais.

Método LF-TBAC: As concessões de permissão entre contas do Lake Formation não usam AWS RAM para compartilhar dados. O usuário deve ter a permissão glue:PutResourcePolicy.

Benefícios da atualização de versões: Versão inicial — não aplicável.

Considerações ao atualizar versões: Versão inicial — não aplicável.

Versão 2

Método de recurso nomeado: Otimiza o número de compartilhamentos de recursos do AWS RAM mapeando várias concessões de permissão entre contas com um compartilhamento de recursos do AWS RAM. Usuários não precisam de permissões adicionais.

Método LF-TBAC: As concessões de permissão entre contas do Lake Formation não usam AWS RAM para compartilhar dados. O usuário deve ter a permissão glue:PutResourcePolicy.

Benefícios da atualização de versões: Configuração entre contas escalável por meio da utilização ideal da capacidade do AWS RAM.

Considerações ao atualizar versões: Os usuários que desejam conceder permissões entre contas do Lake Formation devem ter as permissões na política AWSLakeFormationCrossAccountManager gerenciada pela AWS. Caso contrário, você precisará ter permissões ram:AssociateResourceShare e ram:DisassociateResourceShare para compartilhar recursos com sucesso com outra conta.

Versão 3

Método de recurso nomeado: Otimiza o número de compartilhamentos de recursos do AWS RAM mapeando várias concessões de permissão entre contas com um compartilhamento de recursos do AWS RAM. Usuários não precisam de permissões adicionais.

Método LF-TBAC: O Lake Formation usa AWS RAM para concessões entre contas. O usuário deve adicionar a instrução glue:ShareResource à permissão glue:PutResourcePolicy. O destinatário deve aceitar convites de compartilhamento de recursos do AWS RAM.

Benefícios da atualização de versões: Suporta os seguintes recursos:

  • Permite compartilhar recursos explicitamente com uma entidade principal do IAM em uma conta externa.

    Para ter mais informações, consulte Conceder permissões nos recursos do Catálogo de Dados.

  • Permite o compartilhamento entre contas usando o método LF-TBAC para organizações ou unidades organizacionais (OUs).

  • Elimina a sobrecarga de manter políticas AWS Glue adicionais para concessões entre contas.

Considerações ao atualizar as versões: quando você usa o método LF-TBAC para compartilhar recursos, se o concedente usar uma versão inferior à versão 3 e o destinatário estiver usando a versão 3 ou posterior, o concedente receberá a seguinte mensagem de erro: “Invalid cross account grant request. Consumer account has opt-in to cross account version: v3. Please update CrossAccountVersion in DataLakeSetting to minimal version v3 (Service: AmazonDataCatalog; Status Code: 400; Error Code: InvalidInputException)”. No entanto, se o concedente usar a versão 3 e o destinatário estiver usando a versão 1 ou a versão 2, as concessões entre contas usando tags do LF serão aprovadas com êxito.

As concessões entre contas feitas por meio do método de recurso nomeado são compatíveis entre diferentes versões. Mesmo que a conta do concedente esteja usando uma versão mais antiga (versão 1 ou 2) e a conta do destinatário esteja usando uma versão mais recente (versão 3 ou posterior), a funcionalidade de acesso entre contas funciona perfeitamente, sem problemas ou erros de compatibilidade.

Para compartilhar recursos diretamente com as entidades principais do IAM em outra conta, somente o concedente precisa usar a versão 3.

As concessões entre contas feitas usando o método LF-TBAC exigem que os usuários tenham uma política de recursos AWS Glue Data Catalog na conta. Quando você atualiza para a versão 3, o LF-TBAC concede usos do AWS RAM. Para permitir que as concessões entre contas baseadas em AWS RAM sejam bem-sucedidas, é necessário adicionar a instrução glue:ShareResource às políticas de recursos existentes do catálogo de dados, conforme mostrado na seção Gerenciamento de permissões entre contas usando o AWS Glue e o Lake Formation.

Versão 4

O concedente precisa da versão 4 ou superior para compartilhar os recursos do catálogo de dados no modo de acesso híbrido.

Otimize os compartilhamentos de recursos AWS RAM

As novas versões (versão 2 e superior) de concessões entre contas utilizam de forma otimizada a capacidade AWS RAM para maximizar o uso entre contas. Quando você compartilha um recurso com uma Conta da AWS externa ou um entidade principal do IAM, o Lake Formation pode criar um novo compartilhamento de recurso ou associar o recurso a um compartilhamento existente. Ao se associar aos compartilhamentos existentes, o Lake Formation reduz o número de convites de compartilhamento de recursos que um consumidor precisa aceitar.

Habilite compartilhamentos AWS RAM via TBAC ou compartilhe recursos diretamente com as entidades principais

Para compartilhar recursos diretamente com entidades principais do IAM em outra conta, ou para habilitar compartilhamentos entre contas TBAC para organizações ou unidades organizacionais, é necessário atualizar as Configurações de versão entre contas para a versão 3. Para obter mais informações sobre os limites de recursos do AWS RAM, consulte Práticas recomendadas e considerações sobre compartilhamento de dados entre contas.

Permissões necessárias para atualizar a versão de Configurações Entre Contas

Se um concedente de permissão entre contas tiver permissões de política do IAM gerenciadas por AWSLakeFormationCrossAccountManager, não será necessária nenhuma configuração de permissão extra para o perfil de concedente ou entidade principal para permissão entre contas. No entanto, se o concedente entre contas não estiver usando a política gerenciada, o perfil do concedente ou entidade principal deverá ter as seguintes permissões do IAM concedidas para que a nova versão da concessão entre contas seja bem-sucedida.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "ram:AssociateResourceShare", "ram:DisassociateResourceShare", "ram:GetResourceShares" ], "Resource": "*", "Condition": { "StringLike": { "ram:ResourceShareName": "LakeFormation*" } } } ] }

Como habilitar a nova versão

Siga estas etapas para atualizar a versão das Configurações de versão entre contas por meio do console do AWS Lake Formation ou da AWS CLI.

Console
  1. Selecione Versão 2, Versão 3 ou Versão 4 em Configurações de versão entre contas na página de Configurações do catálogo de dados. Se você selecionar a Versão 1, o Lake Formation usará o modo padrão de compartilhamento de recursos.

    Data catalog settings page with options for permissions, AWS CloudTrail, and cross account versions.
  2. Escolha Salvar

AWS Command Line Interface (AWS CLI)

Use o comando put-data-lake-settings AWS CLI para definir o parâmetro CROSS_ACCOUNT_VERSION. Os valores aceitos são 1, 2, 3 e 4.

aws lakeformation put-data-lake-settings --region us-east-1 --data-lake-settings file://settings { "DataLakeAdmins": [ { "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/test" } ], "CreateDatabaseDefaultPermissions": [], "CreateTableDefaultPermissions": [], "Parameters": { "CROSS_ACCOUNT_VERSION": "3" } }
Importante

Após escolher a Versão 2 ou a Versão 3, todas as novas concessões de recursos nomeados passarão pelo novo modo de concessão entre contas. Para otimizar o uso da capacidade AWS RAM de seus compartilhamentos entre contas existentes, recomendamos que você revogue as concessões que foram feitas com a versão mais antiga e conceda novamente no novo modo.