Formato de registro de acceso al servidor de Amazon S3
El registro de acceso al servidor proporciona el historial detallado de las solicitudes que se realizan a un bucket de Amazon S3. Puede utilizar los registros de acceso al servidor para auditorías de seguridad y acceso, obtener información sobre la base de clientes o comprender la factura de Amazon S3. En esta sección se describe el formato y otros detalles acerca de los archivos de registro de acceso al servidor de Amazon S3.
Los archivos de registro de acceso al servidor consisten en una secuencia de registros delimitados por nueva línea. Cada entrada de registro representa una solicitud y consta de campos delimitados por espacios.
El siguiente es un registro de ejemplo que consta de cinco entradas de registro.
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be awsexamplebucket1 [06/Feb/2019:00:00:38 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be 3E57427F3EXAMPLE REST.GET.VERSIONING - "GET /awsexamplebucket1?versioning HTTP/1.1" 200 - 113 - 7 - "-" "S3Console/0.4" - s9lzHYrFp76ZVxRcpX9+5cjAnEH2ROuNkd2BHfIa6UkFVdtjf5mKR3/eTPFvsiP/XV/VLi31234= SigV2 ECDHE-RSA-AES128-GCM-SHA256 AuthHeader awsexamplebucket1.s3.us-west-1.amazonaws.com TLSV1.1 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be awsexamplebucket1 [06/Feb/2019:00:00:38 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be 891CE47D2EXAMPLE REST.GET.LOGGING_STATUS - "GET /awsexamplebucket1?logging HTTP/1.1" 200 - 242 - 11 - "-" "S3Console/0.4" - 9vKBE6vMhrNiWHZmb2L0mXOcqPGzQOI5XLnCtZNPxev+Hf+7tpT6sxDwDty4LHBUOZJG96N1234= SigV2 ECDHE-RSA-AES128-GCM-SHA256 AuthHeader awsexamplebucket1.s3.us-west-1.amazonaws.com TLSV1.1 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be awsexamplebucket1 [06/Feb/2019:00:00:38 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be A1206F460EXAMPLE REST.GET.BUCKETPOLICY - "GET /awsexamplebucket1?policy HTTP/1.1" 404 NoSuchBucketPolicy 297 - 38 - "-" "S3Console/0.4" - BNaBsXZQQDbssi6xMBdBU2sLt+Yf5kZDmeBUP35sFoKa3sLLeMC78iwEIWxs99CRUrbS4n11234= SigV2 ECDHE-RSA-AES128-GCM-SHA256 AuthHeader awsexamplebucket1.s3.us-west-1.amazonaws.com TLSV1.1 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be awsexamplebucket1 [06/Feb/2019:00:01:00 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be 7B4A0FABBEXAMPLE REST.GET.VERSIONING - "GET /awsexamplebucket1?versioning HTTP/1.1" 200 - 113 - 33 - "-" "S3Console/0.4" - Ke1bUcazaN1jWuUlPJaxF64cQVpUEhoZKEG/hmy/gijN/I1DeWqDfFvnpybfEseEME/u7ME1234= SigV2 ECDHE-RSA-AES128-GCM-SHA256 AuthHeader awsexamplebucket1.s3.us-west-1.amazonaws.com TLSV1.1 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be awsexamplebucket1 [06/Feb/2019:00:01:57 +0000] 192.0.2.3 79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be DD6CC733AEXAMPLE REST.PUT.OBJECT s3-dg.pdf "PUT /awsexamplebucket1/s3-dg.pdf HTTP/1.1" 200 - - 4406583 41754 28 "-" "S3Console/0.4" - 10S62Zv81kBW7BB6SX4XJ48o6kpcl6LPwEoizZQQxJd5qDSCTLX0TgS37kYUBKQW3+bPdrg1234= SigV4 ECDHE-RSA-AES128-SHA AuthHeader awsexamplebucket1.s3.us-west-1.amazonaws.com TLSV1.1
Los campos se pueden establecer en -
para indicar que los datos son desconocidos o no están disponibles, o que el campo no se aplica a esta solicitud.
Temas
Registrar campos de registro
En la siguiente lista se describen los campos de entrada de registro.
- Propietario del bucket
-
El ID de usuario canónico del propietario del bucket de origen. El ID de usuario canónico es otra forma del ID de la Cuenta de AWS. Para obtener más información acerca del ID de usuario canónico, consulte Identificadores de la Cuenta de AWS en la Referencia general de AWS. Para obtener información acerca de cómo encontrar el ID de usuario canónico de la cuenta, consulte Búsqueda del ID de usuario canónico para la Cuenta de AWS.
Ejemplo de entrada
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be
- Bucket
-
El nombre del bucket para el que se procesó la solicitud. Si el sistema recibe un solicitud incorrecta y no puede determinar el bucket, la solicitud no aparecerá en ningún registro de acceso al servidor.
Ejemplo de entrada
awsexamplebucket1
- Time
-
El momento en que se recibió la solicitud; estas fechas y horas están en Hora Universal Coordinada (UTC). El formato, con la terminología
strftime()
, es el siguiente:[%d/%b/%Y:%H:%M:%S %z]
Ejemplo de entrada
[06/Feb/2019:00:00:38 +0000]
- IP remota
-
La dirección de Internet aparente del solicitante. Los servidores proxy y firewalls intermedios pueden ocultar la dirección real de la máquina que realiza la solicitud.
Ejemplo de entrada
192.0.2.3
- Solicitante
-
El ID de usuario canónico del solicitante o un
-
para solicitudes no autenticadas. Si el solicitante es un usuario de IAM, este campo devuelve el nombre de usuario de IAM del solicitante junto con la cuenta raíz de AWS a la que pertenece el usuario de IAM. Este identificador es el mismo que se utiliza para el control de acceso.Ejemplo de entrada
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be
- ID de solicitud
-
Una cadena generada por Amazon S3 para identificar de forma inequívoca cada solicitud.
Ejemplo de entrada
3E57427F33A59F07
- Operation
-
La operación que se describe aquí se declara como
SOAP.
,operation
REST.
,HTTP_method
.resource_type
WEBSITE.
oHTTP_method
.resource_type
BATCH.DELETE.OBJECT
oS3.action.resource_type
para Ciclos de vida y registros.Ejemplo de entrada
REST.PUT.OBJECT
- Key
-
La parte de “clave” de la solicitud, el URL codificado o “-” si la operación no toma un parámetro de clave.
Ejemplo de entrada
/photos/2019/08/puppy.jpg
- URI de solicitud
-
La parte de Uniform Resource Identifier (URI, Identificador de recursos uniforme) de solicitud del mensaje de solicitud HTTP.
Ejemplo de entrada
"GET /awsexamplebucket1/photos/2019/08/puppy.jpg?x-foo=bar HTTP/1.1"
- Estado HTTP
-
El código de estado HTTP numérico de la respuesta.
Ejemplo de entrada
200
- Código de error
-
El Código de error de Amazon S3, o "-" si no se produce ningún error.
Ejemplo de entrada
NoSuchBucket
- Bytes enviados
-
El número de bytes de respuestas enviados, sin incluir la sobrecarga del protocolo HTTP o “-” en caso de ser cero.
Ejemplo de entrada
2662992
- Tamaño de objeto
-
El tamaño total del objeto en cuestión.
Ejemplo de entrada
3462992
- Tiempo total
-
La cantidad de milisegundos que la solicitud estuvo en tránsito desde la perspectiva del servidor. Este valor se mide desde el momento en que se recibe su solicitud hasta el momento en que se envía el último byte de la respuesta. Las medidas realizadas desde la perspectiva del cliente pueden ser más extensas debido a la latencia de la red.
Ejemplo de entrada
70
- Tiempo de entrega
-
La cantidad de milisegundos que tarda Amazon S3 en procesar su solicitud. Este valor se mide desde el momento en que se recibió el último byte de su solicitud hasta el momento en que se envió el primer byte de la respuesta.
Ejemplo de entrada
10
- Referer
-
El valor del encabezado Referer de HTTP, si lo hay. Los agentes de usuario de HTTP (por ejemplo: los navegadores) por lo general configuran este encabezado en la URL de la página enlazada o adjunta cuando realizan una solicitud.
Ejemplo de entrada
"http://www.amazon.com/webservices"
- Agente de usuario
-
El valor del encabezado de agente de usuario de HTTP.
Ejemplo de entrada
"curl/7.15.1"
- ID de versión
-
El ID de versión en la solicitud o “-” si la operación no toma un parámetro
versionId
.Ejemplo de entrada
3HL4kqtJvjVBH40Nrjfkd
- ID de host
-
ID de la solicitud ampliada de Amazon S3 o x-amz-id-2.
Ejemplo de entrada
s9lzHYrFp76ZVxRcpX9+5cjAnEH2ROuNkd2BHfIa6UkFVdtjf5mKR3/eTPFvsiP/XV/VLi31234=
- Versión de firma
-
La versión de firma,
SigV2
oSigV4
, que se utilizó para autenticar la solicitud o-
para las solicitudes no autenticadas.Ejemplo de entrada
SigV2
- Conjunto de cifrado
-
Cifrado de Capa de conexión segura (SSL) que se negoció para la solicitud HTTPS o
-
para HTTP.Ejemplo de entrada
ECDHE-RSA-AES128-GCM-SHA256
- Tipo de autenticación
-
Tipo de autenticación de solicitudes utilizado:
AuthHeader
para los encabezados de autenticación,QueryString
para la cadena de consulta (URL prefirmada) o-
para las solicitudes no autenticadas.Ejemplo de entrada
AuthHeader
- Encabezado de host
-
El punto de enlace usado para conectarse a Amazon S3.
Ejemplo de entrada
s3.us-west-2.amazonaws.com
Algunas regiones antiguas admiten puntos de enlace heredados. Puede que estos puntos de enlace aparezcan en los registros de acceso al servidor o en los registros de AWS CloudTrail. Para obtener más información, consulte Puntos de enlace heredados . Para obtener una lista completa de las regiones y de los puntos de enlace de Amazon S3, consulte Puntos de enlace y cuotas de Amazon S3 en la Referencia general de Amazon Web Services.
- Versión de TLS
-
Versión de Transport Layer Security (TLS) negociada por el cliente. Puede ser uno de los siguientes valores:
TLSv1
,TLSv1.1
,TLSv1.2
; o-
si no se utilizó TLS.Ejemplo de entrada
TLSv1.2
- Nombre de recurso de Amazon (ARN) del punto de acceso
-
El nombre de recurso de Amazon (ARN) del punto de acceso de la solicitud. Si el ARN del punto de acceso está mal formado o no se utiliza, el campo contendrá un “-”. Para obtener más información sobre los puntos de acceso, consulte Usar puntos de acceso. Para obtener más información sobre los ARN, consulte el tema sobre el nombre de recurso de Amazon (ARN) en la guía de referencia de AWS.
Ejemplo de entrada
arn:aws:s3:
us-east-1
:123456789012
:accesspoint/example-AP
Registro adicional para operaciones de copia
Una operación de copia implica un GET
y un PUT
. Por esa razón, registramos dos entradas al realizar una operación de copia. En la sección anterior se describen los campos relacionados con la PUT
parte de la operación. En la siguiente lista se describen los campos del registro relacionados con la parte GET
de la operación de copia.
- Propietario del bucket
-
El ID de usuario canónico del bucket que almacena el objeto que se copia. El ID de usuario canónico es otra forma del ID de la Cuenta de AWS. Para obtener más información acerca del ID de usuario canónico, consulte Identificadores de la Cuenta de AWS en la Referencia general de AWS. Para obtener información acerca de cómo encontrar el ID de usuario canónico de la cuenta, consulte Búsqueda del ID de usuario canónico para la Cuenta de AWS.
Ejemplo de entrada
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be
- Bucket
-
El nombre del bucket que almacena el objeto que se copia.
Ejemplo de entrada
awsexamplebucket1
- Time
-
La hora en la que se recibió la solicitud; estas fechas y horas se muestran según la hora universal coordinada (UTC). El formato, con la terminología
strftime()
, es el siguiente:[%d/%B/%Y:%H:%M:%S %z]
Ejemplo de entrada
[06/Feb/2019:00:00:38 +0000]
- IP remota
-
La dirección de Internet aparente del solicitante. Los servidores proxy y firewalls intermedios pueden ocultar la dirección real de la máquina que realiza la solicitud.
Ejemplo de entrada
192.0.2.3
- Solicitante
-
El ID de usuario canónico del solicitante o un
-
para solicitudes no autenticadas. Si el solicitante es un usuario de IAM, este campo devolverá el nombre de usuario de IAM del solicitante junto con la cuenta raíz de AWS a la que pertenece el usuario de IAM. Este identificador es el mismo que se utiliza para el control de acceso.Ejemplo de entrada
79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be
- ID de solicitud
-
Una cadena generada por Amazon S3 para identificar de forma inequívoca cada solicitud.
Ejemplo de entrada
3E57427F33A59F07
- Operation
-
La operación que se indica aquí se declara como
SOAP.
,operation
REST.
,HTTP_method
.resource_type
WEBSITE.
oHTTP_method
.resource_type
BATCH.DELETE.OBJECT
.Ejemplo de entrada
REST.COPY.OBJECT_GET
- Key
-
La “clave” del objeto que se copia o “-” si la operación no toma un parámetro de clave.
Ejemplo de entrada
/photos/2019/08/puppy.jpg
- URI de solicitud
-
La parte de Uniform Resource Identifier (URI, Identificador de recursos uniforme) de solicitud del mensaje de solicitud HTTP.
Ejemplo de entrada
"GET /awsexamplebucket1/photos/2019/08/puppy.jpg?x-foo=bar"
- Estado HTTP
-
El código de estado HTTP numérico de la parte
GET
de la operación de copia.Ejemplo de entrada
200
- Código de error
-
El Código de error de Amazon S3 de la parte
GET
de la operación de copia o “-” si no se produce ningún error.Ejemplo de entrada
NoSuchBucket
- Bytes enviados
-
El número de bytes de respuestas enviados, sin incluir la sobrecarga del protocolo HTTP o “-” en caso de ser cero.
Ejemplo de entrada
2662992
- Tamaño de objeto
-
El tamaño total del objeto en cuestión.
Ejemplo de entrada
3462992
- Tiempo total
-
La cantidad de milisegundos que la solicitud estuvo en tránsito desde la perspectiva del servidor. Este valor se mide desde el momento en que se recibe su solicitud hasta el momento en que se envía el último byte de la respuesta. Las medidas realizadas desde la perspectiva del cliente pueden ser más extensas debido a la latencia de la red.
Ejemplo de entrada
70
- Tiempo de entrega
-
La cantidad de milisegundos que tarda Amazon S3 en procesar su solicitud. Este valor se mide desde el momento en que se recibió el último byte de su solicitud hasta el momento en que se envió el primer byte de la respuesta.
Ejemplo de entrada
10
- Referer
-
El valor del encabezado Referer de HTTP, si lo hay. Los agentes de usuario de HTTP (por ejemplo: los navegadores) por lo general configuran este encabezado en la URL de la página enlazada o adjunta cuando realizan una solicitud.
Ejemplo de entrada
"http://www.amazon.com/webservices"
- Agente de usuario
-
El valor del encabezado de agente de usuario de HTTP.
Ejemplo de entrada
"curl/7.15.1"
- ID de versión
-
El ID de versión del objeto que se copia o “-” si el encabezado
x-amz-copy-source
no especificó un parámetroversionId
como parte de la fuente de copia.Ejemplo de entrada
3HL4kqtJvjVBH40Nrjfkd
- ID de host
-
ID de la solicitud ampliada de Amazon S3 o x-amz-id-2.
Ejemplo de entrada
s9lzHYrFp76ZVxRcpX9+5cjAnEH2ROuNkd2BHfIa6UkFVdtjf5mKR3/eTPFvsiP/XV/VLi31234=
- Versión de firma
-
La versión de firma,
SigV2
oSigV4
, que se utilizó para autenticar la solicitud o-
para las solicitudes no autenticadas.Ejemplo de entrada
SigV2
- Conjunto de cifrado
-
Cifrado de Capa de conexión segura (SSL) que se negoció para la solicitud HTTPS o
-
para HTTP.Ejemplo de entrada
ECDHE-RSA-AES128-GCM-SHA256
- Tipo de autenticación
-
Tipo de autenticación de solicitud utilizada,
AuthHeader
para encabezados de autenticación,QueryString
cadena de consulta (URL prefirmada) o-
solicitudes no autenticadas.Ejemplo de entrada
AuthHeader
- Encabezado de host
-
El punto de enlace usado para conectarse a Amazon S3.
Ejemplo de entrada
s3.us-west-2.amazonaws.com
Algunas regiones antiguas admiten puntos de enlace heredados. Es posible que vea estos puntos de enlace en los registros de acceso al servidor o en los registros de AWS CloudTrail. Para obtener más información, consulte Puntos de enlace heredados . Para obtener una lista completa de las regiones y de los puntos de enlace de Amazon S3, consulte Puntos de enlace y cuotas de Amazon S3 en la Referencia general de Amazon Web Services.
- Versión de TLS
-
Versión de Transport Layer Security (TLS) negociada por el cliente. Puede ser uno de los siguientes valores:
TLSv1
,TLSv1.1
,TLSv1.2
; o-
si no se utilizó TLS.Ejemplo de entrada
TLSv1.2
- Nombre de recurso de Amazon (ARN) del punto de acceso
-
El nombre de recurso de Amazon (ARN) del punto de acceso de la solicitud. Si el ARN del punto de acceso está mal formado o no se utiliza, el campo contendrá un “-”. Para obtener más información sobre los puntos de acceso, consulte Usar puntos de acceso. Para obtener más información sobre los ARN, consulte el tema sobre el nombre de recurso de Amazon (ARN) en la guía de referencia de AWS.
Ejemplo de entrada
arn:aws:s3:
us-east-1
:123456789012
:accesspoint/example-AP
Información de registro de acceso personalizada
Puede incluir información personalizada que se almacenará en el registro de registro de acceso para una solicitud. Para ello, agregue un parámetro de cadena de consulta personalizado a la URL de la solicitud. Amazon S3 pasa por alto los parámetros de cadena de consulta que empiezan con “x-”, pero los incluye en la entrada de registro de acceso para la solicitud, como parte del campo Request-URI
de la entrada de registro.
Por ejemplo, una GET
solicitud de "s3.amazonaws.com/awsexamplebucket1/photos/2019/08/puppy.jpg?x-user=johndoe"
funciona igual que la solicitud de "s3.amazonaws.com/awsexamplebucket1/photos/2019/08/puppy.jpg"
, excepto que la "x-user=johndoe"
cadena se incluye en el Request-URI
campo para el historial de registro asociado. Esta funcionalidad está disponible en la interfaz de REST únicamente.
Consideraciones de programación para el formato de registro de acceso al servidor extensible
Ocasionalmente podríamos ampliar el formato de registro de acceso al agregar nuevos campos al final de cada línea. Por lo tanto, debe escribir cualquier código que analiza los registros de acceso al servidor para manejar los campos finales que podría no entender.