Registros de acesso do Amazon VPC Lattice - Amazon VPC Lattice

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

Registros de acesso do Amazon VPC Lattice

Os registros de acesso capturam informações detalhadas sobre seus serviços e configurações de recursos do VPC Lattice. Você pode usar esses logs de acesso para analisar padrões de tráfego e auditar todos os serviços na rede. Para serviços VPC Lattice, publicamos VpcLatticeAccessLogs e para configurações de recursos, publicamos VpcLatticeResourceAccessLogs o que precisa ser configurado separadamente.

Logs de acesso são opcionais e estão desabilitados por padrão. Após ativar os logs de acesso, você poderá desabilitá-los a qualquer momento.

Preços

Haverá cobranças quando os logs de acesso forem publicados. Os registros que são publicados AWS nativamente em seu nome são chamados de registros vendidos. Para obter mais informações sobre preços de registros vendidos, consulte Amazon CloudWatch Pricing, escolha Logs e veja os preços em Vended Logs.

IAMpermissões necessárias para habilitar registros de acesso

Para habilitar os registros de acesso e enviá-los para seus destinos, você deve ter as seguintes ações na política anexadas ao IAM usuário, grupo ou função que você está usando.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "ManageVPCLatticeAccessLogSetup", "Action": [ "logs:CreateLogDelivery", "logs:GetLogDelivery", "logs:UpdateLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries", "vpc-lattice:CreateAccessLogSubscription", "vpc-lattice:GetAccessLogSubscription", "vpc-lattice:UpdateAccessLogSubscription", "vpc-lattice:DeleteAccessLogSubscription", "vpc-lattice:ListAccessLogSubscriptions" ], "Resource": [ "*" ] } ] }

Para obter mais informações, consulte Adicionar e remover permissões de IAM identidade no Guia AWS Identity and Access Management do usuário.

Depois de atualizar a política anexada ao IAM usuário, grupo ou função que você está usando, acesseHabilitar logs de acesso.

Destinos de logs de acesso

Você pode enviar logs de acesso para os seguintes destinos.

CloudWatch Registros da Amazon
  • VPCO Lattice normalmente entrega os registros para o CloudWatch Logs em 2 minutos. No entanto, lembre-se de que o tempo efetivo de entrega dos logs é baseado no melhor esforço possível e pode haver latência adicional.

  • Uma política de recursos é criada automaticamente e adicionada ao grupo de CloudWatch registros se o grupo de registros não tiver determinadas permissões. Para obter mais informações, consulte Registros enviados para CloudWatch Logs no Guia CloudWatch do usuário da Amazon.

  • Você pode encontrar registros de acesso que são enviados CloudWatch em Grupos de registros no CloudWatch console. Para obter mais informações, consulte Exibir dados de log enviados para CloudWatch Logs no Guia CloudWatch do usuário da Amazon.

Amazon S3
  • VPCO Lattice normalmente entrega registros para o Amazon S3 em 6 minutos. No entanto, lembre-se de que o tempo efetivo de entrega dos logs é baseado no melhor esforço possível e pode haver latência adicional.

  • Uma política de bucket será criada automaticamente e adicionada ao seu bucket do Amazon S3 se o bucket não tiver determinadas permissões. Para obter mais informações, consulte Registros enviados para o Amazon S3 no Guia CloudWatch do usuário da Amazon.

  • Logs de acesso que são enviados ao Amazon S3 usam a seguinte convenção de nomenclatura:

    [bucket]/[prefix]/AWSLogs/[accountId]/VpcLattice/AccessLogs/[region]/[YYYY/MM/DD]/[resource-id]/[accountId]_VpcLatticeAccessLogs_[region]_[resource-id]_YYYYMMDDTHHmmZ_[hash].json.gz
  • VpcLatticeResourceAccessLogs que são enviados para o Amazon S3 usam a seguinte convenção de nomenclatura:

    [bucket]/[prefix]/AWSLogs/[accountId]/VpcLattice/ResourceAccessLogs/[region]/[YYYY/MM/DD]/[resource-id]/[accountId]_VpcLatticeResourceAccessLogs_[region]_[resource-id]_YYYYMMDDTHHmmZ_[hash].json.gz
Amazon Data Firehose
  • VPCO Lattice normalmente entrega os registros para o Firehose em 2 minutos. No entanto, lembre-se de que o tempo efetivo de entrega dos logs é baseado no melhor esforço possível e pode haver latência adicional.

  • Uma função vinculada ao serviço é criada automaticamente e concede permissão à VPC Lattice para enviar registros de acesso para o. Amazon Data Firehose Para que a criação automática da função seja bem-sucedida, os usuários devem ter permissão para a ação iam:CreateServiceLinkedRole. Para obter mais informações, consulte Registros enviados Amazon Data Firehose no Guia do CloudWatch usuário da Amazon.

  • Para obter mais informações sobre como visualizar os logs enviados ao Amazon Data Firehose, consulte Como monitorar o Amazon Kinesis Data Streams no Guia do desenvolvedor do Amazon Data Firehose .

Habilitar logs de acesso

Execute o procedimento a seguir para configurar logs de acesso a fim de capturar e entregar logs de acesso ao destino que você escolher.

Habilitar os logs de acesso usando o console

Você pode ativar os registros de acesso para uma rede de serviços, um serviço ou uma configuração de recursos durante a criação. Você também pode ativar os registros de acesso depois de criar uma rede de serviços, um serviço ou uma configuração de recursos, conforme descrito no procedimento a seguir.

Para criar um serviço básico usando o console
  1. Abra o VPC console da Amazon em https://console.aws.amazon.com/vpc/.

  2. Selecione a rede de serviços, o serviço ou a configuração do recurso.

  3. Escolha Ações, Editar configurações de log.

  4. Ative o seletor de Logs de acesso.

  5. Adicione um destino de entrega para seus logs de acesso da seguinte forma:

    • Selecione Grupo de CloudWatch registros e escolha um grupo de registros. Para criar um grupo de registros, escolha Criar um grupo de registros em CloudWatch.

    • Selecione o bucket do S3 e insira o caminho do bucket do S3, incluindo qualquer prefixo. Para pesquisar seus buckets do S3, escolha Procurar S3.

    • Em Fluxo de entrega do Kinesis Data Firehose, selecione um fluxo de entrega. Para criar um fluxo de entrega, escolha Criar um fluxo de entrega no Kinesis.

  6. Escolha Salvar alterações.

Habilitar os logs de acesso usando a AWS CLI

Use o CLI comando create-access-log-subscriptionpara habilitar registros de acesso para redes ou serviços de serviços.

Conteúdo dos logs de acesso

A tabela a seguir descreve os campos de uma entrada no log de acesso.

Campo Descrição Formato
hostHeader

O cabeçalho da autoridade da solicitação.

string

sslCipher

O SSL nome aberto do conjunto de cifras usado para estabelecer a conexão do clienteTLS.

string

serviceNetworkArn

A rede de serviçosARN.

arn:aws:vpc-lattice: ::servicenetwork/ region account id

resolvedUser

O ARN do usuário quando a autenticação está habilitada e a autenticação é feita.

null | ARN | “Anônimo” | “Desconhecido”

authDeniedReason

O motivo pelo qual o acesso é negado quando a autenticação estiver habilitada.

null | "Service" | "Network" | "Identity"

requestMethod

O cabeçalho do método da solicitação.

string

targetGroupArn

O grupo de hosts de destino ao qual o host de destino pertence.

string

tlsVersion

A versão do TLS.

TLSvx

userAgent

O cabeçalho user-agent.

string

ServerNameIndication

[HTTPSsomente] O valor definido no soquete de conexão ssl para Indicação do Nome do Servidor ()SNI.

string

destinationVpcId

O VPC ID do destino.

pvc- xxxxxxxx

sourceIpPort

O endereço IP e a porta da origem.

ip:port

targetIpPort

O endereço IP e a porta do destino.

ip:port

serviceArn

O serviçoARN.

arn:aws:vpc-lattice: ::service/ region account id

sourceVpcId

O VPC ID de origem.

pvc- xxxxxxxx

requestPath

O caminho da solicitação.

LatticePath?:path

startTime

O horário inicial da solicitação.

YYYY- MM - DD T HHMM: SS Z

protocol

O protocolo. Atualmente, HTTP /1.1 ou HTTP /2.

string

responseCode

O código de HTTP resposta. Somente o código de resposta para os cabeçalhos finais é registrado em log. Para obter mais informações, consulte Solucionar problemas de logs de acesso.

inteiro

bytesReceived

Os bytes do corpo e do cabeçalho recebidos.

inteiro

bytesSent

Os bytes do corpo e do cabeçalho enviados.

inteiro

duration

Duração total em milissegundos da solicitação desde a hora de início até o último byte de saída.

inteiro

requestToTargetDuration

Duração total em milissegundos da solicitação desde a hora de início até o último byte enviado ao destino.

inteiro

responseFromTargetDuration

Duração total em milissegundos da solicitação desde o primeiro byte lido do host de destino até o último byte enviado ao cliente.

inteiro

grpcResponseCode

O código de RPC resposta g. Para obter mais informações, consulte Códigos de status e seu uso em RPC g. Esse campo é registrado somente se o serviço suportar g. RPC

inteiro

callerPrincipal

A entidade principal autenticada.

string

callerX509SubjectCN

O nome do assunto (CN).

string

callerX509IssuerOU

O emissor (OU).

string

callerX509SANNameCN

O nome alternativo do emissor (nome/CN).

string

callerX509SANDNS

O nome alternativo do assunto (DNS).

string

callerX509SANURI

O nome alternativo do assunto (URI).

string

sourceVpcArn

O ARN de VPC onde a solicitação foi originada.

arn:aws:ec2: ::vpc/ region account id

Exemplo

Este é um exemplo de entrada de log.

{ "hostHeader": "example.com", "sslCipher": "-", "serviceNetworkArn": "arn:aws:vpc-lattice:us-west-2:123456789012:servicenetwork/svn-1a2b3c4d", "resolvedUser": "Unknown", "authDeniedReason": "null", "requestMethod": "GET", "targetGroupArn": "arn:aws:vpc-lattice:us-west-2:123456789012:targetgroup/tg-1a2b3c4d", "tlsVersion": "-", "userAgent": "-", "serverNameIndication": "-", "destinationVpcId": "vpc-0abcdef1234567890", "sourceIpPort": "178.0.181.150:80", "targetIpPort": "131.31.44.176:80", "serviceArn": "arn:aws:vpc-lattice:us-west-2:123456789012:service/svc-1a2b3c4d", "sourceVpcId": "vpc-0abcdef1234567890", "requestPath": "/billing", "startTime": "2023-07-28T20:48:45Z", "protocol": "HTTP/1.1", "responseCode": 200, "bytesReceived": 42, "bytesSent": 42, "duration": 375, "requestToTargetDuration": 1, "responseFromTargetDuration": 1, "grpcResponseCode": 1 }

Conteúdo do log de acesso a recursos

A tabela a seguir descreve os campos de uma entrada de registro de acesso a recursos.

Campo Descrição Formato
serviceNetworkArn

A rede de serviçosARN.

Arquivo: partition vpc-lattice: ::servicenetwork/ region account id

serviceNetworkResourceAssociationId

O ID do recurso da rede de serviços.

snra-xxx

vpcEndpointId

O ID do endpoint usado para acessar o recurso.

string

sourceVpcArn

A origem VPC ARN ou a VPC partir da qual a conexão foi iniciada.

string

resourceConfigurationArn

A ARN da configuração do recurso que foi acessada.

string

protocol

O protocolo usado para se comunicar com a configuração do recurso. Atualmente, somente o tcp é suportado.

string

sourceIpPort

O endereço IP e a porta da fonte que iniciou a conexão.

ip:port

destinationIpPort

O endereço IP e a porta na qual a conexão foi iniciada. Esse será o IP do SN-E/SN-A.

ip:port

gatewayIpPort

O endereço IP e a porta usados pelo gateway de recursos para acessar o recurso.

ip:port

resourceIpPort

O endereço IP e a porta do recurso.

ip:port

Exemplo

Este é um exemplo de entrada de log.

{ "eventTimestamp": "2024-12-02T10:10:10.123Z", "serviceNetworkArn": "arn:aws:vpc-lattice:us-west-2:1234567890:servicenetwork/sn-1a2b3c4d", "serviceNetworkResourceAssociationId": "snra-1a2b3c4d", "vpcEndpointId": "vpce-01a2b3c4d", "sourceVpcArn": "arn:aws:ec2:us-west-2:1234567890:vpc/vpc-01a2b3c4d", "resourceConfigurationArn": "arn:aws:vpc-lattice:us-west-2:0987654321:resourceconfiguration/rcfg-01a2b3c4d", "protocol": "tcp", "sourceIpPort": "172.31.23.56:44076", "destinationIpPort": "172.31.31.226:80", "gatewayIpPort": "10.0.28.57:49288", "resourceIpPort": "10.0.18.190:80" }

Solucionar problemas de logs de acesso

Esta seção contém uma explicação dos códigos de HTTP erro que você pode ver nos registros de acesso.

Código de erro Possíveis causas

HTTP400: Solicitação inválida

  • O cliente enviou uma solicitação malformada que não atende às HTTP especificações.

  • O cabeçalho da solicitação excedeu 60K para todo o cabeçalho da solicitação ou mais de 100 cabeçalhos.

  • O cliente fechou a conexão antes de enviar o corpo completo da solicitação.

HTTP403: Proibido

A autenticação foi configurada para o serviço, mas a solicitação recebida não está autenticada nem autorizada.

HTTP404: Serviço inexistente

Você está tentando se conectar a um serviço que não existe ou não está registrado na rede de serviços correta.

HTTP500: Erro interno do servidor

VPCO Lattice encontrou um erro, como falha na conexão com os alvos.

HTTP502: Gateway inválido

VPCO Lattice encontrou um erro.