Gerenciar armazenamentos de dados de eventos com a AWS CLI - AWS CloudTrail

Gerenciar armazenamentos de dados de eventos com a AWS CLI

Esta seção descreve vários outros comandos que você pode executar para obter informações sobre seus armazenamentos de dados de eventos, iniciar e interromper a ingestão em um armazenamento de dados de eventos e habilitar ou desabilitar a federação em um armazenamento de dados de eventos.

Obter um armazenamento de dados de eventos com a AWS CLI

O exemplo de comando get-event-data-store da AWS CLI a seguir retorna informações sobre o armazenamento de dados de eventos especificado pelo parâmetro --event-data-store obrigatório, que aceita um ARN ou o sufixo de ID do ARN.

aws cloudtrail get-event-data-store \ --event-data-store arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE

O seguinte é um exemplo de resposta. A criação e os horários da última atualização estão no formato timestamp.

{ "EventDataStoreARN": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE", "Name": "s3-data-events-eds", "Status": "ENABLED", "AdvancedEventSelectors": [ { "Name": "Log DeleteObject API calls for a specific S3 bucket", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "eventName", "Equals": [ "DeleteObject" ] }, { "Field": "resources.ARN", "StartsWith": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Field": "readOnly", "Equals": [ "false" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] } ] } ], "MultiRegionEnabled": true, "OrganizationEnabled": false, "BillingMode": "FIXED_RETENTION_PRICING", "RetentionPeriod": 2557, "TerminationProtectionEnabled": true, "CreatedTimestamp": "2023-11-09T22:20:36.344000+00:00", "UpdatedTimestamp": "2023-11-09T22:20:36.476000+00:00" }

Listar todos os armazenamentos de dados de eventos em uma conta com a AWS CLI

O exemplo de comando list-event-data-stores da AWS CLI a seguir retorna informações sobre todos os armazenamentos de dados de eventos em uma conta na região atual. Parâmetros opcionais incluem --max-results para especificar um número máximo de resultados que você deseja que o comando retorne em uma única página. Se houver mais resultados do que o valor especificado para --max-results, execute o comando novamente adicionando o valor retornado NextToken para obter a próxima página de resultados.

aws cloudtrail list-event-data-stores

O seguinte é um exemplo de resposta.

{ "EventDataStores": [ { "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE7-cad6-4357-a84b-318f9868e969", "Name": "management-events-eds" }, { "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE6-88e1-43b7-b066-9c046b4fd47a", "Name": "config-items-eds" }, { "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLEf-b314-4c85-964e-3e43b1e8c3b4", "Name": "s3-data-events" } ] }

Adicionar chaves de tags de recurso e chaves de condição globais do IAM e expandir o tamanho do evento

Execute o comando put-event-configuration da AWS CLI para expandir o tamanho máximo do evento e adicionar até 50 chaves de tags de recurso e 50 chaves de condição globais do IAM para fornecer metadados adicionais sobre seus eventos.

O comando put-event-configuration aceita os seguintes argumentos:

  • --event-data-store: especifique o ARN do datastore de eventos ou o sufixo ID do ARN. Esse parâmetro é obrigatório.

  • --max-event-size: defina como Large para definir o tamanho máximo do evento como 1 MB. Por padrão, o valor é Standard, que especifica um tamanho máximo de evento de 256 KB.

    nota

    Para adicionar chaves de tags de recurso ou chaves de condição globais do IAM, você deve definir o tamanho do evento como Large para garantir que todas as chaves adicionadas sejam incluídas no evento.

  • --context-key-selectors: especifique o tipo de chaves que você deseja incluir nos eventos coletados pelo seu datastore de eventos. Você pode incluir chaves de tags de recurso e chaves de condição globais do IAM. As informações sobre as tags de recurso adicionadas e as chaves de condição globais do IAM são exibidas no campo eventContext do evento. Para obter mais informações, consulte É possível enriquecer eventos do CloudTrail adicionando chaves de tags de recurso e chaves de condição globais do IAM.

    • Defina o Type como TagContext para passar em uma matriz de até 50 chaves de tags de recurso. Se você adicionar tags de recurso, os eventos do CloudTrail incluirão as chaves de tag selecionadas com os recursos envolvidos na chamada de API. Os eventos de API relacionados a recursos excluídos não terão tags de recurso.

    • Defina o Type como RequestContext para passar em uma matriz de até 50 chaves de condição globais do IAM. Se você adicionar chaves de condição globais do IAM, os eventos do CloudTrail incluirão informações sobre as chaves de condição selecionadas que foram avaliadas durante o processo de autorização, incluindo detalhes adicionais sobre a entidade principal, a sessão, a rede e a solicitação em si.

O exemplo a seguir define o tamanho máximo do evento como Large e adiciona duas chaves de tags de recurso, myTagKey1 e myTagKey2.

aws cloudtrail put-event-configuration \ --event-data-store arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE \ --max-event-size Large \ --context-key-selectors '[{"Type":"TagContext", "Equals":["myTagKey1","myTagKey2"]}]'

O próximo exemplo define o tamanho máximo do evento como Large e adiciona uma chave de condição global do IAM (aws:MultiFactorAuthAge).

aws cloudtrail put-event-configuration \ --event-data-store arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE \ --max-event-size Large \ --context-key-selectors '[{"Type":"RequestContext", "Equals":["aws:MultiFactorAuthAge"]}]'

O exemplo final remove todas as chaves da tags de recurso e as chaves de condição globais do IAM e define o tamanho máximo do evento como Standard.

aws cloudtrail put-event-configuration \ --event-data-store arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE \ --max-event-size Standard \ --context-key-selectors

Obter a configuração de evento para um datastore de eventos

Execute o comando get-event-configuration da AWS CLI para retornar a configuração de evento para um datastore de eventos que coleta eventos do CloudTrail. Esse comando retorna o tamanho máximo do evento e lista as chaves da tags de recurso e as chaves de condição globais do IAM (se houver) incluídas nos eventos do CloudTrail.

aws cloudtrail get-event-configuration \ --event-data-store arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE

Obter uma política baseada em recurso para um datastore de eventos com a AWS CLI

O exemplo a seguir executa o comando get-resource-policy em um datastore de eventos da organização.

aws cloudtrail get-resource-policy --resource-arn arn:aws:cloudtrail:us-east-1:888888888888:eventdatastore/example6-d493-4914-9182-e52a7934b207

Como o comando foi executado em um datastore de eventos da organização, a saída mostrará a política baseada em recurso fornecida e a DelegatedAdminResourcePolicy gerada para as contas de administrador delegado.

Anexar uma política baseada em recurso a um datastore de eventos com a AWS CLI

Para executar consultas em um painel durante uma atualização manual ou agendada, você precisa anexar uma política baseada em recurso a cada datastore de eventos associado a um widget no painel. Isso permite que o CloudTrail Lake execute as consultas para você. Para obter mais informações sobre políticas baseadas em recursos, consulte Exemplo: permitir que o CloudTrail execute consultas para atualizar um painel.

O exemplo a seguir anexa uma política baseada em recurso a um datastore de eventos que permite que o CloudTrail execute consultas em um painel quando o painel é atualizado. A política é criada em um arquivo policy.json separado, com o seguinte exemplo de instrução de política:

JSON
{ "Version":"2012-10-17", "Statement": [{ "Sid": "EDSPolicy", "Effect": "Allow", "Principal": { "Service": "cloudtrail.amazonaws.com" }, "Resource": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/event_data_store_ID", "Action": "cloudtrail:StartQuery", "Condition": { "StringEquals": { "AWS:SourceArn": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE", "AWS:SourceAccount": "123456789012" } } } ] }

Substitua 123456789012 pelo ID da sua conta, arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/event_data_store_ID pelo ARN do armazenamento e dados de eventos para o qual o CloudTrail executará consultas e arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE pelo ARN do painel.

aws cloudtrail put-resource-policy \ --resource-arn eds-arn \ --resource-policy file://policy.json

Este é um exemplo de resposta.

{ "ResourceArn": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE", "ResourcePolicy": "policy-statement" }

Para obter exemplos de políticas adicionais, consulte Exemplos de políticas baseadas em recursos para armazenamentos e dados de eventos.

Excluir uma política baseada em recurso de um datastore de eventos com a AWS CLI

Os exemplo a seguir exclui a política baseada em recurso anexada a um datastore de eventos. Substitua eds-arn pelo ARN do datastore de eventos.

aws cloudtrail delete-resource-policy --resource-arn eds-arn

Se for bem-sucedido, esse comando não produzirá uma saída.

Interromper a ingestão em um armazenamento de dados de eventos com a AWS CLI

O comando stop-event-data-store-ingestion de exemplo da AWS CLI a seguir impede que um armazenamento de dados de eventos ingira eventos. Para interromper a ingestão, o Status do armazenamento de dados de eventos deve ser ENABLED e eventCategory deve ser Management, Data ou ConfigurationItem. O armazenamento de dados de eventos é especificado por --event-data-store, que aceita um ARN de armazenamento de dados de evento ou o sufixo de ID do ARN. Após a execução de stop-event-data-store-ingestion, o estado do armazenamento de dados do evento muda para STOPPED_INGESTION.

O armazenamento de dados de eventos não é contabilizado para o máximo de dez armazenamentos de dados de eventos da conta quando seu estado é STOPPED_INGESTION

aws cloudtrail stop-event-data-store-ingestion \ --event-data-store arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE

Se o comando tiver êxito, não haverá resposta.

Iniciar a ingestão em um armazenamento de dados de eventos com a AWS CLI

O comando start-event-data-store-ingestion de exemplo da AWS CLI a seguir inicia a ingestão de eventos em um armazenamento de dados de eventos. Para iniciar a ingestão, o Status do armazenamento de dados de eventos deve ser STOPPED_INGESTION e eventCategory deve ser Management, Data ou ConfigurationItem. O armazenamento de dados de eventos é especificado por --event-data-store, que aceita um ARN de armazenamento de dados de evento ou o sufixo de ID do ARN. Após a execução de start-event-data-store-ingestion, o estado do armazenamento de dados do evento muda para ENABLED.

aws cloudtrail start-event-data-store-ingestion --event-data-store arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE

Se o comando tiver êxito, não haverá resposta.

Habilitar federação em um armazenamento de dados de eventos

Para ativar a federação, execute o comando aws cloudtrail enable-federation, fornecendo os parâmetros obrigatórios --event-data-store e --role. Para --event-data-store, forneça o ARN do armazenamento de dados de eventos (ou o sufixo de ID do ARN). Para --role, forneça o ARN para seu perfil na federação. O perfil deve existir em sua conta e fornecer as permissões mínimas necessárias.

aws cloudtrail enable-federation \ --event-data-store arn:aws:cloudtrail:region:account-id:eventdatastore/eds-id --role arn:aws:iam::account-id:role/federation-role-name

Este exemplo mostra como um administrador delegado pode habilitar a federação em um armazenamento de dados de eventos da organização especificando o ARN do armazenamento de dados de eventos na conta de gerenciamento e o ARN do perfil de federação na conta de administrador delegado.

aws cloudtrail enable-federation \ --event-data-store arn:aws:cloudtrail:region:management-account-id:eventdatastore/eds-id --role arn:aws:iam::delegated-administrator-account-id:role/federation-role-name

Desabilitar federação em um armazenamento de dados de eventos

Para desabilitar a federação no armazenamento de dados de eventos, execute o comando aws cloudtrail disable-federation. O armazenamento de dados de eventos é especificado por --event-data-store, que aceita um ARN de armazenamento de dados de evento ou o sufixo de ID do ARN.

aws cloudtrail disable-federation \ --event-data-store arn:aws:cloudtrail:region:account-id:eventdatastore/eds-id
nota

Se esse elemento for um armazenamento de dados de eventos da organização, use o ID de conta para a conta de gerenciamento.

Restaurar um armazenamento de dados de eventos com a AWS CLI

O exemplo de comando restore-event-data-store da AWS CLI a seguir restaura um armazenamento de dados de eventos que está com a exclusão pendente. O armazenamento de dados de eventos é especificado por --event-data-store, que aceita um ARN de armazenamento de dados de evento ou o sufixo de ID do ARN. Você só pode restaurar um armazenamento de dados de eventos excluído dentro do período de espera de sete dias após a exclusão.

aws cloudtrail restore-event-data-store \ --event-data-store EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE

A resposta inclui informações sobre o armazenamento de dados de eventos, incluindo seu ARN, seletores de eventos avançados e o status da restauração.