Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Registro de llamadas a la API de Amazon SES con AWS CloudTrail
Amazon SES se integra con AWS CloudTrail, un servicio que proporciona un registro de las medidas adoptadas por un usuario, un rol o un servicio de AWS en SES. CloudTrail captura las llamadas a la API de SES como eventos. Las llamadas capturadas incluyen las llamadas desde la consola de SES y las llamadas desde el código a las operaciones de la API de SES. Si crea un registro de seguimiento, puede habilitar la entrega continua de eventos de CloudTrail a un bucket de Amazon S3, incluidos los eventos para SES. Si no configura un registro de seguimiento, puede ver los eventos más recientes de la consola de CloudTrail en el Historial de eventos. Mediante la información recopilada por CloudTrail, puede determinar la solicitud que se realizó a SES, la dirección IP desde la que se realizó, quién la realizó y cuándo, etc.
Para obtener más información acerca de CloudTrail, incluso cómo configurarlo y habilitarlo, consulte la Guía del usuario de AWS CloudTrail.
Información sobre SES en CloudTrail
CloudTrail se habilita en su Cuenta de AWS cuando se crea la cuenta. Cuando se produce una actividad de eventos compatible en SES, la actividad se registra en un evento de CloudTrail junto con otros eventos de servicios de AWS en Historial de eventos. Puede ver, buscar y descargar eventos recientes en su Cuenta de AWS. Para obtener más información, consulte Ver eventos con el historial de eventos de CloudTrail.
Para mantener un registro continuo de eventos en la Cuenta de AWS, incluidos los eventos de SES, cree un registro de seguimiento. Un registro de seguimiento permite a CloudTrail enviar archivos de registro a un bucket de Amazon S3. De forma predeterminada, cuando se crea un registro de seguimiento en la consola, el registro de seguimiento se aplica a todas las Regiones de AWS. El registro de seguimiento registra los eventos de todas las regiones de la partición de AWS y envía los archivos de registro al bucket de Amazon S3 especificado. También es posible configurar otros servicios de AWS para analizar en profundidad y actuar en función de los datos de eventos recopilados en los registros de CloudTrail. Para más información, consulte los siguientes temas:
Cada entrada de registro o evento contiene información sobre quién generó la solicitud. La información de identidad del usuario lo ayuda a determinar lo siguiente:
-
Si la solicitud se realizó con credenciales de usuario de AWS Identity and Access Management (IAM) o credenciales de usuario raíz.
-
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.
Para obtener más información, consulte el Elemento userIdentity de CloudTrail.
Eventos de datos de SES en CloudTrail
Los eventos de datos proporcionan información sobre las operaciones realizadas en un recurso o dentro de él. 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 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
nota
La actividad de envío de correo electrónico a través de la interfaz SMTP de SES no se registra en los eventos de CloudTrail. Para realizar un registro completo de la actividad, utilice las API de SES más recientes en la Referencia de API de SES y la Referencia de la API v2 de SES.
En la siguiente tabla se muestran los tipos de recursos de SES 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 utilizando la columna, muestra 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 |
|---|---|---|
| Identidad de SES | AWS::SES::EmailIdentity | SES: SES v2: |
| Conjunto de configuraciones de SES | AWS::SES::ConfigurationSet |
|
| Plantilla de SES | AWS::SES::Template | SES: SES v2: |
En el siguiente ejemplo se muestra cómo registrar todos los eventos de datos para todas las identidades de correo electrónico de SES utilizando el parámetro --advanced-event-selectors.
aws cloudtrail put-event-selectors \ --region Region \ --trail-name TrailName \ --advanced-event-selectors '[ { "Name": "Log SES data plane actions for all email identities", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::SES::EmailIdentity"] } ] } ]'
Puede seguir ajustando los 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 sobre estos campos, consulte AdvancedFieldSelector en la Referencia de la API de AWS CloudTrail. Para ver más ejemplos sobre cómo registrar eventos de datos, consulte Registro de eventos de datos para registros de seguimiento.
Escenarios de entrega de registros de CloudTrail para registro de SES
CloudTrail entrega registros en función de factores como propiedad de cuentas y recursos, tipo de identidad y región. La siguiente matriz explica a quién y dónde se entregarían los registros en función de combinaciones específicas de estos factores.
| Tipo de escenario | Roles de cuenta | Recursos | Flujo de solicitud | Entrega de registro |
|---|---|---|---|---|
| Cuenta cruzada única | Cuenta A: propietario del recurso Cuenta B: solicitante |
Identidad de correo electrónico | B → Identidad de correo electrónico de A | Los registros se entregan tanto a A como a B |
| Correo electrónico de reenvío de comentarios | B → Correo electrónico de comentarios de A | Los registros se entregan tanto a A como a B | ||
| Varias cuentas cruzadas | Cuenta A: propietario del correo electrónico de comentarios Cuenta B: propietario de identidad de correo electrónico Cuenta C: solicitante |
Correo electrónico de comentarios (A) Identidad de correo electrónico (B) |
C → Correo electrónico de comentarios de A + identidad de correo electrónico de B | Registros entregados a A, B y C |
| Punto de conexión global (cuenta única) | Cuenta A: propietario y solicitante | Punto de conexión global (principal: eu‑west‑1 y secundario: us‑west‑2) | A → Punto de conexión global | Los registros se entregan a A en la región que ha procesado la solicitud (eu‑west‑1 o us‑west‑2) |
| Punto de conexión global (cuenta cruzada) | Cuenta A: propietario de identidad de correo electrónico Cuenta B: solicitante |
Identidad de correo electrónico (A) Punto de conexión global (B) (eu‑west‑1 y us‑west‑2) |
B → Identidad de correo electrónico de A a través de punto de conexión global | Los registros se entregan tanto a A como a B en la región que ha procesado la solicitud (eu‑west‑1 o us‑west‑2) |
nota
-
CloudTrail siempre entrega los registros a la cuenta del solicitante.
-
Los propietarios de los recursos reciben los registros aunque no hayan realizado la operación.
-
Para los puntos de conexión globales, ambas cuentas necesitan suscripciones a CloudTrail en todas las regiones configuradas.
-
Cuando se produce un deterioro regional, todos los registros aparecen en la región en buen estado.
Eventos de administración de SES en CloudTrail
SES entrega eventos de administración a CloudTrail. Los eventos de administración incluyen acciones relacionadas con la creación y administración de recursos de su Cuenta de AWS. En Amazon SES, los eventos de administración incluyen acciones como la creación y eliminación de identidades o reglas de recepción. Para obtener más información sobre las operaciones de la API de SES, consulte la Referencia de la API de SES y la Referencia de la API v2 de SES.
Entradas de archivos de registro de CloudTrail para SES
Un registro de seguimiento es una configuración que permite la entrega de eventos como archivos de registros en un bucket de Amazon S3 que especifique. Los archivos de registro de CloudTrail pueden contener una o varias entradas de registro. Un evento representa una solicitud específica realizada desde un origen cualquiera y contiene información sobre la acción solicitada, la fecha y la hora de la acción, los parámetros de la solicitud, etc. Los archivos de registro de CloudTrail no rastrean el orden en la pila de las llamadas públicas a la API, por lo que estas no aparecen en ningún orden específico.
Los siguientes ejemplos demuestran los registros de CloudTrail de estos tipos de eventos:
Tipos de eventos
DeleteIdentity
{ "Records":[ { "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROA4DO2KAWIPZEXAMPLE:myUserName", "arn": "arn:aws:sts::111122223333:assumed-role/users/myUserName", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROA4DO2KAWIPZEXAMPLE", "arn": "arn:aws:iam::111122223333:role/admin-role", "accountId": "111122223333", "userName": "myUserName" }, "attributes": { "creationDate": "2025-02-27T09:53:35Z", "mfaAuthenticated": "false" } } }, "eventTime": "2025-02-27T09:54:31Z", "eventSource": "ses.amazonaws.com", "eventName": "DeleteIdentity", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/2.23.4", "requestParameters": { "identity": "sender@example.com" }, "responseElements": null, "requestID": "50b87bfe-ab23-11e4-9106-5b36376f9d12", "eventID": "0ffa308d-1467-4259-8be3-c749753be325", "readOnly": false, "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management", "tlsDetails": { "tlsVersion": "TLSv1.3", "cipherSuite": "TLS_AES_128_GCM_SHA256", "clientProvidedHostHeader": "email.us-east-1.amazonaws.com" } } ] }
VerifyEmailIdentity
{ "Records":[ { "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROA4DO2KAWIPZEXAMPLE:myUserName", "arn": "arn:aws:sts::111122223333:assumed-role/users/myUserName", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROA4DO2KAWIPZEXAMPLE", "arn": "arn:aws:iam::111122223333:role/admin-role", "accountId": "111122223333", "userName": "myUserName" }, "attributes": { "creationDate": "2025-02-27T09:53:35Z", "mfaAuthenticated": "false" } } }, "eventTime": "2025-02-27T09:56:20Z", "eventSource": "ses.amazonaws.com", "eventName": "VerifyEmailIdentity", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/2.23.4", "requestParameters": { "emailAddress": "sender@example.com" }, "responseElements": null, "requestID": "eb2ff803-ac09-11e4-8ff5-a56a3119e253", "eventID": "5613b0ff-d6c6-4526-9b53-a603a9231725", "readOnly": false, "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management", "tlsDetails": { "tlsVersion": "TLSv1.3", "cipherSuite": "TLS_AES_128_GCM_SHA256", "clientProvidedHostHeader": "email.us-east-1.amazonaws.com" } } ] }
SendEmail con contenido simple
{ "Records":[{ "eventTime": "2025-01-24T11:43:00Z", "eventSource": "ses.amazonaws.com", "eventName": "SendEmail", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/2.23.4 md/awscrt#0.23.4", "requestParameters": { "destination": { "bccAddresses": ["HIDDEN_DUE_TO_SECURITY_REASONS"], "toAddresses": ["HIDDEN_DUE_TO_SECURITY_REASONS"], "ccAddresses": ["HIDDEN_DUE_TO_SECURITY_REASONS"] }, "message": { "subject": { "charset": "UTF-8", "data": "HIDDEN_DUE_TO_SECURITY_REASONS" }, "body": { "html": { "charset": "UTF-8", "data": "HIDDEN_DUE_TO_SECURITY_REASONS" }, "text": { "charset": "UTF-8", "data": "HIDDEN_DUE_TO_SECURITY_REASONS" } } }, "source": "sender@example.com" }, "responseElements": null, "additionalEventData": { "sesMessageId": "01000100a11a11aa-00aa0a00-00a0-48a8-aaa7-a174a83b456a-000000" }, "requestID": "ab2cc803-ac09-11d7-8bb8-a56a3119e476", "eventID": "eb834e01-f168-435f-92c0-c36278378b6e", "readOnly": true, "resources": [{ "accountId": "111122223333", "type": "AWS::SES::EmailIdentity", "ARN": "arn:aws:ses:us-east-1:111122223333:identity/sender@example.com" }], "eventType": "AwsApiCall", "managementEvent": false, "recipientAccountId": "111122223333", "eventCategory": "Data", "tlsDetails": { "tlsVersion": "TLSv1.3", "cipherSuite": "TLS_AES_128_GCM_SHA256", "clientProvidedHostHeader": "email.us-east-1.amazonaws.com" } } ] }
SendEmail con contenido de plantilla
{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROA4DO2KAWIPZEXAMPLE:myUserName", "arn": "arn:aws:sts::111122223333:assumed-role/users/myUserName", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROA4DO2KAWIPZEXAMPLE", "arn": "arn:aws:iam::111122223333:role/admin-role", "accountId": "111122223333", "userName": "admin-role" }, "attributes": { "creationDate": "2025-03-05T18:51:06Z", "mfaAuthenticated": "false" } } }, "eventTime": "2025-03-05T19:16:29Z", "eventSource": "ses.amazonaws.com", "eventName": "SendEmail", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/2.23.4", "requestParameters": { "fromEmailAddress": "sender@example.com", "destination": { "toAddresses": ["HIDDEN_DUE_TO_SECURITY_REASONS"], "bccAddresses": ["HIDDEN_DUE_TO_SECURITY_REASONS"], "ccAddresses": ["HIDDEN_DUE_TO_SECURITY_REASONS"] }, "emailTags": [{ "value": "test", "name": "campaign" }, { "value": "cli-test", "name": "sender" }], "replyToAddresses": ["HIDDEN_DUE_TO_SECURITY_REASONS"], "content": { "template": { "templateData": "HIDDEN_DUE_TO_SECURITY_REASONS", "templateName": "TestTemplate" } } }, "responseElements": null, "additionalEventData": { "sesMessageId": "01000100a11a11aa-00aa0a00-00a0-48a8-aaa7-a174a83b456a-000000" }, "requestID": "50b87bfe-ab23-11e4-9106-5b36376f9d12", "eventID": "0ffa308d-1467-4259-8be3-c749753be325", "readOnly": true, "resources": [{ "accountId": "111122223333", "type": "AWS::SES::EmailIdentity", "ARN": "arn:aws:ses:us-east-1:111122223333:identity/sender@example.com" }, { "accountId": "111122223333", "type": "AWS::SES::Template", "ARN": "arn:aws:ses:us-east-1:111122223333:template/TestTemplate" }], "eventType": "AwsApiCall", "managementEvent": false, "recipientAccountId": "111122223333", "eventCategory": "Data", "tlsDetails": { "tlsVersion": "TLSv1.3", "cipherSuite": "TLS_AES_128_GCM_SHA256", "clientProvidedHostHeader": "email.us-east-1.amazonaws.com" } }