Log de chamadas de API do Amplify usando o AWS CloudTrail - AWS Amplify Hospedagem

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

Log de chamadas de API do Amplify usando o AWS CloudTrail

O AWS Amplify é integrado ao AWS CloudTrail, um serviço que fornece um registro das ações realizadas por um usuário, um perfil ou um serviço AWS no Amplify. O CloudTrail captura as chamadas de API do Amplify como eventos. As chamadas capturadas incluem as chamadas do console do Amplify e as chamadas de código para as operações da API do Amplify. Se você criar uma trilha, poderá habilitar a entrega contínua de eventos do CloudTrail para um bucket do Amazon S3, incluindo eventos para o Amplify. Se você não configurar uma trilha, ainda poderá visualizar os eventos mais recentes no console do CloudTrail em Histórico de eventos. Usando as informações coletadas pelo CloudTrail, é possível determinar a solicitação feita ao Amplify, o endereço IP do qual a solicitação foi feita, quem fez a solicitação, quando ela foi feita e outros detalhes.

Para saber mais sobre o CloudTrail, consulte o Guia do usuário do AWS CloudTrail.

Informações do Amplify no CloudTrail

O CloudTrail é habilitado na sua conta da AWS. Quando ocorre uma atividade no Amplify, essa atividade é registrada em um evento do CloudTrail junto com outros eventos de serviço da AWS no Histórico de eventos. Você pode visualizar, pesquisar e baixar eventos recentes em sua conta da AWS. Para obter mais informações, consulte Visualizar eventos com o histórico de eventos CloudTrail no Guia do usuário do AWS CloudTrail.

Para obter um registro contínuo de eventos da conta da AWS, incluindo eventos do Amplify, crie uma trilha. Uma trilha permite que o CloudTrail entregue arquivos de log a um bucket do Amazon S3. Por padrão, quando você cria uma trilha no console, ela é aplicada a todas as regiões da AWS. A trilha registra em log eventos de todas as regiões na partição da AWS e entrega os arquivos de log para o bucket do Amazon S3 especificado por você. Além disso, é possível configurar outros serviços da AWS para analisar mais ainda mais e agir com base nos dados de eventos coletados nos logs do CloudTrail. Para obter mais informações, consulte o seguinte no Guia do usuário do AWS CloudTrail:

Todas as operações do Amplify são registradas pelo CloudTrail e documentadas na Referência da API do Console do AWS Amplify, na Referência da API Amplify Admin UI do AWS e na Referência da API do Amplify UI Builder. Por exemplo, as chamadas para as operações CreateApp, DeleteApp e DeleteBackendEnvironment geram entradas nos arquivos de log do CloudTrail.

Cada entrada de log ou evento contém informações sobre quem gerou a solicitação. As informações de identidade ajudam a determinar:

  • A solicitação foi feita com credenciais de usuário raiz AWS Identity and Access Management ou do IAM?

  • Se a solicitação foi feita com credenciais de segurança temporárias de um perfil ou de um usuário federado.

  • A solicitação foi feita por outro serviço da AWS.

Para obter mais informações, consulte o Elemento userIdentity do CloudTrail no Manual do usuário do AWS CloudTrail.

Noções básicas sobre as entradas de arquivos de log do Amplify

Uma trilha é uma configuração que permite a entrega de eventos como arquivos de log a um bucket do Amazon S3 especificado. Os arquivos de log do CloudTrail contêm uma ou mais entradas de log. Um evento representa uma única solicitação de qualquer fonte e inclui informações sobre a ação solicitada, a data e a hora da ação, os parâmetros de solicitação e assim por diante. Os arquivos de log do CloudTrail não são um rastreamento de pilha ordenada de chamadas de API pública. Dessa forma, eles não são exibidos em uma ordem específica.

O exemplo a seguir mostra uma entrada de log do CloudTrail que demonstra a operação de referência da API Console ListApps do AWS Amplify.

{ "eventVersion": "1.08", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::444455556666:user/Mary_Major", "accountId": "444455556666", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Mary_Major", "sessionContext": { "sessionIssuer": {}, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-01-12T05:48:10Z" } } }, "eventTime": "2021-01-12T06:47:29Z", "eventSource": "amplify.amazonaws.com", "eventName": "ListApps", "awsRegion": "us-west-2", "sourceIPAddress": "192.0.2.255", "userAgent": "aws-internal/3 aws-sdk-java/1.11.898 Linux/4.9.230-0.1.ac.223.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.275-b01 java/1.8.0_275 vendor/Oracle_Corporation", "requestParameters": { "maxResults": "100" }, "responseElements": null, "requestID": "1c026d0b-3397-405a-95aa-aa43aexample", "eventID": "c5fca3fb-d148-4fa1-ba22-5fa63example", "readOnly": true, "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "444455556666" }

O exemplo a seguir mostra uma entrada de log do CloudTrail que demonstra a operação de referência da API da UI Admin ListBackendJobs do AWS Amplify.

{ "eventVersion": "1.08", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::444455556666:user/Mary_Major", "accountId": "444455556666", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Mary_Major", "sessionContext": { "sessionIssuer": {}, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-01-13T00:47:25Z" } } }, "eventTime": "2021-01-13T01:15:43Z", "eventSource": "amplifybackend.amazonaws.com", "eventName": "ListBackendJobs", "awsRegion": "us-west-2", "sourceIPAddress": "192.0.2.255", "userAgent": "aws-internal/3 aws-sdk-java/1.11.898 Linux/4.9.230-0.1.ac.223.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.275-b01 java/1.8.0_275 vendor/Oracle_Corporation", "requestParameters": { "appId": "d23mv2oexample", "backendEnvironmentName": "staging" }, "responseElements": { "jobs": [ { "appId": "d23mv2oexample", "backendEnvironmentName": "staging", "jobId": "ed63e9b2-dd1b-4bf2-895b-3d5dcexample", "operation": "CreateBackendAuth", "status": "COMPLETED", "createTime": "1610499932490", "updateTime": "1610500140053" }, { "appId": "d23mv2oexample", "backendEnvironmentName": "staging", "jobId": "06904b10-a795-49c1-92b7-185dfexample", "operation": "CreateBackend", "status": "COMPLETED", "createTime": "1610499657938", "updateTime": "1610499704458" } ], "appId": "d23mv2oexample", "backendEnvironmentName": "staging" }, "requestID": "7adfabd6-98d5-4b11-bd39-c7deaexample", "eventID": "68769310-c96c-4789-a6bb-68b52example", "readOnly": false, "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "444455556666" }