Ejemplos de políticas de envío - Amazon Simple Email Service

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.

Ejemplos de políticas de envío

La autorización de envío le permite especificar las condiciones detalladas según las cuales permite a los remitentes delegados enviar en su nombre.

Condiciones específicas para la autorización de envío

Una condición es cualquier restricción sobre el permiso en la instrucción. La parte de la instrucción que especifica las condiciones puede ser la más detallada de todas las partes. Una clave es la característica específica que es la base para la restricción de acceso, como la fecha y hora de la solicitud.

Las condiciones y las claves se utilizan conjuntamente para expresar la restricción. Por ejemplo, si desea impedir que el remitente delegado realice solicitudes a Amazon SES en su nombre después del 30 de julio de 2019, utilice la condición denominada DateLessThan. Usted utiliza la clave denominada aws:CurrentTime y la define con el valor 2019-07-30T00:00:00Z.

Puede utilizar cualquiera de las claves de escala de AWS que aparecen en Claves disponibles en la Guía del usuario de IAM o puede utilizar una de las siguientes claves específicas de SES que son muy útiles en las políticas de autorización de envío:

Clave de condición

Descripción

ses:Recipients

Restringe las direcciones del destinatario, que incluyen las direcciones To:, "CC" y "BCC".

ses:FromAddress

Restringe la dirección de remitente ("From").

ses:FromDisplayName

Restringe el contenido de la cadena que se utiliza como el nombre de visualización "From" (a veces denominado "remitente descriptivo"). Por ejemplo, el nombre de visualización de "John Doe <johndoe@example.com>" es John Doe.

ses:FeedbackAddress

Restringe la dirección de "ruta de retorno", que es la dirección donde se pueden enviar los rebotes y reclamaciones mediante reenvío de retroalimentación de correo electrónico. Para obtener información acerca del reenvío de retroalimentación de correo electrónico, consulte Recepción de notificaciones de Amazon SES por correo electrónico.

Puede utilizar las condiciones StringEquals y StringLike con claves de Amazon SES. Las condiciones son para coincidencia de cadenas con distinción entre mayúsculas y minúsculas. Para StringLike, los valores pueden incluir un comodín de coincidencias de varios caracteres (*) o un comodín de coincidencia de un único carácter (?) en cualquier parte de la cadena. Por ejemplo, la siguiente condición especifica que el remitente delegado solo puede enviar desde una dirección de remitente ("From") que empieza por invoicing y termina por @example.com:

"Condition": { "StringLike": { "ses:FromAddress": "invoicing*@example.com" } }

También puede utilizar la condición StringNotLike para evitar que los remitentes delegados envíen correo electrónico desde determinadas direcciones de correo electrónico. Por ejemplo, puede deshabilitar el envío desde admin@example.com y direcciones similares como "admin"@example.com, admin+1@example.com o sender@admin.example.com al incluir la siguiente condición en su instrucción de política:

"Condition": { "StringNotLike": { "ses:FromAddress": "*admin*example.com" } }

Para obtener más información acerca de cómo especificar condiciones, consulte Elementos de la política de JSON de IAM: Condición en la Guía del usuario de IAM.

Especificación del remitente delegado

La entidad principal, que es la entidad a la que se conceden los permisos, puede ser una cuenta de Cuenta de AWS, un usuario de AWS Identity and Access Management (IAM) o un servicio de AWS.

El siguiente ejemplo muestra una política sencilla que permite al ID de AWS 123456789012 enviar correo electrónico desde la identidad verificada example.com (que es propiedad de Cuenta de AWS 888888888888). La instrucción Condition de esta política solo permite al delegado (es decir, el ID de AWS 123456789012) enviar correo electrónico desde la dirección marketing+.*@example.com, donde * es cualquier cadena que el remitente quiera agregar después de marketing+.

{ "Id":"SampleAuthorizationPolicy", "Version":"2012-10-17", "Statement":[ { "Sid":"AuthorizeMarketer", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:888888888888:identity/example.com", "Principal":{ "AWS":[ "123456789012" ] }, "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Condition":{ "StringLike":{ "ses:FromAddress":"marketing+.*@example.com" } } } ] }

La siguiente política de ejemplo otorga a dos usuarios de IAM permiso para enviar desde la identidad example.com. Los usuarios de IAM se especifican por su nombre de recurso de Amazon (ARN).

{ "Id":"ExampleAuthorizationPolicy", "Version":"2012-10-17", "Statement":[ { "Sid":"AuthorizeIAMUser", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:888888888888:identity/example.com", "Principal":{ "AWS":[ "arn:aws:iam::111122223333:user/John", "arn:aws:iam::444455556666:user/Jane" ] }, "Action":[ "ses:SendEmail", "ses:SendRawEmail" ] } ] }

La siguiente política de ejemplo otorga a Amazon Cognito permiso para enviar desde la identidad example.com.

{ "Id":"ExampleAuthorizationPolicy", "Version":"2012-10-17", "Statement":[ { "Sid":"AuthorizeService", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:888888888888:identity/example.com", "Principal":{ "Service":[ "cognito-idp.amazonaws.com" ] }, "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Condition": { "StringEquals": { "aws:SourceAccount": "888888888888", "aws:SourceArn": "arn:aws:cognito-idp:us-east-1:888888888888:userpool/your-user-pool-id-goes-here" } } } ] }

La siguiente política de ejemplo otorga permiso a todas las cuentas dentro de una organización de AWS para enviar desde la identidad example.com. La organización de AWS se especifica mediante la clave de condición global PrincipalOrgID.

{ "Id":"ExampleAuthorizationPolicy", "Version":"2012-10-17", "Statement":[ { "Sid":"AuthorizeOrg", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:888888888888:identity/example.com", "Principal":"*", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Condition":{ "StringEquals":{ "aws:PrincipalOrgID":"o-xxxxxxxxxxx" } } } ] }

Restricción de la dirección de remitente (“From”)

Si utiliza un dominio verificado, puede crear una política que permita únicamente a un remitente delegado enviar correo electrónico desde una dirección de correo electrónico especificada. Para restringir la dirección de remitente ("From"), se establece una condición en la clave denominada ses:FromAddress. La siguiente política permite al ID de Cuenta de AWS 123456789012 enviar correo electrónico desde la identidad example.com, pero solo desde la dirección de correo electrónico sender@example.com.

{ "Id":"ExamplePolicy", "Version":"2012-10-17", "Statement":[ { "Sid":"AuthorizeFromAddress", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:888888888888:identity/example.com", "Principal":{ "AWS":[ "123456789012" ] }, "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Condition":{ "StringEquals":{ "ses:FromAddress":"sender@example.com" } } } ] }

Restricción del periodo de tiempo en el que el delegado puede enviar correo electrónico

También puede configurar la política de autorización del remitente de forma que un remitente delegado solo pueda enviar correo electrónico a una hora determinada del día o en un determinado intervalo de fechas. Por ejemplo, si tiene previsto enviar su campaña de correo electrónico durante el mes de septiembre de 2021, puede utilizar la siguiente política para restringir la capacidad del delegado de enviar correo electrónico solo durante ese mes.

{ "Id":"ExamplePolicy", "Version":"2012-10-17", "Statement":[ { "Sid":"ControlTimePeriod", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:888888888888:identity/example.com", "Principal":{ "AWS":[ "123456789012" ] }, "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Condition":{ "DateGreaterThan":{ "aws:CurrentTime":"2021-08-31T12:00Z" }, "DateLessThan":{ "aws:CurrentTime":"2021-10-01T12:00Z" } } } ] }

Restricción de la acción de envío de correo electrónico

Hay dos acciones que los remitentes pueden utilizar para enviar correo electrónico con Amazon SES: SendEmail y SendRawEmail, en función del control que el remitente desee tener sobre el formato del correo electrónico. Las políticas de autorización de envío le permiten limitar al remitente delegado a una de las dos acciones. Sin embargo, muchos propietarios de identidad habilitan ambas acciones en sus políticas, lo que permite que sea el remitente delegado quien decida los detalles de las llamadas de envío de correo electrónico.

nota

Si desea habilitar al remitente delegado para acceder a Amazon SES a través de la interfaz de SMTP, debe elegir SendRawEmail como mínimo.

Si su caso de uso es tal que desea restringir la acción, puede hacerlo incluyendo solo una de las acciones en su política de autorización de envío. El siguiente ejemplo muestra cómo restringir la acción a SendRawEmail.

{ "Id":"ExamplePolicy", "Version":"2012-10-17", "Statement":[ { "Sid":"ControlAction", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:888888888888:identity/example.com", "Principal":{ "AWS":[ "123456789012" ] }, "Action":[ "ses:SendRawEmail" ] } ] }

Restricción del nombre de visualización del remitente de correo electrónico

Algunos clientes de correo electrónico muestran el nombre "descriptivo" del remitente de correo electrónico (si el encabezado de correo electrónico lo proporciona), en lugar de la dirección de remitente ("From") real. Por ejemplo, el nombre de visualización de "John Doe <johndoe@example.com>" es John Doe. Por ejemplo, podría enviar correos electrónicos desde user@example.com, pero prefiere que dichos destinatarios vean que el correo electrónico procede de marketing en lugar de user@example.com. La siguiente política permite al ID de Cuenta de AWS 123456789012 enviar correo electrónico desde la identidad example.com, pero solo si el nombre de visualización de la dirección del remitente (“From”) incluye Marketing.

{ "Id":"ExamplePolicy", "Version":"2012-10-17", "Statement":[ { "Sid":"AuthorizeFromAddress", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:888888888888:identity/example.com", "Principal":{ "AWS":[ "123456789012" ] }, "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Condition":{ "StringLike":{ "ses:FromDisplayName":"Marketing" } } } ] }

Uso de varias instrucciones

La política de autorización de envío puede incluir varias instrucciones. La siguiente política de ejemplo contiene dos instrucciones. La primera instrucción permite que dos Cuentas de AWS distintas envíen correo electrónico desde sender@example.com, siempre y cuando la dirección del remitente (“From”) y la dirección de retroalimentación utilicen el dominio example.com. La segunda instrucción autoriza a un usuario de IAM a enviar correo electrónico desde sender@example.com siempre que la dirección de correo electrónico del destinatario esté en el dominio example.com.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"AuthorizeAWS", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:999999999999:identity/sender@example.com", "Principal":{ "AWS":[ "111111111111", "222222222222" ] }, "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Condition":{ "StringLike":{ "ses:FromAddress":"*@example.com", "ses:FeedbackAddress":"*@example.com" } } }, { "Sid":"AuthorizeInternal", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:999999999999:identity/sender@example.com", "Principal":{ "AWS":"arn:aws:iam::333333333333:user/Jane" }, "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Condition":{ "ForAllValues:StringLike":{ "ses:Recipients":"*@example.com" } } } ] }