

# Registro de llamadas a la API de Amazon S3 mediante AWS CloudTrail
<a name="cloudtrail-logging"></a>

[AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) es un servicio que proporciona un registro de las acciones que realiza un usuario, un rol o un Servicio de AWS. CloudTrail captura todas las llamadas a la API para Amazon S3 como eventos. Las llamadas capturadas incluyen las llamadas desde la consola de Amazon S3 y las llamadas de código hacia las operaciones de la API de Amazon S3. Mediante la información recopilada por CloudTrail, puede determinar la solicitud que se realizó a Amazon S3, la dirección IP desde la que se realizó, cuándo se realizó y detalles adicionales.

Cada entrada de registro o evento contiene información sobre quién generó la solicitud. La información de identidad del usuario le ayuda a determinar lo siguiente:
+ Si la solicitud se realizó con las credenciales del usuario raíz o del usuario.
+ Si la solicitud se realizó en nombre de un usuario de IAM Identity Center.
+ Si la solicitud se realizó con credenciales de seguridad temporales de un rol o fue un usuario federado.
+ Si la solicitud la realizó otro Servicio de AWS.

CloudTrail está activado en la Cuenta de AWS cuando usted crea la cuenta y tiene acceso automático al **Historial de eventos** de CloudTrail. El **Historial de eventos** de CloudTrail proporciona un registro visible e inmutable, que se puede buscar y descargar, de los últimos 90 días de eventos de gestión registrados en una Región de AWS. Para obtener más información, consulte [Trabajar con el historial de eventos de CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html) en la *Guía del usuario de AWS CloudTrail*. No se cobran cargos de CloudTrail por ver el **Historial de eventos**.

Para mantener un registro permanente de los eventos en su Cuenta de AWS más allá de los 90 días, cree un registro de seguimiento o un almacén de datos de eventos de [CloudTrail Lake](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake.html).

**Registros de seguimiento de CloudTrail**  
Un *registro de seguimiento* permite a CloudTrail enviar archivos de registro a un bucket de Amazon S3. Todos los registros de seguimiento que cree con la Consola de administración de AWS son multirregionales. Puede crear un registro de seguimiento de una sola región o multirregionales mediante la AWS CLI. Se recomienda crear un registro de seguimiento multirregional, ya que registra actividad en todas las Regiones de AWS de su cuenta. Si crea un registro de seguimiento de una sola región, solo podrá ver los eventos registrados en la Región de AWS del registro de seguimiento. Para obtener más información acerca de los registros de seguimiento, consulte [Creación de un registro de seguimiento para su Cuenta de AWS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html) y [Creación de un registro de seguimiento para una organización](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/creating-trail-organization.html) en la *Guía del usuario de AWS CloudTrail*.  
Puede crear un registro de seguimiento para enviar una copia de los eventos de administración en curso en su bucket de Amazon S3 sin costo alguno desde CloudTrail; sin embargo, hay cargos por almacenamiento en Amazon S3. Para obtener más información sobre los precios de CloudTrail, consulte [Precios de AWS CloudTrail](https://aws.amazon.com/cloudtrail/pricing/). Para obtener información acerca de los precios de Amazon S3, consulte [Precios de Amazon S3](https://aws.amazon.com/s3/pricing/).

**Almacenes de datos de eventos de CloudTrail Lake**  
*CloudTrail Lake* le permite ejecutar consultas basadas en SQL sobre los eventos. CloudTrail Lake convierte los eventos existentes en formato JSON basado en filas al formato [ORC de Apache](https://orc.apache.org/). ORC es un formato de almacenamiento en columnas optimizado para una recuperación rápida de datos. Los eventos se agregan en *almacenes de datos de eventos*, que son recopilaciones inmutables de eventos en función de criterios que se seleccionan aplicando [selectores de eventos avanzados](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake-concepts.html#adv-event-selectors). Los selectores que se aplican a un almacén de datos de eventos controlan los eventos que perduran y están disponibles para la consulta. Para obtener más información acerca de CloudTrail Lake, consulte [Trabajar con AWS CloudTrail Lake](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake.html) en la *Guía del usuario de AWS CloudTrail*.  
Los almacenes de datos de eventos de CloudTrail Lake y las consultas generan costos adicionales. Cuando crea un almacén de datos de eventos, debe elegir la [opción de precios](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake-manage-costs.html#cloudtrail-lake-manage-costs-pricing-option) que desee utilizar para él. La opción de precios determina el costo de la incorporación y el almacenamiento de los eventos, así como el período de retención predeterminado y máximo del almacén de datos de eventos. Para obtener más información sobre los precios de CloudTrail, consulte [Precios de AWS CloudTrail](https://aws.amazon.com/cloudtrail/pricing/).

Puede almacenar los archivos de registro en el bucket durante el tiempo que desee, pero también puede definir reglas de ciclo de vida de Amazon S3 para archivar o eliminar archivos de registro automáticamente. De forma predeterminada, los archivos de registro se cifran mediante cifrado en el lado de servidor (SSE) de Amazon S3;.

## Uso de registros de CloudTrail con los registros de acceso al servidor de Amazon S3 y CloudWatch Logs
<a name="cloudtrail-logging-vs-server-logs"></a>

Los registros de AWS CloudTrail contienen las acciones realizadas por un usuario, un rol o un servicio de AWS en Amazon S3, mientras que los registros de acceso al servidor de Amazon S3 contienen los detalles de las solicitudes que se realizan a un bucket de S3. Para obtener más información acerca del funcionamiento de los distintos registros y sus propiedades, rendimiento y costos, consulte [Opciones de registro para Amazon S3](logging-with-S3.md). 

Puede utilizar los registros de AWS CloudTrail junto con los registros de acceso al servidor para Amazon S3. Los registros de CloudTrail le proporcionan un seguimiento detallado de la API para las operaciones de bucket y de objeto de Amazon S3. Los registros de acceso al servidor de Amazon S3 le proporcionan visibilidad de las operaciones de nivel de objeto realizadas en sus datos en Amazon S3. Para obtener más información sobre los registros de acceso al servidor, consulte [Registro de solicitudes con registro de acceso al servidor](ServerLogs.md).

También puede utilizar registros de CloudTrail junto con Amazon CloudWatch para Amazon S3. La integración de CloudTrail con CloudWatch Logs envía la actividad de API de bucket de S3 obtenido por CloudTrail a una secuencia de registros de CloudWatch en el grupo de registros de CloudWatch que se especifique. Puede crear alarmas de CloudWatch para monitorear actividades específicas de la API y recibir notificaciones por correo electrónico cuando se producen las actividades de la API en cuestión. Para obtener más información acerca de las alarmas de CloudWatch para monitorear actividades específicas de la API, consulte la [Guía del usuario de AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/). Para obtener más información acerca del uso de CloudWatch con Amazon S3, consulte [Monitorización de métricas con Amazon CloudWatch](cloudwatch-monitoring.md).

**nota**  
S3 no admite la entrega de registros de CloudTrail al solicitante ni al propietario del bucket para las solicitudes de puntos de conexión de VPC cuando la política de puntos de conexión de VPC las deniega.

## Seguimiento de CloudTrail con llamadas a la API de SOAP de Amazon S3
<a name="cloudtrail-s3-soap"></a>

CloudTrail realiza el seguimiento de las llamadas a la API de SOAP de Amazon S3 La compatibilidad con SOAP de Amazon S3 por HTTP está obsoleta, pero aún se encuentra disponible con HTTPS. Para obtener más información sobre la compatibilidad de SOAP en Amazon S3, consulte [Appendix: SOAP API](https://docs.aws.amazon.com/AmazonS3/latest/API/APISoap.html) en la *Amazon S3 API Reference*. 

**importante**  
Las características más recientes de Amazon S3 no son compatibles con SOAP. Le recomendamos que utilice la API de REST o los SDK de AWS.

 La siguiente tabla muestra acciones de SOAP de Amazon S3 seguidas por el registro de CloudTrail. 


| Nombre de la API SOAP | Nombre de evento de API utilizado en el registro de CloudTrail | 
| --- | --- | 
|  [https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPListAllMyBuckets.html](https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPListAllMyBuckets.html)  | ListBuckets | 
|  [https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPCreateBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPCreateBucket.html)  | CreateBucket | 
|  [https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPDeleteBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPDeleteBucket.html)  | DeleteBucket | 
|  [https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPGetBucketAccessControlPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPGetBucketAccessControlPolicy.html)  | GetBucketAcl | 
|  [https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPSetBucketAccessControlPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPSetBucketAccessControlPolicy.html)  | PutBucketAcl | 
|  [https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPGetBucketLoggingStatus.html](https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPGetBucketLoggingStatus.html)  | GetBucketLogging | 
|  [https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPSetBucketLoggingStatus.html](https://docs.aws.amazon.com/AmazonS3/latest/API/SOAPSetBucketLoggingStatus.html)  | PutBucketLogging | 

 Para obtener más información acerca de CloudTrail y Amazon S3, consulte los siguientes temas: 

**Topics**
+ [Uso de registros de CloudTrail con los registros de acceso al servidor de Amazon S3 y CloudWatch Logs](#cloudtrail-logging-vs-server-logs)
+ [Seguimiento de CloudTrail con llamadas a la API de SOAP de Amazon S3](#cloudtrail-s3-soap)
+ [Eventos de Amazon S3 CloudTrail](cloudtrail-logging-s3-info.md)
+ [Entradas de archivos de registro de CloudTrail para Amazon S3 y S3 en Outposts](cloudtrail-logging-understanding-s3-entries.md)
+ [Habilitación del registro de eventos de CloudTrail para buckets y objetos de S3](enable-cloudtrail-logging-for-s3.md)
+ [Identificación de solicitudes de Amazon S3 mediante CloudTrail](cloudtrail-request-identification.md)

# Eventos de Amazon S3 CloudTrail
<a name="cloudtrail-logging-s3-info"></a>

**importante**  
Amazon S3 aplica ahora el cifrado del servidor con claves administradas por Amazon S3 (SSE-S3) como el nivel básico de cifrado para cada bucket de Amazon S3. Desde el 5 de enero de 2023, todas las cargas de objetos nuevos a Amazon S3 se cifran automáticamente sin costo adicional y sin afectar al rendimiento. El estado de cifrado automático para la configuración de cifrado predeterminada del bucket de S3 y para cargas de objetos nuevos está disponible en registros de CloudTrail, inventario de S3, Lente de almacenamiento de S3, la consola de Amazon S3 y como encabezado de respuesta a la API de Amazon S3 adicional en la AWS CLI y los AWS SDK. Para obtener más información, consulte [Preguntas frecuentes del cifrado predeterminado](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-encryption-faq.html).

En esta sección, se proporciona información acerca de los eventos que S3 registra en CloudTrail.

## Eventos de datos de Amazon S3 en CloudTrail
<a name="cloudtrail-data-events"></a>

Los [eventos de datos](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#logging-data-events) proporcionan información sobre las operaciones de recursos realizadas en o dentro de un recurso (por ejemplo, leer o escribir en un objeto de Amazon S3). Se denominan también operaciones del plano de datos. Los eventos de datos suelen ser actividades de gran volumen. De forma predeterminada, CloudTrail no registra eventos de datos. El **Historial de eventos** de CloudTrail no registra los eventos de datos.

Se aplican cargos adicionales a los eventos de datos. Para obtener más información sobre los precios de CloudTrail, consulte [Precios de AWS CloudTrail](https://aws.amazon.com/cloudtrail/pricing/).

Puede registrar eventos de datos para los tipos de recursos de Amazon S3 mediante la consola de CloudTrail, la AWS CLI o las operaciones de la API de CloudTrail. Para obtener más información sobre cómo registrar los eventos de datos, consulte [Registro de eventos de datos con la Consola de administración de AWS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#logging-data-events-console) y [Registro de eventos de datos con la AWS Command Line Interface](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#creating-data-event-selectors-with-the-AWS-CLI) en la *Guía del usuario de AWS CloudTrail*.

En la siguiente tabla se muestran los tipos de recursos de Amazon S3 para los que puede registrar eventos de datos. La columna **Tipo de evento de datos (consola)** muestra el valor que se debe elegir en la lista de **tipos de eventos de datos** de la consola de CloudTrail. La columna **resources.type value** muestra el valor de `resources.type`, que especificaría al configurar los selectores de eventos avanzados mediante la AWS CLI o las API de CloudTrail. La columna **API de datos registradas en CloudTrail** muestra las llamadas a la API registradas en CloudTrail para el tipo de recurso. 




| Tipo de evento de datos (consola) | resources.type value | API de datos registradas en CloudTrail | 
| --- | --- | --- | 
| S3 |  AWS::S3::Object  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonS3/latest/userguide/cloudtrail-logging-s3-info.html)  | 
| S3 Express One Zone |  AWS::S3Express::Object  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonS3/latest/userguide/cloudtrail-logging-s3-info.html)  | 
| Punto de acceso de S |  AWS::S3::Access Point  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonS3/latest/userguide/cloudtrail-logging-s3-info.html)  | 
| S3 Object Lambda |  AWS::S3ObjectLambda::AccessPoint  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonS3/latest/userguide/cloudtrail-logging-s3-info.html)  | 
| S3 Outposts |  AWS::S3Outposts::Object  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonS3/latest/userguide/cloudtrail-logging-s3-info.html)  | 

Puede configurar selectores de eventos avanzados para filtrar según los campos `eventName`, `readOnly` y `resources.ARN` y así registrar solo los eventos que son importantes para usted. Para obtener más información acerca de estos campos, consulte [https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedFieldSelector.html](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedFieldSelector.html) en la *Referencia de la API de AWS CloudTrail*.

## Eventos de administración de Amazon S3 en CloudTrail
<a name="cloudtrail-management-events"></a>

Amazon S3 registra todas las operaciones de plano de control como eventos de administración. Para obtener más información sobre las operaciones de la API de S3, consulte la [Referencia de la API de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/API/API_Operations.html).

## Cómo obtiene CloudTrail las solicitudes realizadas a Amazon S3
<a name="cloudtrail-logging-s3-requests"></a>

De forma predeterminada, CloudTrail registra las llamadas a la API de bucket de S3 que se realizaron en los últimos 90 días, pero no las solicitudes realizadas a objetos. Las llamadas en el nivel de bucket incluyen eventos como `CreateBucket`, `DeleteBucket`, `PutBucketLifecycle`, `PutBucketPolicy`, etc. Puede ver los eventos a nivel bucket en la consola de CloudTrail. Sin embargo, allí no puede ver los eventos de datos (llamadas de objeto de Amazon S3); para ello, debe analizar o consultar los registros de CloudTrail. 

Si está registrando la actividad de datos con AWS CloudTrail, el registro de eventos de un evento de datos `DeleteObjects` de Amazon S3 incluye el evento `DeleteObjects` y un evento `DeleteObject` para cada objeto eliminado como parte de esa operación. Puede excluir del registro del evento la visibilidad adicional sobre los objetos eliminados. Para obtener más información, consulte [Ejemplos de la AWS CLI para filtrar eventos de datos](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/filtering-data-events.html#filtering-data-events-deleteobjects) en la *Guía del usuario de AWS CloudTrail*.

## Acciones de cuenta de Amazon S3 seguidas por el registro de CloudTrail
<a name="cloudtrail-account-level-tracking"></a>

CloudTrail registra las acciones de cuenta. Los registros de Amazon S3 se crean junto con otros registros de Servicio de AWS en un archivo de registros. CloudTrail determina cuándo debe crearse un nuevo archivo y escribir en él en función del periodo de tiempo y del tamaño del archivo. 

En las tablas de esta sección, se enumeran las acciones en el nivel de acción de Amazon S3 compatibles con el registro por parte de CloudTrail.

Las acciones de la API de nivel de cuenta de Amazon S3 rastreadas por el registro de CloudTrail aparecen con los siguientes nombres de evento: Los nombres de los eventos de CloudTrail difieren del nombre de la acción de la API. Por ejemplo, DeletePublicAccessBlock es DeleteAccountPublicAccessBlock.
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeletePublicAccessBlock.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeletePublicAccessBlock.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetPublicAccessBlock.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetPublicAccessBlock.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutPublicAccessBlock.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutPublicAccessBlock.html)

## Acciones de bucket de Amazon S3 de las que realiza un seguimiento el registro de CloudTrail
<a name="cloudtrail-bucket-level-tracking"></a>

De forma predeterminada, CloudTrail registra acciones en el nivel de bucket de uso general. Los registros de Amazon S3 se crean junto con otros registros de servicios de AWS en un archivo de registros. CloudTrail determina cuándo debe crearse un nuevo archivo y escribir en él en función del periodo de tiempo y del tamaño del archivo. 

En esta sección se enumeran las acciones en el nivel de bucket de Amazon S3 compatibles con el registro por parte de CloudTrail.

Las acciones de la APIen el nivel del bucket de Amazon S3 rastreadas por el registro de CloudTrail aparecen como los siguientes nombres de evento. En algunos casos, el nombre del evento de CloudTrail difiere del nombre de la acción de la API. Por ejemplo, `PutBucketLifecycleConfiguration` es `PutBucketLifecycle`.
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html) (operación de la API V2)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataTableConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataTableConfiguration.html) (operación de la API V1)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataConfiguration.html) (operación de la API V2)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataTableConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetadataTableConfiguration.html) (operación de la API V1)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketOwnershipControls.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketOwnershipControls.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAcl.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAcl.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLocation.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLocation.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataConfiguration.html) (operación de la API V2)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataTableConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetadataTableConfiguration.html) (operación de la API V1)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotification.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotification.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLockConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLockConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketOwnershipControls.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketOwnershipControls.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketRequestPayment.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketRequestPayment.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketWebsite.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketWebsite.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAcl.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAcl.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLogging.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLogging.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectLockConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectLockConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketOwnershipControls.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketOwnershipControls.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketRequestPayment.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketRequestPayment.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguratione.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguratione.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataInventoryTableConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UpdateBucketMetadataInventoryTableConfiguration.html)

Además de estas operaciones de la API, también puede usar la acción en el nivel de objeto [OPTIONS object](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html). Esta acción se trata como una acción de bucket en el registro de CloudTrail porque la acción comprueba la configuración de CORS de un bucket.

**nota**  
La API HeadBucket se admite como evento de datos de Amazon S3 en CloudTrail. 

## Acciones de Amazon S3 Express One Zone en el bucket (punto de conexión de API regional) a las que se ha realizado un seguimiento mediante el registro de CloudTrail
<a name="cloudtrail-bucket-level-tracking-s3express"></a>

De forma predeterminada, CloudTrail registra acciones en el nivel de bucket para buckets de directorio como eventos de administración. `eventsource` para eventos de administración de CloudTrail para S3 Express One Zone es `s3express.amazonaws.com`.

Las siguientes operaciones de la API de puntos de conexión regionales se registran en CloudTrail.
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListDirectoryBuckets.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListDirectoryBuckets.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html)

Para obtener más información, consulte [Registro con AWS CloudTrail para S3 Express One Zone](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-one-zone-logging.html).

## Acciones en el nivel de objeto de Amazon S3 en escenarios entre cuentas
<a name="cloudtrail-object-level-crossaccount"></a>

Los siguientes casos son casos de uso especiales relativos a las llamadas a la API de objeto en situaciones que afectan a varias cuentas y a la manera de informar de los registros de CloudTrail. CloudTrail entrega los registros al solicitante (la cuenta que realiza la llamada a la API), excepto en algunos casos de acceso denegado en los que las entradas de registro se redactan u omiten. Al configurar el acceso a varias cuentas, tenga en cuenta los ejemplos de esta sección.

**nota**  
En los ejemplos, se presupone que los registros de CloudTrail están configurados correctamente. 

### Ejemplo 1: CloudTrail entrega los registros al propietario del bucket
<a name="cloudtrail-crossaccount-example1"></a>

CloudTrail entrega los registros al propietario del bucket aunque este no tenga permisos para la misma operación de API de objetos. Piense en el siguiente escenario con varias cuentas:
+ La cuenta A es la propietaria del bucket.
+ La cuenta B (el solicitante) intenta acceder a un objeto de ese bucket.
+ La cuenta C es la propietaria del objeto. Es posible o no que la cuenta C sea la misma cuenta que la cuenta A.

**nota**  
CloudTrail siempre entrega los registros de la API en el nivel de objeto al solicitante (cuenta B). Además, CloudTrail también entrega los mismos registros al propietario del bucket (cuenta A) incluso cuando el propietario del bucket no tiene el objeto (cuenta C) o tiene permisos para esas mismas operaciones de la API en dicho objeto.

### Ejemplo 2: CloudTrail no hace proliferar las direcciones de correo electrónico empleadas al establecer las ACL de objeto
<a name="cloudtrail-crossaccount-example2"></a>

Piense en el siguiente escenario con varias cuentas:
+ La cuenta A es la propietaria del bucket.
+  La cuenta B (el solicitante) envía una solicitud para establecer un permiso de la ACL de un objeto con una dirección de correo electrónico. Para obtener más información acerca de las ACL, consulte lo siguiente [Información general de las Listas de control de acceso (ACL)](acl-overview.md).

El solicitante obtiene los registros junto con la información del correo electrónico. Sin embargo, el propietario del bucket (si puede recibir registros como en el ejemplo 1) obtiene el registro de CloudTrail que informa del evento. Aun así, el propietario del bucket no obtiene la información sobre la configuración de ACL, específicamente la dirección de correo electrónico del receptor del permiso y el permiso en sí. La única información que el registro comunica al propietario del bucket es que la cuenta B realizó una llamada a la API de ACL.

# Entradas de archivos de registro de CloudTrail para Amazon S3 y S3 en Outposts
<a name="cloudtrail-logging-understanding-s3-entries"></a>

**importante**  
Amazon S3 aplica ahora el cifrado del servidor con claves administradas por Amazon S3 (SSE-S3) como el nivel básico de cifrado para cada bucket de Amazon S3. Desde el 5 de enero de 2023, todas las cargas de objetos nuevos a Amazon S3 se cifran automáticamente sin costo adicional y sin afectar al rendimiento. El estado de cifrado automático para la configuración de cifrado predeterminada del bucket de S3 y para cargas de objetos nuevos está disponible en registros de CloudTrail, inventario de S3, Lente de almacenamiento de S3, la consola de Amazon S3 y como encabezado de respuesta a la API de Amazon S3 adicional en la AWS CLI y los AWS SDK. Para obtener más información, consulte [Preguntas frecuentes del cifrado predeterminado](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-encryption-faq.html).

Un evento representa una única solicitud de cualquier origen e incluye información sobre la operación de la API solicitada, la fecha y la hora de la operación o los parámetros de la solicitud, entre otras cosas. Los archivos de registro de CloudTrail no rastrean el orden en la pila de las llamadas a la API públicas, por lo que los eventos no aparecen en un orden específico.

**nota**  
Para ver ejemplos de archivos de registro de CloudTrail para Amazon S3 Express One Zone, consulte [CloudTrail log file examples for S3 Express One Zone](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-log-files.html).

Para obtener más información, consulte los ejemplos siguientes.

**Topics**
+ [Ejemplo: entrada de archivo de registro de CloudTrail para Amazon S3](#example-ct-log-s3)

## Ejemplo: entrada de archivo de registro de CloudTrail para Amazon S3
<a name="example-ct-log-s3"></a>

En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra las acciones [Servicio GET](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTServiceGET.html), [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTacl.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTacl.html) y [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETversioningStatus.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETversioningStatus.html).

```
{
    "Records": [
    {
        "eventVersion": "1.03",
        "userIdentity": {
            "type": "IAMUser",
            "principalId": "111122223333",
            "arn": "arn:aws:iam::111122223333:user/myUserName",
            "accountId": "111122223333",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "userName": "myUserName"
        },
        "eventTime": "2019-02-01T03:18:19Z",
        "eventSource": "s3.amazonaws.com",
        "eventName": "ListBuckets",
        "awsRegion": "us-west-2",
        "sourceIPAddress": "127.0.0.1",
        "userAgent": "[]",
        "requestParameters": {
            "host": [
                "s3.us-west-2.amazonaws.com"
            ]
        },
        "responseElements": null,
        "additionalEventData": {
            "SignatureVersion": "SigV2",
            "AuthenticationMethod": "QueryString",
            "aclRequired": "Yes"
    },
        "requestID": "47B8E8D397DCE7A6",
        "eventID": "cdc4b7ed-e171-4cef-975a-ad829d4123e8",
        "eventType": "AwsApiCall",
        "recipientAccountId": "444455556666",
        "tlsDetails": {
            "tlsVersion": "TLSv1.2",
            "cipherSuite": "ECDHE-RSA-AES128-GCM-SHA256",
            "clientProvidedHostHeader": "s3.amazonaws.com"
    }      
    },
    {
       "eventVersion": "1.03",
       "userIdentity": {
            "type": "IAMUser",
            "principalId": "111122223333",
            "arn": "arn:aws:iam::111122223333:user/myUserName",
            "accountId": "111122223333",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "userName": "myUserName"
        },
      "eventTime": "2019-02-01T03:22:33Z",
      "eventSource": "s3.amazonaws.com",
      "eventName": "PutBucketAcl",
      "awsRegion": "us-west-2",
      "sourceIPAddress": "",
      "userAgent": "[]",
      "requestParameters": {
          "bucketName": "",
          "AccessControlPolicy": {
              "AccessControlList": {
                  "Grant": {
                      "Grantee": {
                          "xsi:type": "CanonicalUser",
                          "xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance",
                          "ID": "d25639fbe9c19cd30a4c0f43fbf00e2d3f96400a9aa8dabfbbebe1906Example"
                       },
                      "Permission": "FULL_CONTROL"
                   }
              },
              "xmlns": "http://s3.amazonaws.com/doc/2006-03-01/",
              "Owner": {
                  "ID": "d25639fbe9c19cd30a4c0f43fbf00e2d3f96400a9aa8dabfbbebe1906Example"
              }
          },
          "host": [
              "s3.us-west-2.amazonaws.com"
          ],
          "acl": [
              ""
          ]
      },
      "responseElements": null,
      "additionalEventData": {
          "SignatureVersion": "SigV4",
          "CipherSuite": "ECDHE-RSA-AES128-SHA",
          "AuthenticationMethod": "AuthHeader"
      },
      "requestID": "BD8798EACDD16751",
      "eventID": "607b9532-1423-41c7-b048-ec2641693c47",
      "eventType": "AwsApiCall",
      "recipientAccountId": "111122223333",
      "tlsDetails": {
            "tlsVersion": "TLSv1.2",
            "cipherSuite": "ECDHE-RSA-AES128-GCM-SHA256",
            "clientProvidedHostHeader": "s3.amazonaws.com"
    }              
    },
    {
      "eventVersion": "1.03",
      "userIdentity": {
          "type": "IAMUser",
          "principalId": "111122223333",
          "arn": "arn:aws:iam::111122223333:user/myUserName",
          "accountId": "111122223333",
          "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
          "userName": "myUserName"
        },
      "eventTime": "2019-02-01T03:26:37Z",
      "eventSource": "s3.amazonaws.com",
      "eventName": "GetBucketVersioning",
      "awsRegion": "us-west-2",
      "sourceIPAddress": "",
      "userAgent": "[]",
      "requestParameters": {
          "host": [
              "s3.us-west-2.amazonaws.com"
          ],
          "bucketName": "amzn-s3-demo-bucket1",
          "versioning": [
              ""
          ]
      },
      "responseElements": null,
      "additionalEventData": {
          "SignatureVersion": "SigV4",
          "CipherSuite": "ECDHE-RSA-AES128-SHA",
          "AuthenticationMethod": "AuthHeader"
    },
      "requestID": "07D681279BD94AED",
      "eventID": "f2b287f3-0df1-4961-a2f4-c4bdfed47657",
      "eventType": "AwsApiCall",
      "recipientAccountId": "111122223333",
      "tlsDetails": {
            "tlsVersion": "TLSv1.2",
            "cipherSuite": "ECDHE-RSA-AES128-GCM-SHA256",
            "clientProvidedHostHeader": "s3.amazonaws.com"
    }                 
    }
  ]
}
```

# Habilitación del registro de eventos de CloudTrail para buckets y objetos de S3
<a name="enable-cloudtrail-logging-for-s3"></a>

Puede utilizar eventos de datos de CloudTrail para obtener información sobre solicitudes de bucket y objeto en Amazon S3. Para habilitar los eventos de datos de CloudTrail para todos los buckets o para una lista de buckets específicos, debe [crear un registro de seguimiento manualmente en CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-a-trail-using-the-console-first-time.html). 

**nota**  
La configuración predeterminada de CloudTrail es encontrar solo los eventos de administración. Asegúrese de que tiene habilitados los eventos de datos en la cuenta.
 Con un bucket de S3 que genera una gran carga de trabajo, podrían generarse rápidamente miles de registros en un corto periodo de tiempo. Piense bien el tiempo que va a tener activados los eventos de datos de CloudTrail para un bucket ocupado. 

 CloudTrail almacena los registros de eventos de datos de Amazon S3 en el bucket de S3 que usted elija. Considere la posibilidad de utilizar un bucket de una Cuenta de AWS distinta para organizar mejor los eventos procedentes de varios buckets que es posible que tenga en un lugar central y, de ese modo, simplificar las consultas y los análisis. AWS Organizations le ayuda a crear una Cuenta de AWS que esté vinculada a la cuenta que contiene el bucket que monitorea. Para obtener más información, consulte [¿Qué es AWS Organizations?](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html) en la *Guía del usuario de AWS Organizations*.

Cuando registra los eventos de datos de un registro de seguimiento en CloudTrail, tiene la opción de usar selectores de eventos avanzados o selectores de eventos básicos para registrar eventos de datos para objetos almacenados en buckets de uso general.. Para registrar eventos de datos de objetos almacenados en buckets de directorio, debe utilizar selectores de eventos avanzados. Para obtener más información, consulte [Registro con AWS CloudTrail para S3 Express One Zone](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-one-zone-logging.html).

Cuando cree un registro de seguimiento en la consola de CloudTrail con selectores de eventos avanzados, en la sección de eventos de datos, puede elegir **Registrar todos los eventos** para la **Plantilla de selector de registros** para registrar todos los eventos en el nivel de objeto. Cuando cree un registro de seguimiento en la consola de CloudTrail con selectores de eventos básicos, en la sección de eventos de datos, puede marcar la casilla de verificación **Selección de todos los buckets de S3 de la cuenta** para registrar todos los eventos de nivel de objeto. 

**nota**  
Una práctica recomendada consiste en crear una configuración de ciclo de vida para el bucket de eventos de datos de AWS CloudTrail. Defina la configuración del ciclo de vida para eliminar periódicamente los archivos de registro tras el periodo de tiempo que considere necesario para auditarlos. Esto reduce la cantidad de datos que Athena analiza para cada consulta. Para obtener más información, consulte [Establecimiento de una configuración de S3 Lifecycle en un bucket](how-to-set-lifecycle-configuration-intro.md).
Para obtener más información acerca del formato del archivo de registro, consulte [Registro de llamadas a la API de Amazon S3 mediante AWS CloudTrail](cloudtrail-logging.md).
Para obtener ejemplos de cómo consultar los registros de CloudTrail, visite la publicación [Analyze Security, Compliance, and Operational Activity Using AWS CloudTrail and Amazon Athena](https://aws.amazon.com/blogs/big-data/aws-cloudtrail-and-amazon-athena-dive-deep-to-analyze-security-compliance-and-operational-activity/) del *Blog de big data de AWS*. 

## Habilitar el registro de objetos en un bucket mediante la consola
<a name="enable-cloudtrail-events"></a>

Puede utilizar la consola de AWS CloudTrail para configurar un seguimiento de CloudTrail para registrar eventos de datos para objetos de un bucket de S3. CloudTrail permite que se registren operaciones de API en el nivel de objetos de Amazon S3 como, por ejemplo, `GetObject`, `DeleteObject` y `PutObject`. Estos eventos se denominan *eventos de datos*. 

De forma predeterminada, las trazas de CloudTrail no registran eventos de datos, pero pueden configurarse para que registren eventos de datos de los buckets de S3 que usted especifique o para que registren eventos de datos de todos los buckets de Amazon S3 incluidos en la Cuenta de AWS. Para obtener más información, consulte [Registro de llamadas a la API de Amazon S3 mediante AWS CloudTrail](cloudtrail-logging.md). 

CloudTrail no rellena eventos de datos en el historial de eventos de CloudTrail. Además, no todas las acciones de bucket se rellenan en el historial de eventos de CloudTrail. Para obtener más información sobre las acciones de la API de nivel de bucket de Amazon S3 de las que el registro de CloudTrail realiza un seguimiento, consulte [Acciones de bucket de Amazon S3 de las que realiza un seguimiento el registro de CloudTrail](cloudtrail-logging-s3-info.md#cloudtrail-bucket-level-tracking). Para obtener más información acerca de cómo consultar los registros de CloudTrail, consulte el artículo del Centro de conocimientos de AWS sobre el [uso de patrones de filtro de Amazon CloudWatch Logs y Amazon Athena para consultar los registros de CloudTrail](https://aws.amazon.com/premiumsupport/knowledge-center/find-cloudtrail-object-level-events/).

**nota**  
Si está registrando la actividad de datos con AWS CloudTrail, el registro de eventos de un evento de datos `DeleteObjects` de Amazon S3 incluye el evento `DeleteObjects` y un evento `DeleteObject` para cada objeto eliminado como parte de esa operación. Puede excluir del registro del evento la visibilidad adicional sobre los objetos eliminados. Para obtener más información, consulte [Ejemplos de la AWS CLI para filtrar eventos de datos](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/filtering-data-events.html#filtering-data-events-deleteobjects) en la *Guía del usuario de AWS CloudTrail*.

Para habilitar el registro de eventos de datos de CloudTrail para objetos en un bucket de uso general de S3 o en un bucket de directorio de S3, consulte [Creación de un seguimiento con la consola de CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-a-trail-using-the-console-first-time) en la *Guía del usuario de AWS CloudTrail*.

Para obtener más información sobre el registro de objetos en un bucket de directorio de S3, consulte [Registro con AWS CloudTrail para buckets de directorio](s3-express-one-zone-logging.md).

Para obtener información sobre el uso de la consola de CloudTrail a fin de configurar un seguimiento para registrar eventos de datos de S3, consulte [Registro de eventos de datos](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html) en la *Guía del usuario de AWS CloudTrail*. 

Para desactivar el registro de eventos de datos de CloudTrail para objetos en un bucket de S3, consulte [Eliminación de un registro de seguimiento con la consola de CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-delete-trails-console.html) en la *Guía del usuario de AWS CloudTrail*. 

**importante**  
Se aplican cargos adicionales a los eventos de datos. Para obtener más información, consulte [Precios de AWS CloudTrail](https://aws.amazon.com/cloudtrail/pricing/). 

Para obtener más información sobre el registro de CloudTrail con buckets S3, consulte los siguientes temas:
+ [Creación de un bucket de uso general](create-bucket-overview.md)
+ [Visualización de las propiedades para un bucket de uso general de S3](view-bucket-properties.md)
+ [Registro de llamadas a la API de Amazon S3 mediante AWS CloudTrail](cloudtrail-logging.md)
+ [Trabajo con archivos de registro de CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-working-with-log-files.html) en la *Guía del usuario de AWS CloudTrail*

# Identificación de solicitudes de Amazon S3 mediante CloudTrail
<a name="cloudtrail-request-identification"></a>

En Amazon S3, puede identificar solicitudes mediante un registro de eventos de AWS CloudTrail. AWS CloudTrail es la forma preferida de identificar las solicitudes de Amazon S3, pero si utiliza los registros de acceso al servidor de Amazon S3, consulte [Uso de los registros de acceso al servidor de Amazon S3 para identificar solicitudes](using-s3-access-logs-to-identify-requests.md).

**Topics**
+ [Identificación de solicitudes realizadas a Amazon S3 en un registro de CloudTrail](#identify-S3-requests-using-in-CTlog)
+ [Identificación de solicitudes de firma de Amazon S3 versión 2 mediante CloudTrail](#cloudtrail-identification-sigv2-requests)
+ [Identificación del acceso a objetos S3 mediante CloudTrail](#cloudtrail-identification-object-access)

## Identificación de solicitudes realizadas a Amazon S3 en un registro de CloudTrail
<a name="identify-S3-requests-using-in-CTlog"></a>

Después de configurar CloudTrail para que entregue los eventos en un bucket, debe empezar a ver cómo llegan objetos al bucket de destino en la consola de Amazon S3. Estos están formateados de la siguiente manera: 

`s3://amzn-s3-demo-bucket1/AWSLogs/111122223333/CloudTrail/Region/yyyy/mm/dd` 

Los eventos registrados por CloudTrail se almacenan como objetos JSON comprimidos gzipped en el bucket de S3. Para encontrar solicitudes de forma eficiente, debe utilizar un servicio como Amazon Athena para indexar y consultar los registros de CloudTrail. 

Para obtener más información acerca de CloudTrail y Athena, consulte [Creación de la tabla para registros de AWS CloudTrail en Athena mediante proyección de particiones](https://docs.aws.amazon.com/athena/latest/ug/cloudtrail-logs.html#create-cloudtrail-table-partition-projection) en la *Guía del usuario de Amazon Athena*.

## Identificación de solicitudes de firma de Amazon S3 versión 2 mediante CloudTrail
<a name="cloudtrail-identification-sigv2-requests"></a>

Puede utilizar un registro de eventos de CloudTrail a fin de identificar qué versión de firma de API se utilizó para firmar una solicitud en Amazon S3. Esta capacidad es importante porque el soporte para Signature Version 2 va a finalizar (esta característica quedará obsoleta). Cuando esto suceda, Amazon S3 dejará de aceptar solicitudes que utilicen Signature Version 2, y todas las solicitudes deberán firmarse con *Signature Version 4*. 

Le recomendamos *encarecidamente* que utilice CloudTrail para determinar si alguno de sus flujos de trabajo utiliza el proceso de firma de Signature Version 2. Actualice las bibliotecas y el código para que utilicen Signature Version 4 con el fin de evitar que su negocio se vea afectado. 

Para obtener más información, consulte [Anuncio: AWS CloudTrail para Amazon S3 agrega nuevos campos para auditar la seguridad mejorada](https://forums.aws.amazon.com/ann.jspa?annID=6551) en AWS re:Post.

**nota**  
Los eventos de CloudTrail para Amazon S3 incluyen la versión de firma en los detalles de la solicitud con el nombre clave `additionalEventData`. Para encontrar la versión de firma en solicitudes realizadas para objetos en Amazon S3, como solicitudes `GET`, `PUT` y `DELETE`, debe habilitar los eventos de datos de CloudTrail. (Esta característica está desactivada de forma predeterminada).

AWS CloudTrail es el método preferido para identificar solicitudes de Signature Version 2. Si utiliza los registros de acceso al servidor de Amazon S3, consulte [Identificación de solicitudes de la versión 2 de firma mediante registros de acceso de Amazon S3](using-s3-access-logs-to-identify-requests.md#using-s3-access-logs-to-identify-sigv2-requests).

**Topics**
+ [Ejemplos de consulta de Athena para identificar solicitudes de firma de Amazon S3 versión 2](#ct-examples-identify-sigv2-requests)
+ [Partición de datos de firma de versión 2](#partitioning-sigv2-data)

### Ejemplos de consulta de Athena para identificar solicitudes de firma de Amazon S3 versión 2
<a name="ct-examples-identify-sigv2-requests"></a>

**Example — Seleccionar todos los eventos de Signature Version 2 e imprimir solo `EventTime`, `S3_Action`, `Request_Parameters`, `Region`, `SourceIP` y `UserAgent`**  
En la siguiente consulta de Athena, sustituya *`s3_cloudtrail_events_db.cloudtrail_table`* por los detalles de Athena y aumente o elimine el límite según corresponda.   

```
SELECT EventTime, EventName as S3_Action, requestParameters as Request_Parameters, awsregion as AWS_Region, sourceipaddress as Source_IP, useragent as User_Agent
FROM s3_cloudtrail_events_db.cloudtrail_table
WHERE eventsource='s3.amazonaws.com'
AND json_extract_scalar(additionalEventData, '$.SignatureVersion')='SigV2'
LIMIT 10;
```

**Example — Seleccionar todos los solicitantes que envían tráfico de firma versión 2**  
   

```
SELECT useridentity.arn, Count(requestid) as RequestCount
FROM s3_cloudtrail_events_db.cloudtrail_table
WHERE eventsource='s3.amazonaws.com'
    and json_extract_scalar(additionalEventData, '$.SignatureVersion')='SigV2'
Group by useridentity.arn
```

### Partición de datos de firma de versión 2
<a name="partitioning-sigv2-data"></a>

Si tiene una gran cantidad de datos para consultar, puede reducir los costos y el tiempo de ejecución de Athena al crear una tabla particionada. 

Para ello, cree una tabla nueva con particiones como se indica a continuación.

```
   CREATE EXTERNAL TABLE s3_cloudtrail_events_db.cloudtrail_table_partitioned(
        eventversion STRING,
        userIdentity STRUCT<
            type:STRING,
            principalid:STRING,
            arn:STRING,
            accountid:STRING,
            invokedby:STRING,
            accesskeyid:STRING,
            userName:STRING,
         sessioncontext:STRUCT<
                    attributes:STRUCT< 
                    mfaauthenticated:STRING,
                    creationdate:STRING>,
                    sessionIssuer:STRUCT<
                    type:STRING,
                    principalId:STRING,
                    arn:STRING,
                    accountId:STRING,
                    userName:STRING>
                >
             >,
        eventTime STRING,
        eventSource STRING,
        eventName STRING,
        awsRegion STRING,
        sourceIpAddress STRING,
        userAgent STRING,
        errorCode STRING,
        errorMessage STRING,
        requestParameters STRING,
        responseElements STRING,
        additionalEventData STRING,
        requestId STRING,
        eventId STRING,
        resources ARRAY<STRUCT<ARN:STRING,accountId: STRING,type:STRING>>, 
        eventType STRING,
        apiVersion STRING,
        readOnly STRING,
        recipientAccountId STRING,
        serviceEventDetails STRING,
        sharedEventID STRING,
        vpcEndpointId STRING
    )   
    PARTITIONED BY (region string, year string, month string, day string)
    ROW FORMAT SERDE 'org.apache.hadoop.hive.ql.io.orc.OrcSerde' 
    STORED AS INPUTFORMAT 'org.apache.hadoop.hive.ql.io.SymlinkTextInputFormat'
    OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
    LOCATION 's3://amzn-s3-demo-bucket1/AWSLogs/111122223333/';
```

A continuación, cree cada una de las particiones. No puede obtener resultados de fechas que no ha creado. 

```
ALTER TABLE s3_cloudtrail_events_db.cloudtrail_table_partitioned ADD
    PARTITION (region= 'us-east-1', year= '2019', month= '02', day= '19') LOCATION 's3://amzn-s3-demo-bucket1/AWSLogs/111122223333/CloudTrail/us-east-1/2019/02/19/'
    PARTITION (region= 'us-west-1', year= '2019', month= '02', day= '19') LOCATION 's3://amzn-s3-demo-bucket1/AWSLogs/111122223333/CloudTrail/us-west-1/2019/02/19/'
    PARTITION (region= 'us-west-2', year= '2019', month= '02', day= '19') LOCATION 's3://amzn-s3-demo-bucket1/AWSLogs/111122223333/CloudTrail/us-west-2/2019/02/19/'
    PARTITION (region= 'ap-southeast-1', year= '2019', month= '02', day= '19') LOCATION 's3://amzn-s3-demo-bucket1/AWSLogs/111122223333/CloudTrail/ap-southeast-1/2019/02/19/'
    PARTITION (region= 'ap-southeast-2', year= '2019', month= '02', day= '19') LOCATION 's3://amzn-s3-demo-bucket1/AWSLogs/111122223333/CloudTrail/ap-southeast-2/2019/02/19/'
    PARTITION (region= 'ap-northeast-1', year= '2019', month= '02', day= '19') LOCATION 's3://amzn-s3-demo-bucket1/AWSLogs/111122223333/CloudTrail/ap-northeast-1/2019/02/19/'
    PARTITION (region= 'eu-west-1', year= '2019', month= '02', day= '19') LOCATION 's3://amzn-s3-demo-bucket1/AWSLogs/111122223333/CloudTrail/eu-west-1/2019/02/19/'
    PARTITION (region= 'sa-east-1', year= '2019', month= '02', day= '19') LOCATION 's3://amzn-s3-demo-bucket1/AWSLogs/111122223333/CloudTrail/sa-east-1/2019/02/19/';
```

A continuación, puede realizar la solicitud basándose en estas particiones y no necesita cargar el bucket completo. 

```
SELECT useridentity.arn,
Count(requestid) AS RequestCount
FROM s3_cloudtrail_events_db.cloudtrail_table_partitioned
WHERE eventsource='s3.amazonaws.com'
AND json_extract_scalar(additionalEventData, '$.SignatureVersion')='SigV2'
AND region='us-east-1'
AND year='2019'
AND month='02'
AND day='19'
Group by useridentity.arn
```

## Identificación del acceso a objetos S3 mediante CloudTrail
<a name="cloudtrail-identification-object-access"></a>

Puede utilizar los registros de eventos de AWS CloudTrail para identificar las solicitudes de acceso a objetos de Amazon S3 para eventos de datos, como `GetObject`, `DeleteObject` y `PutObject` y descubrir información adicional sobre esas solicitudes.

**nota**  
Si está registrando la actividad de datos con AWS CloudTrail, el registro de eventos de un evento de datos `DeleteObjects` de Amazon S3 incluye el evento `DeleteObjects` y un evento `DeleteObject` para cada objeto eliminado como parte de esa operación. Puede excluir del registro del evento la visibilidad adicional sobre los objetos eliminados. Para obtener más información, consulte [Ejemplos de la AWS CLI para filtrar eventos de datos](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/filtering-data-events.html#filtering-data-events-deleteobjects) en la *Guía del usuario de AWS CloudTrail*.

En el siguiente ejemplo, se muestra cómo obtener todas las solicitudes de objeto `PUT` para Amazon S3 desde el registro de eventos de AWS CloudTrail. 

**Topics**
+ [Ejemplos de consulta de Athena para identificar solicitudes de acceso a objetos de Amazon S3](#ct-examples-identify-object-access-requests)

### Ejemplos de consulta de Athena para identificar solicitudes de acceso a objetos de Amazon S3
<a name="ct-examples-identify-object-access-requests"></a>

En los ejemplos de consulta de Athena siguientes, sustituya *`s3_cloudtrail_events_db.cloudtrail_table`* por los detalles de Athena y modifique el intervalo de fechas según corresponda. 

**Example — Seleccionar todos los eventos que tengan solicitudes de acceso de objetos `PUT` e imprimir solo `EventTime`, `EventSource`, `SourceIP`, `UserAgent`, `BucketName`, `object` y `UserARN`**  

```
SELECT
  eventTime, 
  eventName, 
  eventSource, 
  sourceIpAddress, 
  userAgent, 
  json_extract_scalar(requestParameters, '$.bucketName') as bucketName, 
  json_extract_scalar(requestParameters, '$.key') as object,
  userIdentity.arn as userArn
FROM
  s3_cloudtrail_events_db.cloudtrail_table
WHERE
  eventName = 'PutObject'
  AND eventTime BETWEEN '2019-07-05T00:00:00Z' and '2019-07-06T00:00:00Z'
```

**Example — Seleccionar todos los eventos que tengan solicitudes de acceso de objetos `GET` e imprimir solo `EventTime`, `EventSource`, `SourceIP`, `UserAgent`, `BucketName`, `object` y `UserARN`**  

```
SELECT
  eventTime, 
  eventName, 
  eventSource, 
  sourceIpAddress, 
  userAgent, 
  json_extract_scalar(requestParameters, '$.bucketName') as bucketName, 
  json_extract_scalar(requestParameters, '$.key') as object,
  userIdentity.arn as userArn
FROM
  s3_cloudtrail_events_db.cloudtrail_table
WHERE
  eventName = 'GetObject'
  AND eventTime BETWEEN '2019-07-05T00:00:00Z' and '2019-07-06T00:00:00Z'
```

**Example — Seleccionar todos los eventos de los solicitantes anónimos en un bucket en un periodo determinado e imprima solo `EventTime`, `EventName`, `EventSource`, `SourceIP`, `UserAgent`, `BucketName`, `UserARN` y `AccountID`**  

```
SELECT
  eventTime, 
  eventName, 
  eventSource, 
  sourceIpAddress, 
  userAgent, 
  json_extract_scalar(requestParameters, '$.bucketName') as bucketName, 
  userIdentity.arn as userArn,
  userIdentity.accountId
FROM
  s3_cloudtrail_events_db.cloudtrail_table
WHERE
  userIdentity.accountId = 'anonymous'
  AND eventTime BETWEEN '2019-07-05T00:00:00Z' and '2019-07-06T00:00:00Z'
```

**Example — Identificar todas las solicitudes que requerían una ACL para la autorización**  
 El siguiente ejemplo de consulta de Amazon Athena muestra cómo identificar todas las solicitudes realizadas a los buckets de S3 que requerían una lista de control de acceso (ACL) para la autorización. Si la solicitud requería una ACL para la autorización, el valor `aclRequired` en `additionalEventData` es `Yes`. Si no se requirió ninguna ACL, `aclRequired` no está presente. Puede usar esta información para migrar esos permisos de ACL a las políticas de bucket adecuadas. Una vez que haya creado estas políticas de bucket, puede desactivar las ACL de estos buckets. Para obtener más información acerca de la desactivación de las ACL, consulte [Requisitos previos para desactivar las ACL](object-ownership-migrating-acls-prerequisites.md).  

```
SELECT
  eventTime, 
  eventName, 
  eventSource, 
  sourceIpAddress, 
  userAgent, 
  userIdentity.arn as userArn,
  json_extract_scalar(requestParameters, '$.bucketName') as bucketName,
  json_extract_scalar(requestParameters, '$.key') as object,
  json_extract_scalar(additionalEventData, '$.aclRequired') as aclRequired
FROM 
  s3_cloudtrail_events_db.cloudtrail_table
WHERE
  json_extract_scalar(additionalEventData, '$.aclRequired') = 'Yes'
  AND eventTime BETWEEN '2022-05-10T00:00:00Z' and '2022-08-10T00:00:00Z'
```

**nota**  
Estos ejemplos de consulta también pueden ser útiles para la monitorización de la seguridad. Puede revisar los resultados de las llamadas a las operaciones `PutObject` o `GetObject` desde solicitantes o direcciones IP inesperados o no autorizados con el fin de identificar cualquier solicitud anónima que se realice a los buckets.
 Esta consulta solo recupera información de la hora a la que se habilitó el registro. 

Si utiliza los registros de acceso al servidor de Amazon S3, consulte [Identificación de solicitudes de acceso a objetos mediante los registros de acceso de Amazon S3](using-s3-access-logs-to-identify-requests.md#using-s3-access-logs-to-identify-objects-access).