CloudTrail registro para aplicativos web Transfer Family - AWS Transfer Family

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

CloudTrail registro para aplicativos web Transfer Family

CloudTrail é um AWS service (Serviço da AWS) que cria um registro das ações realizadas dentro do seu Conta da AWS. Ele monitora e registra continuamente as operações da API para atividades como logins, AWS Command Line Interface comandos e SDK/API operações do console. Isso permite que você mantenha um registro de quem realizou qual ação, quando e de onde. CloudTrail ajuda na auditoria, no gerenciamento de acesso e na conformidade regulatória, fornecendo um histórico de todas as atividades em seu AWS ambiente.

Para aplicativos web Transfer Family, você pode rastrear eventos de autenticação e operações de acesso a dados realizadas por seus usuários. Para habilitar o registro abrangente, você precisa:

  1. Configure CloudTrail para registrar eventos de gerenciamento para rastrear atividades de autenticação.

  2. Habilite eventos de dados do Amazon S3 para rastrear operações de arquivos realizadas por meio de seu aplicativo web.

Consulte também

Habilitando eventos de dados do Amazon S3

Para rastrear operações de arquivos realizadas por meio dos aplicativos web da Transfer Family em seus buckets do Amazon S3, você precisa habilitar eventos de dados para esses buckets. Os eventos de dados fornecem atividade de API em nível de objeto e são particularmente úteis para rastrear uploads, downloads e outras operações de arquivos realizadas por usuários de aplicativos web.

Para habilitar eventos de dados do Amazon S3 para seu aplicativo web Transfer Family:

  1. Abra o CloudTrail console em https://console.aws.amazon.com/cloudtrail/.

  2. No painel de navegação, escolha Trilhas e, em seguida, selecione uma trilha existente ou crie uma nova.

  3. Em Seletores de eventos avançados, escolha Editar.

  4. Escolha Adicionar seletor de eventos avançado.

  5. Para o primeiro seletor de campo:

    • Definir campo como eventCategory

    • Definir operador como igual

    • Defina o valor como Data

  6. Escolha Adicionar campo e para o segundo seletor de campo:

    • Definir campo como resources.type

    • Definir operador como igual

    • Defina o valor como AWS::S3::Object

  7. (Opcional) Para registrar eventos somente para buckets específicos, escolha Adicionar campo e adicione:

    • Definir campo como resources.ARN

    • Defina o operador para começar com

    • Defina o valor como arn:aws:s3:::your-bucket-name/

  8. Escolha Salvar alterações.

Como alternativa, você pode usar a configuração de eventos de dados legados:

  1. Em Eventos de dados, escolha Editar.

  2. Em Tipo de evento de dados, selecione Eventos de bucket e objeto do S3.

  3. Escolha os buckets do Amazon S3 para registrar eventos de dados. Você pode selecionar Todos os buckets atuais e futuros do S3 ou especificar buckets individuais.

  4. Escolha se deseja registrar eventos de leitura, eventos de gravação ou ambos.

  5. Escolha Salvar alterações.

Depois de habilitar os eventos de dados, você pode acessar esses logs no bucket do Amazon S3 configurado para. CloudTrail Os registros incluem detalhes como o usuário que realizou a ação, o registro de data e hora da ação, o objeto específico afetado e o onBehalfOf campo que ajuda a rastrear as ações realizadas userId por meio dos aplicativos web Transfer Family.

Encontrando e visualizando seus registros

Há várias maneiras de encontrar e visualizar CloudTrail registros do seu aplicativo web Transfer Family:

Usando o CloudTrail console

A maneira mais rápida de ver eventos recentes:

  1. Abra o CloudTrail console em https://console.aws.amazon.com/cloudtrail/.

  2. Escolha Histórico de eventos.

  3. Filtrar eventos por:

    • Fonte do evento: signin.amazonaws.com para eventos de aplicativos da web

    • Fonte do evento: s3.amazonaws.com para operações de arquivo

  4. Clique em qualquer evento para ver informações detalhadas.

Acessando registros no Amazon S3

Para acessar os arquivos de log completos armazenados no Amazon S3:

  1. Identifique o CloudTrail bucket Amazon S3 da sua trilha:

    aws cloudtrail describe-trails --query 'trailList[*].[Name,S3BucketName]' --output table
  2. Navegue até os arquivos de log no Amazon S3:

    aws s3 ls s3://your-cloudtrail-bucket/AWSLogs/account-id/CloudTrail/region/YYYY/MM/DD/
  3. Baixe e pesquise arquivos de log para o ID do seu aplicativo web:

    aws s3 cp s3://your-cloudtrail-bucket/AWSLogs/account-id/CloudTrail/region/YYYY/MM/DD/ . --recursive gunzip *.json.gz grep -l "webapp-1a2b3c4d5e6f7g8h9" *.json

Usando AWS CLI para pesquisar eventos

Pesquise eventos específicos de aplicativos da web usando AWS CLI:

aws logs filter-log-events \ --log-group-name /aws/cloudtrail/your-trail-name \ --filter-pattern "webapp-1a2b3c4d5e6f7g8h9" \ --start-time $(date -d "1 day ago" +%s)000

Ou pesquise eventos de autenticação:

aws logs filter-log-events \ --log-group-name /aws/cloudtrail/your-trail-name \ --filter-pattern "UserAuthentication" \ --start-time $(date -d "1 day ago" +%s)000

Exemplos de registros de autenticação

CloudTrail registra eventos de autenticação para aplicativos web Transfer Family, que podem ajudar você a monitorar tentativas de login bem-sucedidas e malsucedidas. Esses registros são particularmente úteis para fins de monitoramento de segurança e conformidade.

Exemplo de entrada de registro para verificação de credenciais

O exemplo a seguir mostra uma entrada de CloudTrail registro para um evento de verificação de credencial que ocorre durante o processo de autenticação.

{ "eventVersion": "1.09", "userIdentity": { "type": "Unknown", "principalId": "123456789012", "arn": "", "accountId": "123456789012", "accessKeyId": "", "userName": "demo-user-2", "onBehalfOf": { "userId": "f12bb510-a011-702f-10dd-5607e2776dbc", "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e" }, "credentialId": "58138a11-87e5-401d-8f0b-7161c9389112" }, "eventTime": "2025-08-08T15:29:30Z", "eventSource": "signin.amazonaws.com", "eventName": "CredentialVerification", "awsRegion": "us-east-2", "sourceIPAddress": "192.0.2.224", "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36", "requestParameters": null, "responseElements": null, "additionalEventData": { "AuthWorkflowID": "f304a48b-7b6d-41c8-b136-4f49c91c1f31", "CredentialType": "PASSWORD" }, "requestID": "ff936828-4a81-453c-802d-81368b6bca1a", "eventID": "70cb7008-493d-42c2-a9eb-38bf168af6a8", "readOnly": false, "eventType": "AWS ServiceEvent", "managementEvent": true, "recipientAccountId": "123456789012", "serviceEventDetails": { "CredentialVerification": "Success" }, "eventCategory": "Management" }

Esse evento fornece detalhes adicionais sobre a etapa de verificação de credenciais no processo de autenticação, mostrando a ID específica da credencial e a ID do fluxo de trabalho de autenticação usadas.

Exemplo de entrada de registro para autenticação de login

O exemplo a seguir mostra uma entrada de CloudTrail registro de um evento de autenticação de usuário bem-sucedido durante o login do aplicativo web usando o IAM Identity Center.

{ "eventVersion": "1.09", "userIdentity": { "type": "Unknown", "principalId": "123456789012", "arn": "", "accountId": "123456789012", "accessKeyId": "", "userName": "demo-user-2", "onBehalfOf": { "userId": "f12bb510-a011-702f-10dd-5607e2776dbc", "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e" }, "credentialId": "b41f0a02-1635-4d07-a414-aecf9e14b906" }, "eventTime": "2025-08-07T14:09:07Z", "eventSource": "signin.amazonaws.com", "eventName": "UserAuthentication", "awsRegion": "us-east-2", "sourceIPAddress": "192.0.2.14", "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36", "requestParameters": null, "responseElements": null, "additionalEventData": { "AuthWorkflowID": "7a4ef12c-7c4b-4bc3-b5bd-c2469afcc795", "LoginTo": "https://example.awsapps.com/start/", "CredentialType": "PASSWORD" }, "requestID": "fc91bcf0-ac53-4454-a1a0-fb911eacc095", "eventID": "18522007-1e60-4a71-b2b5-150baf504ab3", "readOnly": false, "eventType": "AWS ServiceEvent", "managementEvent": true, "recipientAccountId": "123456789012", "serviceEventDetails": { "UserAuthentication": "Success" }, "eventCategory": "Management" }

Neste exemplo, observe os seguintes campos importantes:

  • eventSource: mostra “signin.amazonaws.com”, indicando que esse é um evento de autenticação do IAM Identity Center.

  • userIdentity.onBehalfOf: contém o ID do usuário e o ARN do repositório de identidades do usuário do aplicativo web.

  • additionalEventData.LoginTo: mostra o URL do aplicativo IAM Identity Center que está sendo acessado.

  • additionalEventData.CredentialType: indica o método de autenticação usado (SENHA).

  • serviceEventDetails: mostra o resultado da autenticação (Sucesso).

Exemplo de entrada de registro para ListCallerAccessGrants

O exemplo a seguir mostra uma entrada de CloudTrail registro para um ListCallerAccessGrants evento, que ocorre quando o aplicativo web Transfer Family consulta as concessões de acesso disponíveis para um usuário.

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLEID:aws-transfer", "arn": "arn:aws:sts::123456789012:assumed-role/AWS TransferWebAppIdentityBearer-us-east-2/aws-transfer", "accountId": "123456789012", "accessKeyId": "ASIAEXAMPLEKEY", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLEID", "arn": "arn:aws:iam::123456789012:role/service-role/AWS TransferWebAppIdentityBearer-us-east-2", "accountId": "123456789012", "userName": "AWS TransferWebAppIdentityBearer-us-east-2" }, "attributes": { "creationDate": "2025-08-08T15:29:34Z", "mfaAuthenticated": "false" } }, "invokedBy": "transfer.amazonaws.com", "onBehalfOf": { "userId": "f12bb510-a011-702f-10dd-5607e2776dbc", "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e" } }, "eventTime": "2025-08-08T15:29:35Z", "eventSource": "s3.amazonaws.com", "eventName": "ListCallerAccessGrants", "awsRegion": "us-east-2", "sourceIPAddress": "transfer.amazonaws.com", "userAgent": "transfer.amazonaws.com", "requestParameters": { "Host": "123456789012.s3-control.dualstack.us-east-2.amazonaws.com", "allowedByApplication": "true", "maxResults": "100" }, "responseElements": null, "additionalEventData": { "SignatureVersion": "SigV4", "CipherSuite": "TLS_AES_128_GCM_SHA256", "bytesTransferredIn": 0, "AuthenticationMethod": "AuthHeader", "x-amz-id-2": "1g34AaAELn/fntxwrifVsr41VDl8dp5ygWFasHJFNVq5FDCWYfX0ye7s4tWHEJC8ppI5lLePYLIcw3iTXAgn5Q==", "bytesTransferredOut": 462 }, "requestID": "48485MTZEDWT0ANT", "eventID": "3de5dd60-b7cf-474c-a1ab-631467c1a5c3", "readOnly": true, "resources": [ { "accountId": "123456789012", "type": "AWS:S3::AccessGrantsInstance", "ARN": "arn:aws:s3:us-east-2:123456789012:access-grants/default" } ], "eventType": "AWS ApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management" }

Neste exemplo, observe os seguintes campos importantes:

  • eventName: Mostra que se trata de um ListCallerAccessGrants evento que consulta as concessões de acesso disponíveis do S3.

  • requestParameters.allowedByApplication: indica que a consulta está filtrada de acordo com as concessões permitidas pelo aplicativo.

  • requestParameters.maxResults: mostra o número máximo de subsídios a serem devolvidos na resposta.

  • userIdentity.onBehalfOf: vincula a solicitação ao usuário específico do aplicativo web.

Esse evento ajuda a monitorar quando o aplicativo web Transfer Family consulta a quais recursos do S3 um usuário tem acesso, fornecendo visibilidade das operações de descoberta de concessões de acesso.

Exemplo de entrada de registro para GetDataAccess evento

O exemplo a seguir mostra uma entrada de CloudTrail registro para um GetDataAccess evento, que ocorre quando o aplicativo web Transfer Family solicita permissões de acesso aos recursos do S3 em nome de um usuário.

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROASEQRAEABP7ADWEZA5:aws-transfer", "arn": "arn:aws:sts::123456789012:assumed-role/AWSTransferWebAppIdentityBearer-ap-southeast-1/aws-transfer", "accountId": "123456789012", "accessKeyId": "ASIAEXAMPLEKEY", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROASEQRAEABP7ADWEZA5", "arn": "arn:aws:iam::123456789012:role/service-role/AWSTransferWebAppIdentityBearer-ap-southeast-1", "accountId": "123456789012", "userName": "AWSTransferWebAppIdentityBearer-ap-southeast-1" }, "attributes": { "creationDate": "2025-05-08T16:09:05Z", "mfaAuthenticated": "false" } }, "invokedBy": "transfer.amazonaws.com", "onBehalfOf": { "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9667b0da7a", "userId": "191a35ec-10a1-70c1-e4ab-e2802411e13e" } }, "eventTime": "2025-05-08T16:10:25Z", "eventSource": "s3.amazonaws.com", "eventName": "GetDataAccess", "awsRegion": "ap-southeast-1", "sourceIPAddress": "transfer.amazonaws.com", "userAgent": "transfer.amazonaws.com", "requestParameters": { "Host": "123456789012.s3-control.dualstack.ap-southeast-1.amazonaws.com", "durationSeconds": 900, "permission": "READWRITE", "target": "s3://amzn-s3-demo-bucket/users/john.doe/documents/*" }, "responseElements": null, "additionalEventData": { "AuthenticationMethod": "AuthHeader", "CipherSuite": "TLS_AES_128_GCM_SHA256", "SignatureVersion": "SigV4", "bytesTransferredIn": 0, "bytesTransferredOut": 2244, "x-amz-id-2": "8ce8sZOgNwsaj9w1mzagyA+csONjYl8FgEw4FGpE8DARi90aNC0RFWlTYNEn7ChqE9RCJrTzMvS+ru7Vz2xXHrkQt/1uQ9exZTZdlhX+/fM=" }, "requestID": "BXGSKKQXCWS5RAHB", "eventID": "c11db1d1-dfb8-431e-8625-48eba2ebadfe", "readOnly": true, "resources": [ { "type": "AWS:S3::AccessGrantsInstance", "ARN": "arn:aws:s3:ap-southeast-1:123456789012:access-grants/default", "accountId": "123456789012" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management" }

Neste exemplo, observe os seguintes campos importantes:

  • eventName: mostra que esse é um GetDataAccess evento que ocorre quando o Transfer Family solicita permissões de acesso aos recursos do S3.

  • userIdentity.onBehalfOf: contém o ARN e o ID do usuário do repositório de identidades, vinculando a solicitação de acesso ao usuário específico do aplicativo web.

  • requestParameters.target: mostra o padrão de caminho do S3 para o qual o acesso foi solicitado.

  • requestParameters.permission: indica o tipo de acesso solicitado (READWRITE, READ ou WRITE).

  • requestParameters.durationSeconds: mostra por quanto tempo a concessão de acesso é válida (normalmente 900 segundos/15 minutos).

  • sourceIPAddresseuserAgent: Ambos mostram “transfer.amazonaws.com”, indicando que se trata de uma solicitação de serviço interna.

GetDataAccess os eventos são particularmente úteis para rastrear quando os usuários do aplicativo web Transfer Family recebem acesso a recursos específicos do S3, ajudando você a monitorar os padrões de acesso e garantir a autorização adequada.

Visualizando entradas CloudTrail de registro

Há várias maneiras de visualizar e analisar as entradas de CloudTrail registro do seu aplicativo web Transfer Family:

Usando o CloudTrail console

O CloudTrail console fornece uma interface fácil de usar para visualizar e filtrar entradas de registro:

  1. Abra o CloudTrail console em https://console.aws.amazon.com/cloudtrail/.

  2. No painel de navegação, escolha Event history (Histórico de eventos).

  3. Use as opções de filtro para restringir os eventos:

    • Defina Origem do evento como transfer.amazonaws.com para ver somente os eventos do Transfer Family.

    • Filtre por nome do evento para ver operações específicas, comoUserAuthentication.

    • Use o intervalo de tempo para se concentrar em eventos dentro de um período específico.

  4. Clique em qualquer evento para ver suas informações detalhadas.

Acessando registros no Amazon S3

Se você configurou uma CloudTrail trilha para entregar registros para um bucket do Amazon S3, você pode acessar os arquivos de log brutos diretamente:

  1. Abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.

  2. Navegue até o bucket e o prefixo em que seus CloudTrail registros estão armazenados.

  3. Os registros são organizados por ano, mês, dia e região. Navegue até o diretório apropriado.

  4. Baixe e abra os arquivos de log, que estão no formato JSON.