Gerenciamento de identidade e acesso no Amazon SES - Amazon Simple Email Service

Gerenciamento de identidade e acesso no Amazon SES

Você pode usar o AWS Identity and Access Management (IAM) com o Amazon Simple Email Service (Amazon SES) para especificar quais ações da API do Amazon SES um usuário, grupo ou uma função do IAM podem realizar. (Neste tópico, nós nos referimos coletivamente a essas entidades como usuário.) Você também pode controlar quais endereços de e-mail o usuário pode usar para os endereços "From", destinatário e "Return-Path" dos e-mails.

Por exemplo, você pode criar uma política do IAM permitindo que os usuários da sua organização enviem e-mails, mas que não desempenhem ações administrativas, como a verificação de estatísticas de envio. Como outro exemplo, você pode escrever uma política que permita a um usuário enviar e-mails pelo Amazon SES a partir da sua conta, mas só se ele usar um determinado endereço "From" (De:).

Para usar o IAM, você define uma política do IAM, que é um documento que explicitamente define as permissões, e anexa a política a um usuário. Para saber como criar políticas do IAM, consulte o Guia do usuário do IAM. A não ser por aplicar as restrições definidas na sua política, não há alterações na forma como os usuários interagem com o Amazon SES nem na forma como o Amazon SES processa as solicitações.

nota

Você também pode controlar o acesso ao Amazon SES usando políticas de autorização de envio. Enquanto as políticas do IAM restringem o que usuários individuais do IAM podem fazer, as políticas de autorização de envio restringem a forma como identidades verificadas individuais podem ser usadas. Além disso, somente as políticas de autorização de envio podem conceder acesso entre contas. Para obter mais informações sobre a autorização de envio, consulte Uso de autorização de envio com o Amazon SES.

Se você estiver procurando informações sobre como gerar credenciais SMTP do Amazon SES para um usuário existente do IAM, consulte Obtenção de credenciais SMTP do Amazon SES.

Criação de políticas do IAM para acesso ao Amazon SES

Esta seção explica como você pode usar políticas do IAM especificamente com o Amazon SES. Para saber como criar políticas do IAM no geral, consulte Guia do usuário do IAM.

Há três motivos pelos quais você talvez use o IAM com o Amazon SES:

  • Para restringir a ação de envio de e-mail.

  • Para restringir os endereços "From", destinatário e "Return-Path" dos e-mails que o usuário envia.

  • Para controlar aspectos gerais do uso da API, como o período durante o qual um usuário tem permissão para chamar as APIs que estão autorizados a usar.

Restrição da ação

Para controlar quais ações do Amazon SES o usuário pode executar, use o elemento Action de uma política do IAM. Você pode definir o elemento Action para qualquer ação da API do Amazon SES anexando uma sequência minúsculas ses: como prefixo do nome da API. Por exemplo, você pode definir Action como ses:SendEmail, ses:GetSendStatistics ou ses:* (para todas as ações).

Em seguida, dependendo da Action, especifique o elemento Resource da seguinte forma:

Se o elemento Action permitir apenas o acesso a APIs de envio de e-mails (ou seja, ses:SendEmail e/ou ses:SendRawEmail):

  • Para permitir que o usuário envie de qualquer identidade na sua Conta da AWS, defina Resource como *

  • Para restringir as identidades a partir das quais o usuário pode enviar, defina Resource como os ARNs das identidades que você estiver permitindo que o usuário utilize.

Se o elemento Action permitir acesso a todas as APIs:

  • Se você não quiser restringir as identidades a partir das quais o usuário pode enviar, defina Resource como *

  • Se você quiser restringir as identidades com as quais um usuário pode enviar, será necessário criar duas políticas (ou duas declarações dentro de uma política):

    • Uma com Action definida como uma lista explícita de APIs permitidas para não envio de e-mails e Resource definido como*

    • Uma com Action definida como uma das APIs de envio de e-mails (ses:SendEmail e/ou ses:SendRawEmail) e Resource definido como os ARNs das identidades que você está permitindo que o usuário use.

Para obter uma lista das ações do Amazon SES disponíveis, consulte a Referência da API do Amazon Simple Email Service. Se o usuário do IAM for usar a interface SMTP, você deve permitir acesso para ses:SendRawEmail, pelo menos.

Restrição de endereços de e-mail

Se você quiser restringir o usuário a endereços de e-mail específicos, pode usar um bloco Condition. No bloco Condition, você especifica as condições usando chaves de condição, como descrito no Guia do usuário do IAM. Ao usar chaves de condição, você pode controlar os seguintes endereços de e-mail:

nota

Essas chaves de condição de endereço de e-mail aplicam-se somente às APIs indicadas na tabela a seguir.

Chave de condição

Descrição

API

ses:Recipients

Restringe os endereços do destinatário, que incluem os endereços To:, "CC" e "BCC".

SendEmail, SendRawEmail

ses:FromAddress

Restringe o endereço "From".

SendEmail, SendRawEmail, SendBounce

ses:FromDisplayName

Restringe o endereço "From" usado como o nome de exibição.

SendEmail, SendRawEmail

ses:FeedbackAddress

Restringe o endereço "Return-Path", que é o endereço para o qual devoluções e reclamações podem ser enviadas a você pelo encaminhamento de feedback por e-mail. Para obter informações sobre reenvio de feedback por e-mail, consulte Recebimento de notificações do Amazon SES por e-mail.

SendEmail, SendRawEmail

Restrição do uso da API geral

Usando chaves que abrangem toda a AWS em condições, você pode restringir o acesso ao Amazon SES com base em aspectos como a data e a hora em que o usuário tem permissão para acessar as APIs. O Amazon SES implementa somente as seguintes chaves de políticas no que abrangem toda a AWS:

  • aws:CurrentTime

  • aws:EpochTime

  • aws:SecureTransport

  • aws:SourceIp

  • aws:UserAgent

Para obter mais informações sobre essas chaves, consulte o Guia do usuário do IAM.

Exemplo de políticas do IAM para o Amazon SES

Este tópico fornecer exemplos de políticas que permitem a um usuário acessar o Amazon SES, mas apenas em determinadas condições.

Permissão de acesso total a todas as ações do Amazon SES

A política a seguir permite que um usuário chame qualquer ação do Amazon SES.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:*" ], "Resource":"*" } ] }

Permitir acesso somente a ações de envio de e-mails

A política a seguir permite que um usuário envie um e-mail usando o Amazon SES, mas não permite que o usuário execute ações administrativas, como acessar estatísticas de envio do Amazon SES.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*" } ] }

Restringir o período de envio

A política a seguir permite que o usuário chame APIs de envio de e-mail do Amazon SES somente durante o mês de setembro de 2018.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "DateGreaterThan":{ "aws:CurrentTime":"2018-08-31T12:00Z" }, "DateLessThan":{ "aws:CurrentTime":"2018-10-01T12:00Z" } } } ] }

Restringir os endereços do destinatário

A política a seguir permite que um usuário chame as APIs de envio de e-mail do Amazon SES, mas somente para endereços de destinatários no domínio exemplo.com.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "ForAllValues:StringLike":{ "ses:Recipients":[ "*@example.com" ] } } } ] }

Restringir o endereço "From".

A política a seguir permite que um usuário chame as APIs de envio de e-mail do Amazon SES, mas somente se o endereço "From" (De:) for marketing@exemplo.com.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FromAddress":"marketing@example.com" } } } ] }

A política a seguir permite que um usuário chame a API SendBounce, mas somente se o endereço "From" for bounce@example.com.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendBounce" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FromAddress":"bounce@example.com" } } } ] }

Restringir o nome de exibição do remetente de e-mail

A política a seguir permite que um usuário chame as APIs de envio de e-mail do Amazon SES, mas somente se o nome de exibição do endereço "From" (De:) incluir Marketing.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "StringLike":{ "ses:FromDisplayName":"Marketing" } } } ] }

Restringir o destino do feedback de devolução e reclamação

A política a seguir permite que um usuário chame as APIs de envio de e-mail do Amazon SES, mas apenas se "Return-Path" do e-mail for definido como feedback@exemplo.com.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FeedbackAddress":"feedback@example.com" } } } ] }