Registro de solicitudes con registro de acceso al servidor - Amazon Simple Storage Service

Registro de solicitudes con registro de acceso al servidor

El registro de acceso al servidor brinda registros detallados para las solicitudes realizadas a un bucket. Los registros de acceso al servidor resultan útiles para muchas aplicaciones. Por ejemplo, la información del registro de acceso puede ser útil en auditorías de acceso y seguridad. Esta información también puede ayudarle a conocer mejor su base de clientes y entender su factura de Amazon S3.

nota

Los registros de acceso del servidor no registran información relacionada con errores de redirección a regiones erróneas para las regiones lanzadas después del 20 de marzo de 2019. Los errores de redirección de región incorrecta se producen cuando se realiza una solicitud de un objeto o bucket fuera de la región en la que existe el bucket.

¿Cómo habilito la entrega de registros?

Para habilitar la entrega de registros, realice los siguientes pasos básicos. Para obtener más información, consulte Habilitación del registro de acceso al servidor de Amazon S3.

  1. Indique el nombre del bucket de destino. Este bucket es donde desea que Amazon S3 guarde los registros de acceso como objetos. Tanto los buckets de origen como de destino deben estar en la misma Región de AWS y ser propiedad de la misma cuenta. El bucket de destino no debe tener una configuración de período de retención predeterminada de Bloqueo de objetos de S3. El bucket de destino tampoco debe tener activado Pago por solicitante.

    Puede enviar los registros a cualquier bucket de su propiedad que se encuentre en la misma región que el bucket de origen, incluido el propio bucket de origen. Sin embargo, para una administración de registros más sencilla, le recomendamos que guarde los registros de acceso en un bucket distinto.

    Cuando los buckets de origen y destino son el mismo, se crean registros adicionales para los registros que se escriben en el bucket, lo que crear un bucle infinito de registros. No recomendamos hacer esto porque podría dar lugar a un pequeño aumento en la facturación de almacenamiento. Además, los registros adicionales sobre registros podrían hacer que resulte más difícil encontrar el registro que busca.

    Si decide guardar los registros de acceso en el bucket de origen, le recomendamos que especifique un prefijo de destino para todas las claves de objeto del registro. Al especificar un prefijo, todos los nombres de los objetos de registro comienzan con una cadena común, lo que facilita la identificación de los objetos de registro.

  2. (Opcional) Asigne un prefijo de destino a todas las claves de objeto de registro de Amazon S3. El prefijo de destino le facilita la localización de los objetos de registro. Por ejemplo, si especifica el valor del prefijo logs/, cada objeto de registro que crea Amazon S3 comienza con el prefijo logs/ en su clave, por ejemplo:

    logs/2013-11-01-21-32-16-E568B2907131C0C0

    Si especifica el valor del prefijo logs, el objeto de registro aparece de la siguiente manera:

    logs2013-11-01-21-32-16-E568B2907131C0C0

    Los prefijos también son útiles para distinguir entre los buckets de origen cuando varios buckets registran en el mismo bucket de destino.

    Este prefijo puede ser útil también cuando elimina los registros. Por ejemplo, puede establecer una regla de configuración de ciclo de vida para que Amazon S3 elimine los objetos con un prefijo específico. Para obtener más información, consulte Eliminación de archivos de registro de Amazon S3.

  3. (Opcional) Establezca permisos para que otros puedan obtener acceso a los registros generados. De forma predeterminada, solo el propietario del bucket siempre tiene acceso completo a los objetos de registro. Si el bucket de destino utiliza la configuración de propietario del bucket obligatorio de S3 Object Ownership para desactivar las listas de control de acceso (ACL), no podrá conceder permisos en las concesiones de destino que utilizan ACL. Sin embargo, puede actualizar la política de bucket para el bucket de destino conceda acceso a otros. Para obtener más información, consulte Identity and Access Management en Amazon S3 y Permisos para entrega de registros.

  4. (Opcional) Establezca un formato de clave de objeto de registro para los archivos de registro. Dispone de dos opciones para el formato de clave de objeto de registro (también conocido como formato de clave de objeto de destino):

    • Partición no basada en fechas: este es el formato de clave del objeto de registro original. Si elige este formato, el formato de clave del archivo de registro aparece de la siguiente manera:

      [DestinationPrefix][YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]

      Por ejemplo, si especifica logs/ como prefijo, los objetos de registro se nombran de la siguiente manera:

      logs/2013-11-01-21-32-16-E568B2907131C0C0
    • Partición basada en fechas: si elige una partición basada en fechas, puede elegir la hora del evento o la hora de entrega del archivo de registro como origen de fecha que se utiliza en el formato de registro. Este formato facilita la consulta de los registros.

      Si elige la partición basada en fechas, el formato de clave del archivo de registro aparece de la siguiente manera:

      [DestinationPrefix][SourceAccountId]/[SourceRegion]/[SourceBucket]/[YYYY]/[MM]/[DD]/[YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]

      Por ejemplo, si especifica logs/ como prefijo de destino, los objetos de registro se nombran de la siguiente manera:

      logs/123456789012/us-west-2/DOC-EXAMPLE-SOURCE-BUCKET/2023/03/01/2023-03-01-21-32-16-E568B2907131C0C0

      En cuanto a la hora de entrega, la hora indicada en los nombres de los archivos de registro corresponde a la hora de entrega de los archivos de registro.

      Para la entrega de la hora, el año, el mes y el día corresponden al día en que se produjo el evento, y la hora, los minutos y los segundos se establecen en 00 en la clave. Los registros que se entregan en estos archivos de registro son solo para un día específico.

    Si configura los registros mediante la AWS Command Line Interface (AWS CLI), los SDK de AWS o la API de REST de Amazon S3, utilice TargetObjectKeyFormat para especificar el formato de la clave del objeto de registro. Para especificar una partición no basada en fechas, utilice SimplePrefix. Para especificar una partición basada en datos, utilice PartitionedPrefix. Si usa PartitionedPrefix, utilice PartitionDateSource para especificar EventTime o DeliveryTime.

    Para SimplePrefix, el formato de clave del archivo de registro aparece de la siguiente manera:

    [TargetPrefix][YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]

    En el caso de PartitionedPrefix con la hora del evento o la hora de entrega, el formato de clave del archivo de registro es el siguiente:

    [TargetPrefix][SourceAccountId]/[SourceRegion]/[SourceBucket]/[YYYY]/[MM]/[DD]/[YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]

Formato de clave de objeto de registro

Amazon S3 utiliza los siguientes formatos de clave de objeto para los objetos de registro que carga en el bucket de destino:

  • Partición no basada en fechas: este es el formato de clave del objeto de registro original. Si elige este formato, el formato de clave del archivo de registro aparece de la siguiente manera:

    [DestinationPrefix][YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]
  • Partición basada en fechas: si elige una partición basada en fechas, puede elegir la hora del evento o la hora de entrega del archivo de registro como origen de fecha que se utiliza en el formato de registro. Este formato facilita la consulta de los registros.

    Si elige la partición basada en fechas, el formato de clave del archivo de registro aparece de la siguiente manera:

    [DestinationPrefix][SourceAccountId]/[SourceRegion]/[SourceBucket]/[YYYY]/[MM]/[DD]/[YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]

En la clave del objeto de registro, YYYY, MM, DD, hh, mm y ss son los dígitos del año, el mes, el día, la hora, los minutos y los segundos (respectivamente). Las fechas y horas se muestran en tiempo universal coordinado (UTC).

Un archivo de registro enviado en un momento específico puede contener registros escritos en cualquier momento antes de ese momento. No hay forma de saber si se enviaron o no todas las entradas de registro para un cierto intervalo de tiempo.

El componente UniqueString de la clave permite impedir que se sobrescriban los archivos. No tiene ningún significado y el software de procesamiento de archivos de registro debería omitirlo.

¿Cómo se envían los registros?

Amazon S3 recopila periódicamente entradas de registro de acceso, consolida los registros en archivos de registro y luego carga los archivos de registro en su bucket de destino como objetos de registro. Si habilita los registros en varios buckets de origen que identifican el mismo bucket de destino, el bucket de destino tendrá registros de acceso para todos esos buckets de origen. No obstante, cada objeto de registro informará entradas de registro de acceso para un bucket de origen específico.

Amazon S3 utiliza una cuenta especial de entrega de registros para escribir registros de acceso al servidor. Estos escritos están sujetos a las restricciones de control de acceso habituales. Le recomendamos que actualice la política de bucket en el bucket de destino para conceder acceso a la entidad principal del servicio de registro (logging.s3.amazonaws.com) para la entrega de registros de acceso. También puede conceder acceso para la entrega de registros de acceso al grupo de entrega de registros de S3 a través de la lista de control de acceso (ACL) del bucket. Sin embargo, no se recomienda conceder acceso al grupo de entrega de registros de S3 mediante la ACL de su bucket.

Cuando habilita el registro de acceso al servidor y concede acceso para la entrega de registros de acceso a través de la política de bucket de destino, debe actualizar la política para permitir acceso s3:PutObject para la entidad principal del servicio de registro. Si utiliza la consola de Amazon S3 para habilitar los registros de acceso al servidor, la consola actualiza automáticamente la política del bucket de destino para conceder estos permisos a la entidad principal del servicio de registro. Para obtener más información acerca de cómo conceder permisos para la entrega de registros de acceso al servidor, consulte Permisos para entrega de registros.

nota

Los registros de acceso al servidor no se entregan al solicitante ni al propietario del bucket en el caso de las solicitudes de puntos de conexión de VPC de nube privada virtual (VPC) si la política de puntos de conexión de VPC las deniega.

Configuración de propietario del bucket obligatorio de S3 Object Ownership

Si el bucket de destino utiliza la configuración de propietario del bucket obligatorio de Object Ownership, las ACL se desactivan y ya no afectan a los permisos. Debe actualizar la política del bucket de destino para conceder acceso a la entidad principal del servicio de registro. Para obtener más información acerca de la propiedad de objetos, consulte Concesión de acceso al grupo de entrega de registros de S3 para el registro de acceso al servidor.

Envío de archivos de registro de servidor según el mejor esfuerzo

Las entradas de registro de acceso al servidor se envían según el "mejor esfuerzo", es decir, en la medida que sea posible. En la mayoría de las solicitudes de registros para un bucket debidamente configurado se envían archivos de registro. La mayoría de las entradas de registro se envían en el plazo de unas horas después de su registro, pero se pueden entregar con mayor frecuencia.

No se garantiza que los registros de servidores estén completos ni que lleguen de manera puntual. La entrada de registro de una solicitud determinada puede enviarse mucho después de que la solicitud se haya procesado realmente, y es probable no se envíe en absoluto. Es posible que incluso vea una duplicación de una entrada de registro. El objetivo de los registros de servidores es darle una idea de la naturaleza del tráfico al que se enfrenta su bucket. Aunque es poco usual perder o duplicar entradas registros, tenga en cuenta que el registro del servidor no pretende ser un recuento completo de todas las solicitudes.

Debido a la naturaleza de mejor esfuerzo del registro de servidores, sus informes de uso podrían incluir una o varias solicitudes de acceso que no aparecen en un registro de servidor enviado. Puede encontrar estos informes de uso en Informes de costes y uso en la consola de AWS Billing and Cost Management.

Los cambios del estado de los registros del bucket surten efecto con el tiempo

Los cambios del estado de registros de un bucket demoran un tiempo en implementarse efectivamente en el envío de archivos de registro. Por ejemplo, si habilita los registros para un bucket, algunas solicitudes que se realizan a la hora siguiente pueden registrarse, mientras que otras no. Supongamos que cambia el bucket de destino para registros del bucket A al bucket B. Es posible que algunos registros para la siguiente hora se sigan enviando al bucket A, mientras que otros se envíen al nuevo bucket B de destino. En todos los casos, la nueva configuración finalmente se aplica sin que usted tenga que tomar medidas adicionales.

Para obtener más información acerca de los registros y archivos de registro, consulte las siguientes secciones: