Registros de acceso a VPC Lattice - Amazon VPC Lattice

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Registros de acceso a VPC Lattice

Los registros de acceso registran información detallada sobre sus servicios de VPC Lattice. Puede usar estos registros de acceso para analizar los patrones de tráfico y controlar todos los servicios de la red.

Los registros de acceso son opcionales y están deshabilitados de forma predeterminada. Después de habilitar los registros de acceso, puede deshabilitarlos en cualquier momento.

Precios

Los cargos se aplican cuando se publican los registros de acceso. Los registros que se publican de AWS forma nativa en su nombre se denominan registros vendidos. Para obtener más información sobre los precios de los registros vendidos, consulta los CloudWatch precios de Amazon, selecciona Logs y consulta los precios en Vended Logs.

Permisos de IAM necesarios para habilitar los registros de acceso

Para habilitar los registros de acceso y enviarlos a sus destinos, debe tener las siguientes acciones en la política asociada al usuario, grupo o rol de IAM que está utilizando.

{ "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 obtener más información, consulte Adición y eliminación de permisos de identidad de IAM en la Guía del usuario deAWS Identity and Access Management .

Una vez que haya actualizado la política asociada al usuario, grupo o rol de IAM que está utilizando, vaya a Habilitar registros de acceso.

Destinos de registro de acceso

Puede enviar registros de acceso a los siguientes destinos.

Amazon CloudWatch Logs
  • Por lo general, VPC Lattice entrega los registros a los registros en CloudWatch 2 minutos. Sin embargo, tenga en cuenta que el tiempo real de entrega de los registros se basa en el mayor esfuerzo y puede haber una demora adicional.

  • Se crea automáticamente una política de recursos y se agrega al grupo de CloudWatch registros si el grupo de registros no tiene determinados permisos. Para obtener más información, consulta Registros enviados a CloudWatch Logs en la Guía del CloudWatch usuario de Amazon.

  • Puede encontrar los registros de acceso que se envían en la CloudWatch sección Grupos de registros de la CloudWatch consola. Para obtener más información, consulta Ver los datos de registro enviados a CloudWatch Logs en la Guía del CloudWatch usuario de Amazon.

Amazon S3
  • Normalmente, VPC Lattice le entrega los registros a Amazon S3 en un plazo de 6 minutos. Sin embargo, tenga en cuenta que el tiempo real de entrega de los registros se basa en el mayor esfuerzo y puede haber una demora adicional.

  • Se creará una política de bucket automáticamente y se añadirá a su bucket de Amazon S3 si este no cuenta con ciertos permisos. Para obtener más información, consulte Registros enviados a Amazon S3 en la Guía del CloudWatch usuario de Amazon.

  • Los registros de acceso que se envían a Amazon S3 utilizan la siguiente convención de nomenclatura:

    [bucket]/[prefix]/AWSLogs/[accountId]/VpcLattice/AccessLogs/[region]/[YYYY/MM/DD]/[resource-id]/[accountId]_VpcLatticeAccessLogs_[region]_[resource-id]_YYYYMMDDTHHmmZ_[hash].json.gz
Amazon Data Firehose
  • Por lo general, VPC Lattice entrega los troncos a Firehose en 2 minutos. Sin embargo, tenga en cuenta que el tiempo real de entrega de los registros se basa en el mayor esfuerzo y puede haber una demora adicional.

  • Se crea automáticamente una función vinculada al servicio que otorga permiso a VPC Lattice para enviar registros de acceso a Amazon Data Firehose. Para que la creación automática de roles se realice correctamente, los usuarios deben disponer de permisos para la acción iam:CreateServiceLinkedRole. Para obtener más información, consulta los registros enviados a Amazon Data Firehose en la Guía del CloudWatch usuario de Amazon.

  • Para obtener más información sobre la visualización de los registros enviados a Amazon Data Firehose, consulte Monitorización de Amazon Kinesis Data Streams en Amazon Data Firehose la Guía para desarrolladores.

Habilitar registros de acceso

Complete el siguiente procedimiento para configurar los registros de acceso a fin de capturar y entregar los registros de acceso al destino que elija.

Habilitación de registro de acceso desde la consola

Puede habilitar los registros de acceso para una red de servicios o para un servicio durante la creación. También puede habilitar los registros de acceso después de crear una red de servicio o servicio, tal y como se describe en el siguiente procedimiento.

Cómo crear un servicio básico mediante la consola
  1. Abra la consola de Amazon VPC en https://console.aws.amazon.com/vpc/.

  2. Seleccione la red de servicio o servicio.

  3. Elija Acciones, Editar configuraciones de registro.

  4. Active el conmutador de Registros de acceso.

  5. Añada un destino de entrega para sus registros de acceso de la siguiente manera:

    • Seleccione Grupo de CloudWatch registros y elija un grupo de registros. Para crear un grupo de registros, elija Crear un grupo de registros en CloudWatch.

    • Seleccione Bucket de S3 e introduzca la ruta del bucket de S3, incluido cualquier prefijo. Para buscar sus buckets de S3, elija Explorar S3.

    • Seleccione Flujo de entrega de Kinesis Data Firehose y elija un flujo de entrega. Para crear un flujo de entrega, elija Crear un flujo de entrega en Kinesis.

  6. Elija Guardar cambios.

Habilite los registros de acceso mediante el AWS CLI

Use el comando CLI create-access-log-subscriptionpara habilitar los registros de acceso para redes o servicios de servicio.

Contenidos del registro de acceso

En la siguiente tabla se describen los campos de una entrada de registro de acceso.

Campo Descripción Formato
hostHeader

El encabezado de autoridad de la solicitud.

cadena

sslCipher

El nombre OpenSSL del conjunto de cifrados que se utiliza para establecer la conexión TLS del cliente.

cadena

serviceNetworkArn

La red de servicios ARN.

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

resolvedUser

El ARN del usuario cuando se habilita y se realiza la autenticación.

anulación | ARN | “Anónimo” | “Desconocido”

authDeniedReason

El motivo por el que se rechaza el acceso cuando la autenticación está habilitada.

anulación | “Servicio” | “Red” | “Identidad”

requestMethod

El encabezado del método de la solicitud.

cadena

targetGroupArn

El grupo de hosts de destino al que pertenece el host de destino.

cadena

tlsVersion

La versión de TLS.

TLSvx

userAgent

El encabezado del usuario-agente.

cadena

ServerNameIndication

[Solo HTTPS] El valor establecido en el socket de la conexión ssl para la indicación de nombre de servidor (SNI).

cadena

destinationVpcId

El ID del VPC de destino.

vpc-xxxxxxxx

sourceIpPort

Dirección IP y el puerto del origen.

ip:port

targetIpPort

La dirección IP y el puerto de destino.

ip:port

serviceArn

El servicio ARN.

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

sourceVpcId

El ID del VPC de origen.

vpc-xxxxxxxx

requestPath

La ruta de la solicitud.

LatticePath? : camino

startTime

La hora de inicio de la solicitud.

AAAA-MM-DDTHH:MM:SSZ

protocol

El protocolo. Actualmente, HTTP/1.1 o HTTP/2.

cadena

responseCode

El código de respuesta HTTP. Solo se registra el código de respuesta de los encabezados finales. Para obtener más información, consulte Solución de problemas en el registro de acceso.

integer

bytesReceived

Los bytes de cuerpo y encabezado recibidos.

integer

bytesSent

Los bytes de cuerpo y encabezado enviados.

integer

duration

Duración total en milisegundos de la solicitud desde la hora de inicio hasta la salida del último byte.

integer

requestToTargetDuration

Duración total en milisegundos de la solicitud desde la hora de inicio hasta el envío a destino del último byte.

integer

responseFromTargetDuration

Duración total en milisegundos de la solicitud desde el primer byte leído desde el host de destino hasta el envío al cliente del último byte.

integer

grpcResponseCode

El código de respuesta gRPC. Para obtener más información, consulte los Códigos de estado y su uso en gRPC. Este campo solo se registra si el servicio es compatible con gRPC.

integer

callerPrincipal

La entidad principal autenticada.

cadena

callerX509SubjectCN

El nombre del sujeto (CN).

cadena

callerX509IssuerOU

El emisor (OU).

cadena

callerX509SANNameCN

La alternativa del emisor (nombre/CN).

cadena

callerX509SANDNS

El nombre alternativo del sujeto (DNS).

cadena

callerX509SANURI

El nombre alternativo del sujeto (URI).

cadena

sourceVpcArn

El ARN de la VPC en donde se originó la solicitud.

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

Ejemplo

A continuación, se muestra un ejemplo de entrada de registro.

{ "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 }

Solución de problemas en el registro de acceso

Esta sección contiene una explicación de los códigos de error HTTP que pueden aparecer en los registros de acceso.

Código de error Causas posibles

HTTP 400: Solicitud errónea

  • El cliente envió una solicitud incorrecta que no se ajusta a la especificación de HTTP.

  • El encabezado de la solicitud superó los 60 000 para todo el encabezado de la solicitud o los 100 encabezados.

  • El cliente cerró la conexión antes de enviar el cuerpo completo de la solicitud.

HTTP 403: Prohibido

Se configuró la autenticación del servicio, pero la solicitud entrante no está autenticada ni autorizada.

HTTP 404: servicio inexistente

Está intentando conectarse a un servicio que no existe o que no está registrado en la red de servicio correcta.

HTTP 500: Error interno del servidor

VPC Lattice ha detectado un error, por ejemplo, una falla al conectarse a los destinos.

HTTP 502: Bad Gateway

VPC Lattice ha detectado un error.