Configurar o acesso entre contas ao catálogo de dados - Amazon Athena

Configurar o acesso entre contas ao catálogo de dados

Para acessar um catálogo de dados em outra conta, você pode usar o recurso do AWS Glue entre contas do Athena ou configurar o acesso entre contas no Lake Formation.

Opção A: configurar o acesso entre contas ao catálogo de dados no Athena

Você pode usar o recurso de catálogo do AWS Glue entre contas do Athena para registrar o catálogo em sua conta. Esse recurso está disponível somente no mecanismo Athena versão 2 e posteriores e está limitado ao uso entre contas na mesma região. Para ter mais informações, consulte Registrar um catálogo de dados de outra conta.

Se o catálogo de dados a ser compartilhado tiver uma política de recursos configurada no AWS Glue, ele deverá ser atualizado para permitir acesso ao AWS Resource Access Manager e conceder permissões à conta B para usar o catálogo de dados da conta A, como no exemplo a seguir.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "ram.amazonaws.com" }, "Action": "glue:ShareResource", "Resource": [ "arn:aws:glue:<REGION>:<ACCOUNT-A>:table/*/*", "arn:aws:glue:<REGION>:<ACCOUNT-A>:database/*", "arn:aws:glue:<REGION>:<ACCOUNT-A>:catalog" ] }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<ACCOUNT-B>:root" }, "Action": "glue:*", "Resource": [ "arn:aws:glue:<REGION>:<ACCOUNT-A>:table/*/*", "arn:aws:glue:<REGION>:<ACCOUNT-A>:database/*", "arn:aws:glue:<REGION>:<ACCOUNT-A>:catalog" ] } ] }

Para ter mais informações, consulte Configurar o acesso entre contas aos catálogos de dados do AWS Glue.

Opção B: configurar o acesso entre contas no Lake Formation

O AWS Lake Formation permite que você use uma única conta para gerenciar um catálogo de dados central. Você pode usar esse recurso para implementar o acesso entre contas a metadados do catálogo de dados e aos dados subjacentes. Por exemplo, uma conta de proprietário pode conceder à outra conta (destinatário) a permissão SELECT em uma tabela.

Para que um banco de dados ou uma tabela compartilhada apareça no editor de consultas do Athena, crie um link de recurso no Lake Formation para o banco de dados ou a tabela compartilhada. Quando a conta de destinatário no Lake Formation consulta a tabela do proprietário, o CloudTrail adiciona o evento de acesso a dados aos logs das contas tanto de destinatário quanto de proprietário.

Para visualizações compartilhadas, lembre-se dos seguintes pontos:

  • As consultas são executadas nos links dos recursos de destino, não na visualização ou tabela de origem. Em seguida, a saída é compartilhada com a conta de destino.

  • Não basta compartilhar apenas a visualização. Todas as tabelas envolvidas na criação da visualização devem fazer parte do compartilhamento entre contas.

  • O nome do link do recurso criado nos recursos compartilhados deve corresponder ao nome do recurso na conta do proprietário. Se o nome não corresponder, será gerada uma mensagem de erro semelhante a Failed analyzing stored view 'awsdatacatalog.my-lf-resource-link.my-lf-view': line 3:3: Schema schema_name does not exist (Falha na análise da visualização compartilhada “awsdatacatalog.my-lf-resource-link.my-lf-view”: linha 3:3: o esquema schema_name não existe).

Para obter mais informações sobre o acesso entre contas no Lake Formation, consulte os seguintes recursos no Guia do desenvolvedor do AWS Lake Formation:

Acesso entre contas

How resource links work in Lake Formation (Como os links de recursos funcionam no Lake Formation)

Cross-account CloudTrail logging (Registro em log no CloudTrail entre contas)