Federar um armazenamento de dados de eventos - AWS CloudTrail

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á.

Federar um armazenamento de dados de eventos

A federação de um armazenamento de dados de eventos permite visualizar os metadados associados ao armazenamento de dados de eventos no catálogo de AWS Glue dados, registrar o catálogo de dados com AWS Lake Formation e permitir que você execute SQL consultas em seus dados de eventos usando o Amazon Athena. Os metadados da tabela armazenados no Catálogo de AWS Glue Dados permitem que o mecanismo de consulta do Athena saiba como encontrar, ler e processar os dados que você deseja consultar.

Você pode habilitar a federação usando o CloudTrail console AWS CLI, ou EnableFederationAPIoperação. Quando você ativa a federação de consultas do Lake, CloudTrail cria um banco de dados gerenciado chamado aws:cloudtrail (se o banco de dados ainda não existir) e uma tabela federada gerenciada no Catálogo de AWS Glue Dados. O ID do armazenamento de dados do evento é usado para o nome da tabela. CloudTrail registra a função da federação ARN e o armazenamento de dados de eventos no AWS Lake Formation, o serviço responsável por permitir o controle de acesso refinado dos recursos federados no Catálogo de Dados. AWS Glue

Para habilitar a federação de consultas do Lake, você deve criar uma nova IAM função ou escolher uma função existente. O Lake Formation usa esse perfil para gerenciar permissões para o armazenamento de dados de eventos federados. Quando você cria uma nova função usando o CloudTrail console, cria CloudTrail automaticamente as permissões necessárias para a função. Se você escolher um perfil existente, certifique-se de que ele forneça as permissões mínimas.

Você pode desativar a federação usando o CloudTrail AWS CLI console ou DisableFederationAPIoperação. Quando você desativa a federação, CloudTrail desativa a integração com AWS Glue AWS Lake Formation, e com o Amazon Athena. Depois de desabilitar a federação de consultas do Lake, você não poderá mais consultar seus dados de eventos no Athena. Nenhum dado do CloudTrail Lake é excluído quando você desativa a federação e você pode continuar executando consultas no CloudTrail Lake.

Não há CloudTrail cobranças pela federação de um armazenamento de dados de eventos do CloudTrail Lake. Há custos para realizar consultas no Amazon Athena. Para obter informações sobre preços do Athena, consulte os Preços do Amazon Athena.

Considerações

Considere os seguintes fatores ao federar um armazenamento de dados de eventos:

  • Não há CloudTrail cobranças pela federação de um armazenamento de dados de eventos do CloudTrail Lake. Há custos para realizar consultas no Amazon Athena. Para obter informações sobre preços do Athena, consulte os Preços do Amazon Athena.

  • O Lake Formation é usado para gerenciar permissões para os recursos federados. Se você excluir a função da federação ou revogar as permissões para os recursos do Lake Formation ou AWS Glue não puder executar consultas do Athena. Para obter mais informações sobre como trabalhar com o Lake Formation, consulte Gerenciando os recursos da Federação do CloudTrail Lago com AWS Lake Formation.

  • Qualquer pessoa que use o Amazon Athena para consultar dados registrados no Lake Formation deve ter uma política de IAM permissões que permita a açãolakeformation:GetDataAccess. A política AWS gerenciada: AmazonAthenaFullAccesspermite essa ação. Se você usar políticas em linha, atualize as políticas de permissões para permitir essa ação. Para obter mais informações, consulte Gerenciar permissões de usuário do Lake Formation e do Athena.

  • Para criar visualizações em tabelas federadas no Athena, você precisa de um banco de dados de destino diferente de aws:cloudtrail. Isso ocorre porque o aws:cloudtrail banco de dados é gerenciado pelo CloudTrail.

  • Para criar um conjunto de dados na Amazon QuickSight, você deve escolher a SQL opção Usar personalizado. Para obter mais informações, consulte Creating a dataset using Amazon Athena data.

  • Se a federação estiver habilitada, não será possível excluir um armazenamento de dados de eventos. Para excluir um armazenamento de dados de eventos federados, primeiro você deve desabilitar a federação e a proteção contra encerramento, se estiver habilitada.

  • As seguintes considerações se aplicam aos armazenamentos de dados de eventos da organização:

    • Somente uma única conta de administrador delegado ou a conta de gerenciamento pode habilitar a federação em um armazenamento de dados de eventos da organização. Outras contas de administrador delegado ainda podem consultar e compartilhar informações usando o atributo de compartilhamento de dados do Lake Formation.

    • Qualquer conta de administrador delegado ou conta de gerenciamento da organização pode desabilitar a federação.

Permissões necessárias para federação

Antes de federar um armazenamento de dados de eventos, certifique-se de ter todas as permissões necessárias para o perfil de federação e para habilitar e desabilitar a federação. Você só precisa atualizar as permissões da função de federação se escolher uma IAM função existente para habilitar a federação. Se você optar por criar uma nova IAM função usando o CloudTrail console, CloudTrail fornecerá todas as permissões necessárias para a função.

IAMpermissões para federar um armazenamento de dados de eventos

Ao habilitar a federação, você tem a opção de criar uma nova IAM função ou usar uma IAM função existente. Quando você escolhe uma nova IAM função, CloudTrail cria uma IAM função com as permissões necessárias e nenhuma ação adicional é necessária de sua parte.

Se você escolher uma função existente, certifique-se de que as políticas da IAM função forneçam as permissões necessárias para habilitar a federação. Esta seção fornece exemplos das políticas de permissão e confiança de IAM funções necessárias.

O exemplo a seguir fornece a política de permissões para o perfil de federação. Para a primeira declaração, forneça todo o armazenamento ARN de dados do seu evento para Resource o.

A segunda declaração nesta política permite que o Lake Formation decifre dados para um armazenamento de dados de eventos criptografado com uma chave. KMS Substituir key-region, account-id e key-id com os valores da sua KMS chave. Você pode omitir essa declaração se seu armazenamento de dados de eventos não usar uma KMS chave para criptografia.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFederationEDSDataAccess", "Effect": "Allow", "Action": "cloudtrail:GetEventDataStoreData", "Resource": "arn:aws:cloudtrail:eds-region:account-id:eventdatastore/eds-id" }, { "Sid": "LakeFederationKMSDecryptAccess", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:key-region:account-id:key/key-id" } ] }

O exemplo a seguir fornece a política de IAM confiança, que permite AWS Lake Formation assumir uma IAM função para gerenciar permissões para o armazenamento de dados de eventos federados.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "lakeformation.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Permissões necessárias para habilitar a federação

O exemplo de política a seguir fornece as permissões obrigatórias mínimas para habilitar a federação em um armazenamento de dados de eventos. Essa política permite CloudTrail habilitar a federação no armazenamento de dados de eventos, AWS Glue criar os recursos federados no Catálogo de AWS Glue Dados e AWS Lake Formation gerenciar o registro de recursos.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CloudTrailEnableFederation", "Effect": "Allow", "Action": "cloudtrail:EnableFederation", "Resource": "arn:aws:cloudtrail:region:account-id:eventdatastore/eds-id" }, { "Sid": "FederationRoleAccess", "Effect": "Allow", "Action": [ "iam:PassRole", "iam:GetRole" ], "Resource": "arn:aws:iam::region:role/federation-role-name" }, { "Sid": "GlueResourceCreation", "Effect": "Allow", "Action": [ "glue:CreateDatabase", "glue:CreateTable", "glue:PassConnection" ], "Resource": [ "arn:aws:glue:region:account-id:catalog", "arn:aws:glue:region:account-id:database/aws:cloudtrail", "arn:aws:glue:region:account-id:table/aws:cloudtrail/eds-id", "arn:aws:glue:region:account-id:connection/aws:cloudtrail" ] }, { "Sid": "LakeFormationRegistration", "Effect": "Allow", "Action": [ "lakeformation:RegisterResource", "lakeformation:DeregisterResource" ], "Resource": "arn:aws:lakeformation:region:account-id:catalog:account-id" } ] }

Permissões necessárias para desabilitar a federação

O exemplo de política a seguir fornece os recursos mínimos necessários para desabilitar a federação em um armazenamento de dados de eventos. Essa política permite desativar CloudTrail a federação no armazenamento de dados do evento, excluir AWS Glue a tabela federada gerenciada no Catálogo de AWS Glue Dados e o Lake Formation cancelar o registro do recurso federado.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CloudTrailDisableFederation", "Effect": "Allow", "Action": "cloudtrail:DisableFederation", "Resource": "arn:aws:cloudtrail:region:account-id:eventdatastore/eds-id" }, { "Sid": "GlueTableDeletion", "Effect": "Allow", "Action": "glue:DeleteTable", "Resource": [ "arn:aws:glue:region:account-id:catalog", "arn:aws:glue:region:account-id:database/aws:cloudtrail", "arn:aws:glue:region:account-id:table/aws:cloudtrail/eds-id" ] }, { "Sid": "LakeFormationDeregistration", "Effect": "Allow", "Action": "lakeformation:DeregisterResource", "Resource": "arn:aws:lakeformation:region:account-id:catalog:account-id" } ] }