Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de...

511
Amazon Simple Email Service Guia do desenvolvedor

Transcript of Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de...

Page 1: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email ServiceGuia do desenvolvedor

Page 2: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Amazon Simple Email Service: Guia do desenvolvedorCopyright © 2020 Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's,in any manner that is likely to cause confusion among customers, or in any manner that disparages or discreditsAmazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may notbe affiliated with, connected to, or sponsored by Amazon.

Page 3: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Table of ContentsO que é o Amazon SES? .................................................................................................................... 1

Por que usar o Amazon SES? ..................................................................................................... 1Amazon SES e outros serviços da AWS ........................................................................................ 1Este guia ................................................................................................................................... 2

Início rápido ....................................................................................................................................... 3Etapa 1: Cadastre-se na AWS ...................................................................................................... 3Etapa 2: Verificar o endereço de e-mail ......................................................................................... 3Etapa 3: Enviar seu primeiro e-mail .............................................................................................. 3Etapa 4: Considerar como você lidará com devoluções e reclamações ............................................... 3Etapa 5: Sair da sandbox do Amazon SES .................................................................................... 4Próximas etapas ......................................................................................................................... 4

Envio de e-mails ................................................................................................................................ 5Como faço para enviar e-mails usando o Amazon SES? .................................................................. 5Como começo? .......................................................................................................................... 6Conceitos .................................................................................................................................. 7

Amazon SES e capacidade de entrega .................................................................................. 7Processo de envio de e-mails ............................................................................................. 11Formato de e-mail e Amazon SES ...................................................................................... 14

Conceitos básicos ..................................................................................................................... 17Usar o console do Amazon SES ......................................................................................... 17Uso do Simple Mail Transfer Protocol (SMTP) ....................................................................... 17Uso de um SDK da AWS .................................................................................................. 18Antes de começar ............................................................................................................. 18Enviar um e-mail usando o console ..................................................................................... 18Enviar um e-mail usando SMTP .......................................................................................... 19Enviar um e-mail usando um SDK da AWS .......................................................................... 30Migrar para o Amazon SES de outra solução ........................................................................ 44

Configurar e-mails ..................................................................................................................... 46Cadastrando-se na AWS .................................................................................................... 47Verificar identidades .......................................................................................................... 47Obter suas chaves de acesso da AWS ................................................................................ 66Fazer download de um SDK da AWS .................................................................................. 66Configurar um domínio MAIL FROM personalizado ................................................................ 66Configurar registros SPF .................................................................................................... 73Obter suas credenciais SMTP ............................................................................................ 73Sair da sandbox ............................................................................................................... 73Configuração de domínios de abertura e clique personalizados ................................................ 76

Envio do seu e-mail .................................................................................................................. 79Uso da interface SMTP ..................................................................................................... 80Uso da API .................................................................................................................... 114Envio de e-mails personalizados ....................................................................................... 123

Autenticação de e-mail ............................................................................................................. 132Autenticação de e-mail com SPF ....................................................................................... 133Autenticação de e-mail com DKIM ..................................................................................... 134Conformidade com DMARC .............................................................................................. 146

Gerenciar as cotas de envio ..................................................................................................... 148Monitorar as cotas de envio .............................................................................................. 149Aumentar suas cotas de envio .......................................................................................... 150Erros de cota de envio .................................................................................................... 153

Uso de autorização de envio .................................................................................................... 153Visão geral da autorização de envio .................................................................................. 154Políticas de autorização de envio ...................................................................................... 156Exemplos de política de autorização de envio ..................................................................... 161Tarefas do proprietário da identidade ................................................................................. 165

iii

Page 4: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Tarefas do remetente delegado ......................................................................................... 171Uso de endereços IP dedicados ................................................................................................ 178

Facilidade de configuração ............................................................................................... 179Reputação gerenciada pela AWS ...................................................................................... 179Previsibilidade dos padrões de envio ................................................................................. 179Volume de e-mail enviados .............................................................................................. 179Custos adicionais ............................................................................................................ 180Controle sobre a reputação do remetente ........................................................................... 180Capacidade de isolar a reputação do remetente .................................................................. 180Endereços IP conhecidos e inalteráveis .............................................................................. 180Solicitação e liberação de IPs dedicados ............................................................................ 180Aquecimento de endereços IP dedicados ............................................................................ 183Criar grupos de IP dedicados ........................................................................................... 185Usar seus próprios endereços IP ....................................................................................... 186

Teste do envio de e-mail .......................................................................................................... 187Considerações importantes ............................................................................................... 187Como usar o simulador de caixa postal .............................................................................. 188Teste de rejeição de eventos ............................................................................................ 189

Usar a lista de supressão no nível da conta ................................................................................ 189Considerações sobre a lista de supressão no nível da conta .................................................. 190Ativar a lista de supressão no nível da conta ...................................................................... 190Ativar a lista de supressão no nível da conta de um conjunto de configurações ......................... 191Adicionar manualmente um endereço de e-mail à lista de supressão da conta .......................... 191Remover um endereço de e-mail da lista de supressão da conta ............................................ 192

Usar a lista de supressão global ............................................................................................... 192Considerações sobre a lista de supressão global ................................................................. 192Remover um endereço da lista de supressão global ............................................................. 193

Amazon SES e protocolos de segurança .................................................................................... 193Remetente de e-mail para o Amazon SES .......................................................................... 194Amazon SES para o receptor ........................................................................................... 194Criptografia de ponta a ponta ........................................................................................... 195

Recebimento de e-mails ................................................................................................................... 196Conceitos de recebimento de e-mails ......................................................................................... 196

Controle baseado em destinatário ...................................................................................... 196Controle baseado em endereço IP ..................................................................................... 197Processo de recebimento de e-mails .................................................................................. 198

Conceitos básicos do recebimento de e-mails ............................................................................. 198Etapa 1: Antes de começar .............................................................................................. 199Etapa 2: Verificar seu domínio .......................................................................................... 199Etapa 3: Configurar uma regra de recebimento .................................................................... 200Etapa 4: Enviar um e-mail ................................................................................................ 202Etapa 5: Visualizar o e-mail .............................................................................................. 203Etapa 6: Limpeza ............................................................................................................ 203

Configuração do recebimento de e-mails .................................................................................... 204Considerar seu caso de uso ............................................................................................. 204Como verificar um domínio ............................................................................................... 206Publicação de um registro MX .......................................................................................... 207Concessão de permissões ................................................................................................ 208Criação de filtros de endereços IP ..................................................................................... 211Criação de um conjunto de regras de recebimento ............................................................... 211Criação de regras de recebimento ..................................................................................... 212

Gerenciamento do recebimento de e-mails ................................................................................. 225Gerenciamento de conjuntos de regras de recebimento ........................................................ 226Gerenciamento de regras de recebimento ........................................................................... 228Gerenciamento de filtros de endereços IP ........................................................................... 231Exibição de métricas de erro ............................................................................................ 231Uso de notificações ......................................................................................................... 232

iv

Page 5: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Usar conjuntos de configuração ........................................................................................................ 244Gerenciamento de conjuntos de configurações ............................................................................ 244

Criar um conjunto de configurações ................................................................................... 244Exibição de uma lista dos seus conjuntos de configurações ................................................... 245Exibição dos detalhes de um conjunto de configurações ....................................................... 246Exclusão de um conjunto de configurações ......................................................................... 246

Gerenciamento de destinos de eventos ...................................................................................... 247Atualização de um destino de evento ................................................................................. 247Exclusão de um destino de evento .................................................................................... 247Habilitar ou desabilitar um destino de evento ....................................................................... 248

Gerenciamento de grupos de IP ................................................................................................ 248Atribuição de um grupo de IPs a um conjunto de configurações ............................................. 248Modificação de atribuições de grupo de IPs ........................................................................ 249

Especificação de conjuntos de configurações no e-mail ................................................................ 249Exportação de métricas de reputação ........................................................................................ 250

Habilitar a exportação de métricas de reputação em um conjunto de configurações .................... 250Desabilitar a exportação de métricas de reputação em um conjunto de configurações ................. 250

Monitoramento da atividade de envio ................................................................................................. 252Monitoramento com o uso do console ........................................................................................ 254Monitorar usando a API ........................................................................................................... 254

Chamada da operação da API GetSendStatistics usando a AWS CLI ............................... 255Chamada programática da operação GetSendStatistics .................................................. 255

Monitoramento com uso de notificações ..................................................................................... 258Considerações importantes ............................................................................................... 258Notificações via e-mail ..................................................................................................... 259Notificações do por meio do Amazon SNS .......................................................................... 261

Monitoramento usando publicação de eventos ............................................................................. 282Como funciona a publicação de eventos ............................................................................. 282Como usar a publicação de eventos .................................................................................. 283Terminologia de publicação de eventos .............................................................................. 283Configuração de publicação de eventos .............................................................................. 284Trabalhar com dados de eventos ...................................................................................... 293Tutoriais ......................................................................................................................... 330

Monitoramento da sua reputação do remetente ................................................................................... 360Uso do painel de reputação ...................................................................................................... 360Mensagens do painel de reputação ........................................................................................... 361

Mensagens de status geral ............................................................................................... 362Notificação da taxa de devolução ...................................................................................... 363Notificação da taxa de reclamação .................................................................................... 364Notificação da organização antispam ................................................................................. 365Notificação de feedback direto .......................................................................................... 366Notificação da lista de bloqueio de domínio ......................................................................... 367Notificação de revisões internas ........................................................................................ 368Notificação do provedor de caixa postal ............................................................................. 369Notificação de feedback do destinatário .............................................................................. 370Notificação de contas relacionadas .................................................................................... 371Notificação de spamtrap ................................................................................................... 371Notificação de site vulnerável ............................................................................................ 372Outra notificação ............................................................................................................. 373

Criação de alarmes com o CloudWatch ...................................................................................... 374Como pausar o envio de e-mails automaticamente ....................................................................... 377

Pausa automática do envio de e-mails para a conta do Amazon SES ...................................... 377Pausa automática do envio de e-mails para um conjunto de configurações ............................... 382

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

Restrição da ação ........................................................................................................... 388Restrição de endereços de e-mail ..................................................................................... 389

v

Page 6: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Restrição do uso da API geral .......................................................................................... 390Exemplo de políticas do IAM para o Amazon SES ....................................................................... 390

Permitir acesso total a todas as ações do Amazon SES ........................................................ 390Permitir acesso somente a ações de envio de e-mails .......................................................... 390Restringir o período de envio ............................................................................................ 391Restringir os endereços do destinatário .............................................................................. 391Restringir o endereço "From". ........................................................................................... 392Restringir o nome de exibição do remetente de e-mail .......................................................... 392Restringir o destino do feedback de devolução e reclamação ................................................. 393

Registro em log de chamadas da API ................................................................................................ 394Informações sobre o Amazon SES no CloudTrail ......................................................................... 394Exemplo: entradas de arquivo de log do Amazon SES .................................................................. 396

Uso de credenciais .......................................................................................................................... 398Uso da API .................................................................................................................................... 401

API de consulta ...................................................................................................................... 401Solicitações de consulta ................................................................................................... 401Solicitar autenticação ....................................................................................................... 404Exemplos de GET e POST ............................................................................................... 404Respostas de consulta ..................................................................................................... 405

Códigos de erro da API ........................................................................................................... 406Exemplos de código ........................................................................................................................ 409

Envio de e-mail usando os SDKs da AWS .................................................................................. 409Envio de e-mail usando a interface SMTP .................................................................................. 420Envio de e-mail bruto usando os SDKs da AWS .......................................................................... 431Verificar vários endereços de e-mail .......................................................................................... 439

Regiões ......................................................................................................................................... 441Regiões e endpoints do Amazon SES ........................................................................................ 441Sandbox e aumento de limite de envio ....................................................................................... 442Verificação de endereços de e-mail e domínios ........................................................................... 442Easy DKIM ............................................................................................................................. 442Lista de supressão .................................................................................................................. 442Notificações de feedback ......................................................................................................... 442Credenciais de SMTP .............................................................................................................. 443Domínios MAIL FROM personalizados ....................................................................................... 443Autorização de envio ............................................................................................................... 443Recebimento de e-mails ........................................................................................................... 444

Cotas ............................................................................................................................................ 445Cotas de envio de e-mail ......................................................................................................... 445

Cotas de envio ............................................................................................................... 445Cotas de mensagens ....................................................................................................... 445Cotas de remetentes e destinatários .................................................................................. 446Cotas relacionadas à publicação de eventos ....................................................................... 446Cotas de modelo de e-mail ............................................................................................... 447

Cotas relacionadas ao recebimento de e-mail .............................................................................. 447Cotas gerais ........................................................................................................................... 448

Cotas da API do Amazon SES .......................................................................................... 448Melhores práticas ............................................................................................................................ 449

Métricas de sucesso ................................................................................................................ 449Taxa de devolução .......................................................................................................... 449Reclamações .................................................................................................................. 450Qualidade da mensagem ................................................................................................. 451

Dicas e melhores práticas ........................................................................................................ 452Recomendações gerais .................................................................................................... 452Considerações de domínio e endereços "From" ................................................................... 452Autenticação ................................................................................................................... 453Construir e manter suas listas ........................................................................................... 453Conformidade ................................................................................................................. 453

vi

Page 7: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Solução de problemas do Amazon SES ............................................................................................. 454Problemas gerais .................................................................................................................... 454

As alterações que eu faço não ficam imediatamente visíveis .................................................. 454Problemas de verificação ......................................................................................................... 455

Problemas de verificação de e-mail ................................................................................... 455Problemas de verificação de domínio ................................................................................. 455Como examinar as configurações de verificação de domínio .................................................. 456

Problemas do DKIM ................................................................................................................ 457Problemas de entrega .............................................................................................................. 458Problemas com e-mails recebidos ............................................................................................. 459Problemas com as notificações ................................................................................................. 460Erros de envio de e-mails ........................................................................................................ 460Como aumentar a taxa de transferência ..................................................................................... 462Problemas de SMTP ............................................................................................................... 463

Códigos de resposta SMTP .............................................................................................. 464Exclusão de dados pessoais ............................................................................................................. 468

Excluir endereços suprimidos .................................................................................................... 468Exclusão de dados sobre e-mails enviados ................................................................................. 469

Remover dados de eventos armazenados ........................................................................... 469Exclusão de dados sobre identidades ........................................................................................ 470Excluir dados de autenticação de remetente ............................................................................... 470Excluir dados relacionados às regras de recebimento ................................................................... 471Excluir dados relacionados aos filtros de endereços IP ................................................................. 472Excluir dados em modelos de e-mail .......................................................................................... 472Excluir dados de modelos de e-mail de verificação personalizados ................................................. 472Excluir todos os dados encerrando sua conta da AWS ................................................................. 473

Perguntas frequentes ....................................................................................................................... 474Perguntas frequentes sobre o processo de análise de envios ......................................................... 474

Contas sob análise .......................................................................................................... 474Pausas de envio ............................................................................................................. 477Devoluções .................................................................................................................... 479Reclamações .................................................................................................................. 482Spamtraps ...................................................................................................................... 486Investigações manuais ..................................................................................................... 488

Perguntas frequentes sobre listas negras de IP ........................................................................... 490Perguntas frequentes sobre listas negras P1 ....................................................................... 490Perguntas frequentes sobre listas negras P2 ....................................................................... 490Perguntas frequentes sobre listas negras P3 ....................................................................... 491Perguntas frequentes sobre listas negras P4 ....................................................................... 491Perguntas frequentes sobre listas negras P5 ....................................................................... 491Perguntas frequentes sobre listas negras P6 ....................................................................... 492

Perguntas frequentes sobre métricas de e-mail ............................................................................ 493Geral ............................................................................................................................. 493Rastreamento de abertura ................................................................................................ 494Rastreamento de cliques .................................................................................................. 494

Recursos ....................................................................................................................................... 497Apêndice ........................................................................................................................................ 498

Apêndice: Campos do cabeçalho ............................................................................................... 498Apêndice: tipos de anexo sem suporte ....................................................................................... 500

Histórico do documento .................................................................................................................... 501

vii

Page 8: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPor que usar o Amazon SES?

O que é o Amazon SES?Bem-vindo ao Guia do desenvolvedor do Amazon Simple Email Service (Amazon SES). O Amazon SES éuma plataforma de e-mail que oferece uma forma fácil e econômica para enviar e receber e-mails usandoendereços de e-mail e domínios próprios.

Por exemplo, você pode enviar e-mails de marketing como ofertas especiais, e-mails transacionais comoconfirmações de pedidos, e outros tipos de correspondência como boletins informativos. Quando você usao Amazon SES para receber e-mails, pode desenvolver soluções de software, como sistemas de respostaautomática de e-mail, sistemas de cancelamento de e-mail e aplicativos que geram tíquetes de suporte aocliente de e-mails de entrada.

Com o Amazon SES, você só paga pelo que usa. Para obter mais informações, consulte Definição depreços do Amazon SES.

Por que usar o Amazon SES?A criação de uma solução de e-mail em grande escala é, geralmente, um desafio complexo e dispendiosopara uma empresa. Você precisa enfrentar desafios de infraestrutura, como gerenciamento de servidorde e-mail, configuração de rede e reputação de endereço IP. Além disso, muitas soluções de e-mailde terceiros requerem negociações contratuais e de preço, assim como custos iniciais significativos.O Amazon SES elimina esses desafios e permite que você se beneficie dos anos de experiência e dainfraestrutura de e-mail sofisticada que a Amazon.com criou para atender à sua própria base de clientesem larga escala.

Amazon SES e outros serviços da AWSO Amazon SES integra-se a outros produtos da AWS. Por exemplo, é possível:

• Adicionar recursos de envio de e-mail a qualquer aplicativo. Se o seu aplicativo é executado no AmazonElastic Compute Cloud (Amazon EC2), você pode usar o Amazon SES para enviar 62.000 e-mails pormês sem custo adicional. Você pode enviar e-mails a partir do Amazon EC2 usando um SDK da AWS,usando a interface SMTP do Amazon SES (p. 80) ou fazendo chamadas diretamente para a API doAmazon SES.

• Usar o AWS Elastic Beanstalk para criar um aplicativo habilitado para e-mail, como um programa queusa o Amazon SES para enviar um newsletter aos clientes.

• Configurar o Amazon Simple Notification Service (Amazon SNS) para notificar você sobre e-mails queforam devolvidos, produziram uma reclamação ou foram entregues com êxito ao servidor de e-mail dodestinatário. Quando você usa o Amazon SES para receber e-mails, seu conteúdo de e-mail pode serpublicado em tópicos do Amazon SNS.

• Usar o Console de gerenciamento da AWS para configurar o Easy DKIM, que é uma forma deautenticar seus e-mails. Embora você possa usar o Easy DKIM com qualquer provedor de DNS, ele éespecialmente fácil de configurar quando você gerencia seu domínio com o Route 53.

• Controlar o acesso de usuários ao seu recurso de envio de e-mails usando o AWS Identity and AccessManagement (IAM).

• Armazenar os e-mails que você recebe no Amazon Simple Storage Service (Amazon S3).• Tomar medidas em relação aos seus e-mails recebidos acionando as funções do AWS Lambda.• Usar o AWS Key Management Service (AWS KMS) para, opcionalmente, criptografar os e-mails

recebidos em seu bucket do Amazon S3.

1

Page 9: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEste guia

• Usar o AWS CloudTrail para registrar as chamadas de API do Amazon SES que você faz usando oconsole ou a API do Amazon SES.

• Publicar eventos de envio de e-mail no Amazon CloudWatch ou Amazon Kinesis Data Firehose. Se vocêpublicar eventos de envio de e-mail no Kinesis Data Firehose, poderá acessá-los no Amazon Redshift,Amazon Elasticsearch Service ou Amazon S3.

Este guiaEste guia contém as seguintes seções:

Seção Descrição

Envio de e-mails (p. 5) Descreve como você pode enviar e-mails usando o AmazonSES.

Recebimento de e-mails (p. 196) Descreve como você pode receber e-mails usando o AmazonSES.

Controle do acesso (p. 388) Mostra como usar o Amazon SES com o AWS Identity andAccess Management (IAM) para especificar quais açõesda API do Amazon SES o usuário pode executar em quaisrecursos do Amazon SES.

Registro em log de chamadas daAPI (p. 394)

Fornece uma lista de APIs do Amazon SES que podem serregistradas usando o AWS CloudTrail.

Uso de credenciais (p. 398) Explica os tipos de credenciais que você pode usar com oAmazon SES, e quando você pode usá-las.

Uso da API (p. 401) Descreve como usar a API de consulta do Amazon SES

Regiões (p. 441) Contém informações sobre como usar o Amazon SES emvárias regiões da AWS.

Cotas (p. 445) Fornece uma lista de cotas que se aplicam ao Amazon SES.

Recursos (p. 497) Lista recursos que você pode achar útil ao trabalhar com oAmazon SES

Apêndice (p. 498) Fornece informações complementares sobre campos decabeçalho, tipos de anexo que não são compatíveis e scripts.

2

Page 10: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEtapa 1: Cadastre-se na AWS

Início rápido do Amazon SESEste procedimento orienta você pelas etapas para se cadastrar na AWS, verificar seu endereço de e-mail,enviar seu primeiro e-mail, considerar como você lida com devoluções e reclamações e sair da sandbox doAmazon Simple Email Service (Amazon SES).

Use este procedimento se você:

• Estiver apenas experimentando o Amazon SES.• Quiser enviar alguns e-mails de teste sem fazer qualquer programação.• Quiser configurar da forma mais simples possível.

Etapa 1: Cadastre-se na AWSAntes de usar o Amazon SES, é necessário cadastrar-se na AWS. Ao se cadastrar em uma conta da AWS,sua conta será automaticamente registrada para todos os serviços da AWS.

Para obter instruções, consulte Cadastrando-se na AWS (p. 47).

Etapa 2: Verificar o endereço de e-mailAntes de enviar e-mails do seu endereço de e-mail por meio do Amazon SES, você precisa mostrar aoAmazon SES que é o proprietário do endereço de e-mail. Para isso, faça a verificação dele.

Para obter instruções, consulte Verificar endereços de e-mail no Amazon SES (p. 47).

Etapa 3: Enviar seu primeiro e-mailVocê pode enviar um e-mail usando o console do Amazon SES. Como novo usuário, sua conta está emum ambiente de teste chamado sandbox, portanto, você só pode enviar e-mails de e para os endereços dee-mail que foram verificados.

Para obter instruções, consulte Enviar um e-mail usando o console do Amazon SES (p. 18).

Etapa 4: Considerar como você lidará comdevoluções e reclamações

Antes da próxima etapa, você precisa pensar sobre como lidar com devoluções e reclamações. Se vocêestiver enviando para um pequeno número de destinatários, o processo pode ser tão simples quantoexaminar o feedback de devolução e reclamação que você recebe por e-mail e, em seguida, remover osdestinatários da sua lista de correspondência.

3

Page 11: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEtapa 5: Sair da sandbox do Amazon SES

Etapa 5: Sair da sandbox do Amazon SESPara ser capaz de enviar e-mails para endereços de e-mail não verificados e ampliar o número de e-mailsque pode enviar por dia e o quão rápido você pode enviá-los, sua conta precisa ser retirada da sandbox.Esse processo envolve a abertura de um chamado SES Sending Limits Increase no Atendimento aocliente.

Para obter mais informações sobre as restrições da sandbox e como solicitar a saída da sandbox, consulteSair da sandbox do Amazon SES (p. 73).

Próximas etapas• Depois de enviar alguns e-mails de teste para você mesmo, use o simulador de caixa postal do Amazon

SES para fazer mais testes, pois os e-mails para o simulador de caixa postal não contam na sua cota deenvio ou nas suas taxas de devolução e reclamação. Para obter mais informações sobre o simulador decaixa postal, consulte Teste de envio de e-mail no Amazon SES (p. 187).

• Monitore sua atividade de envio, como o número de e-mails que você enviou e o número de devolvidosou com reclamações. Para obter mais informações, consulte Monitoramento da atividade de envio doAmazon SES (p. 252).

• Verifique domínios inteiros, para que você possa enviar e-mails de qualquer endereço de e-mail no seudomínio sem verificar os endereços individualmente. Para obter mais informações, consulte Verificardomínios no Amazon SES (p. 59).

• Aumente a chance de que seus e-mails sejam entregues nas caixas de entrada de seus destinatários,em vez de caixas de lixo, autenticando seus e-mails. Para obter mais informações, consulteAutenticação de e-mail no Amazon SES (p. 132).

4

Page 12: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorComo faço para enviar e-mails usando o Amazon SES?

Envio de e-mail com Amazon SESQuando você envia um e-mail, o faz através de algum tipo de servidor de e-mail de saída. Esse servidor dee-mail pode ser fornecido pelo seu provedor de serviços de Internet (ISP), pelo departamento de TI da suaempresa ou ele pode ter sido configurado por você mesmo. O servidor de e-mail aceita o seu conteúdo dee-mail, formata-o de acordo com os padrões de e-mail e, em seguida, o envia pela Internet. O e-mail podepassar por outros servidores até atingir um receptor (uma entidade, como um ISP, que recebe o e-mailem nome do destinatário). O receptor então entrega o e-mail ao destinatário. O diagrama a seguir ilustra oprocesso básico de envio de e-mails.

Quando você usa o Amazon SES, Amazon SES ele se torna seu servidor de e-mails de saída. Vocêtambém pode manter seu servidor de e-mail existente e configurá-lo para enviar seu e-mails de saídapor meio do Amazon SES, para que não precise alterar as configurações nos seus clientes de e-mail. Odiagrama a seguir mostra onde o Amazon SES se encaixa no processo de envio de e-mail.

Um remetente pode gerar o conteúdo de e-mail de diferentes formas. O remetente pode criar o e-mailusando um aplicativo de cliente de e-mail ou um programa que gera automaticamente e-mails, como umaplicativo que envia confirmações de pedidos em resposta a transações de compra.

Como faço para enviar e-mails usando o AmazonSES?

Há várias maneiras de enviar um e-mail usando o Amazon SES. Você pode usar o console do AmazonSES, a interface Simple Mail Transfer Protocol (SMTP) ou chamar a API do Amazon SES.

• Console do Amazon SES — Este método é a maneira mais rápida de configurar seu sistema e enviaralguns e-mails de teste, mas assim que você estiver pronto para iniciar sua campanha de e-mail,usará o console principalmente para monitorar sua atividade de envio. Por exemplo, você pode exibirrapidamente o número de e-mails que enviou e o número de devoluções e reclamações que recebeu.

• Interface SMTP — Há duas maneiras de acessar o Amazon SES por meio da interface SMTP. Aprimeira, que não requer codificação, é configurar qualquer software habilitado para SMTP para enviar e-mail por meio do Amazon SES. Por exemplo, você pode configurar seu cliente de e-mail ou programa desoftware existente para se conectar ao endpoint SMTP do Amazon SES em vez de ao seu atual servidorde e-mail de saída.

A segunda maneira é usar uma linguagem de programação compatível com SMTP, como Java, eacessar a interface SMTP do Amazon SES usando os tipos de dados e as funções SMTP incorporadasà linguagem.

5

Page 13: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorComo começo?

• API do Amazon SES — Você pode chamar a API de consulta do Amazon SES diretamente por HTTPSou usar a AWS Command Line Interface, o AWS Tools para Windows PowerShell ou um SDK da AWS.Os SDKs da AWS encapsulam a funcionalidade de baixo nível da API do Amazon SES com tipos dedados de alto nível e chamadas de função que se encarregam dos detalhes por você. Os SDKs da AWSfornecem não apenas as operações do Amazon SES, mas também a funcionalidade básica da AWS,como autenticação de solicitação, novas tentativas de solicitação e manuseio de erros.

Como começo?Se você é novo no Amazon SES, comece lendo as seguintes seções:

• Início rápido do Amazon SES (p. 3) — Mostra como configurar e enviar um e-mail de teste o mais rápidopossível.

• Conceitos básicos do envio de e-mail com o Amazon SES (p. 17) – mostra como enviar um e-mailusando o console do Amazon SES, a interface SMTP e um AWS SDK. Os exemplos estão disponíveisem C#, Java e PHP.

• Amazon SES e capacidade de entrega (p. 7) — Explica os conceitos de capacidade de entrega dee-mail com os quais você deve estar familiarizado ao usar o Amazon SES.

• Processo de envio de e-mails do Amazon SES (p. 11) — Mostra o que acontece quando você enviaum e-mail pelo Amazon SES.

• Formato de e-mail e Amazon SES (p. 14) — Analisa o formato dos e-mails e identifica as informaçõesque você precisa fornecer para o Amazon SES.

Em seguida, você pode saber mais sobre o envio de e-mail com o Amazon SES, e em mais detalhes,lendo as seções listadas na tabela a seguir:

Seção Descrição

Configurar e-mails (p. 46) Mostra como se cadastrar para a AWS, obter suas chaves deacesso à AWS, fazer download de um SDK da AWS, verificaros endereços ou domínios de e-mail e sair da sandbox doAmazon SES.

Uso da interface SMTP (p. 80) Mostra como obter suas credenciais SMTP do Amazon SES,conectar-se ao endpoint SMTP do Amazon SES e forneceexemplos de como configurar clientes de e-mail e pacotesde software para enviar e-mail por meio do Amazon SES.Além disso, explica como configurar seu servidor de e-mailexistente para enviar todos os e-mails de saída pelo AmazonSES.

Uso da API (p. 114) Mostra como enviar e-mails formatados e brutos usandoa API do Amazon SES. Explica como usar caracteres nãopadrão e enviar anexos usando o padrão MultipurposeInternet Mail Extensions (MIME) ao enviar e-mails brutos.

Autenticação de e-mail (p. 132) Mostra como usar o DKIM com o Amazon SES para mostraraos ISPs que você é proprietário do domínio do qual vocêestá enviando.

Gerenciar as cotas de envio (p. 148) Descreve as cotas de envio do Amazon SES, fornece osprocedimentos para aumentá-las e documenta os erros quevocê recebe ao excedê-las.

6

Page 14: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConceitos

Seção Descrição

Uso de autorização de envio (p. 153) Mostra como autorizar outros usuários a enviar e-mails desuas identidades em seu nome.

Uso de endereços IPdedicados (p. 178)

Você decide se deseja usar endereços IP compartilhados oualugar endereços IP dedicados para envio do Amazon SES.Fornece os procedimentos para solicitar e abrir mão de IPsdedicados e para criar grupos de IPs dedicados.

Teste do envio de e-mail (p. 187) Explica como usar o simulador de caixa postal do AmazonSES para simular cenários comuns de e-mail sem afetar suasestatísticas de envio, como suas métricas de devolução ereclamação. Os cenários que você pode testar são entregabem-sucedida, devolução, reclamação, aviso de ausência(OOO) e endereço na lista de supressão.

Conceitos de envio de e-mail do Amazon SESAs seções a seguir contêm informações sobre como o Amazon SES envia seu e-mail.

Tópicos nesta seção:• Amazon SES e capacidade de entrega (p. 7)• Processo de envio de e-mails do Amazon SES (p. 11)• Formato de e-mail e Amazon SES (p. 14)

Amazon SES e capacidade de entregaVocê quer que seus destinatários leiam e valorizem seus e-mails, e não os rotulem como spam. Em outraspalavras, você deseja maximizar a capacidade de entrega—, ou seja, a porcentagem de e-mails quechega às caixas de entrada dos destinatários. Este tópico descreve os conceitos de capacidade de entregade e-mail com os quais você deve estar familiarizado quando usa o Amazon SES.

Para maximizar a capacidade de entrega de e-mail, você precisa entender os problemas de entrega dee-mail, tomar medidas proativas para impedi-los, manter-se informado a respeito do status dos e-mailsenviados e, em seguida, melhorar seu programa de envio de e-mails, se necessário, para aumentar aindamais a probabilidade de entregas bem-sucedida. As seções a seguir analisam os conceitos por trás dessasetapas e como o Amazon SES ajuda você durante o processo.

7

Page 15: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAmazon SES e capacidade de entrega

Entender problemas de entrega de e-mailNa maioria dos casos, as mensagens são entregues com êxito para os destinatários que as esperam. Emalguns casos, no entanto, uma entrega pode falhar ou um destinatário pode não receber o e-mail que vocêestá enviando. As devoluções, reclamações e a lista de supressão estão relacionadas a esses problemasde entrega e são descritas nas seções a seguir.

BounceSe o receptor do destinatário (por exemplo, um provedor de e-mail) não entregar a mensagem parao destinatário, o receptor devolverá a mensagem para o Amazon SES. O Amazon SES notifica vocêsobre o e-mail devolvido por e-mail ou por meio do Amazon Simple Notification Service (Amazon SNS),dependendo de como você configurou o sistema. Para obter mais informações, consulte Monitoramentocom o uso de notificações do Amazon SES (p. 258).

Há devoluções definitivas e devoluções flexíveis, da seguinte forma:

• Devolução definitiva – Uma falha de entrega de e-mail persistente. Por exemplo, a caixa de correio nãoexiste. O Amazon SES não repete devoluções definitivas, com exceção de falhas de pesquisa do DNS.Recomendamos que você não faça tentativas repetidas de entrega para endereços de e-mail que sãodevolvidos de forma definitiva.

• Devolução flexível – Uma falha de entrega de e-mail temporária. Por exemplo, a caixa de correio estácheia, há muitas conexões (também chamado de limitação) ou a conexão caiu. O Amazon SES repeteas devoluções flexíveis várias vezes. Se o e-mail ainda não puder ser entregue, o Amazon SES deixaráde tentar novamente.

8

Page 16: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAmazon SES e capacidade de entrega

O Amazon SES notificará você sobre devoluções definitivas e devoluções flexíveis que não serão maisrepetidas. No entanto, apenas as devoluções definitivas contam na taxa de devolução e na métrica dedevolução que você obtém usando o console ou a API GetSendStatistics do Amazon SES.

As devoluções também podem ser síncronas ou assíncronas. Uma devolução síncrona acontece enquantoos servidores de e-mail do remetente e do destinatário estão comunicando-se ativamente. Uma devoluçãoassíncrona acontece quando um destinatário aceita inicialmente uma mensagem de e-mail para entrega e,subsequentemente, não a entrega ao destinatário.

Reclamação

A maioria dos programas de cliente de e-mail fornece um botão chamado "Marcar como spam", oualgo semelhante, que move a mensagem para uma pasta de spam e a encaminha ao provedor de e-mail. Além disso, a maioria dos provedores de e-mail mantém um endereço de abuso (por exemplo,[email protected]), para onde os usuários podem encaminhar mensagens de e-mail indesejadas esolicitar que o provedor de e-mail realize uma ação para impedi-las. Em ambos os casos, o destinatárioestá fazendo uma reclamação. Se o provedor de e-mail concluir que você é um spammer e o AmazonSES tiver um ciclo de comentários configurado com o provedor de e-mail, este enviará a reclamação devolta para o Amazon SES. Quando o Amazon SES recebe uma reclamação, ele encaminha a reclamaçãoa você por e-mail ou usando uma notificação do Amazon SNS, dependendo de como o sistema estáconfigurado. Para obter mais informações, consulte Monitoramento com o uso de notificações do AmazonSES (p. 258). Recomendamos que você não faça tentativas de entrega repetidas para endereços de e-mail que geram reclamações.

Lista de supressão

A lista de supressão do Amazon SES é uma lista de endereços de e-mail de destinatários que causaramrecentemente uma devolução definitiva para algum cliente do Amazon SES. Se você tentar enviar ume-mail através do Amazon SES para um endereço que esteja na lista de supressão, a chamada para oAmazon SES será bem-sucedida, mas o Amazon SES tratará o e-mail como uma devolução definitivaem vez de tentar enviá-lo. Como qualquer devolução definitiva, as devoluções da lista de supressão sesomam à sua cota de envio e taxa de devolução. Um endereço de e-mail pode permanecer na lista desupressão por até 14 dias. Se você tiver certeza de que o endereço de e-mail de destino é válido, envieuma solicitação de remoção da lista de supressão. Para obter mais informações, consulte Usar a lista desupressão global do Amazon SES (p. 192).

Seja proativoUm dos maiores problemas com e-mails na Internet é o e-mail em massa não solicitado (spam). Osprovedores de e-mail tomam medidas extensivas para impedir que os clientes recebam spam. O AmazonSES adota etapas proativas para reduzir a probabilidade de que os provedores de e-mail considerem seue-mail como spam. O Amazon SES usa verificação, autenticação, cotas de envio e filtragem de conteúdo.O Amazon SES também mantém uma reputação confiável com os provedores de e-mail e requer que vocêenvie e-mails de alta qualidade. O Amazon SES realiza algumas dessas ações para você automaticamente(como filtragem de conteúdo); em outros casos, ele fornece as ferramentas (como autenticação) ouguia você na direção certa (cotas de envio). As seções a seguir fornecem mais informações sobre cadaconceito.

Verificação

Infelizmente, um spammer é capaz de falsificar o cabeçalho de e-mails e falsificar o endereço de e-mailoriginal, de modo a parecer que o e-mail tem uma origem diferente. Para manter a confiança entre osprovedores de e-mail e o Amazon SES, o Amazon SES precisa garantir que os remetentes são quem elesdizem que são. Você é, portanto, obrigado a verificar todos os endereços de e-mail dos quais envia e-mailspor meio do Amazon SES para proteger a identidade do envio. Você pode verificar os endereços de e-mail usando o console do Amazon SES ou a API do Amazon SES. Você também pode verificar domínios

9

Page 17: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAmazon SES e capacidade de entrega

inteiros. Para obter mais informações, consulte Verificar endereços de e-mail no Amazon SES (p. 47) eVerificar domínios no Amazon SES (p. 59).

Se sua conta ainda estiver na sandbox do Amazon SES, você também precisará verificar todos osendereços de destinatários, exceto os endereços fornecidos pelo simulador de caixa postal do AmazonSES. Para obter informações sobre como sair da sandbox, consulte Sair da sandbox do AmazonSES (p. 73). Para obter mais informações sobre o simulador de caixa postal, consulte Teste de envio dee-mail no Amazon SES (p. 187).

Autenticação

Autenticação é outra forma que pode ser usada para indicar aos provedores de e-mail que você é quemalega ser. Quando você autentica um e-mail, fornece evidências de que é o proprietário da conta e queseus e-mails não foram modificados em trânsito. Em alguns casos, os provedores de e-mail recusam-se a encaminhar e-mail que não é autenticado. O Amazon SES oferece suporte a dois métodos deautenticação: Sender Policy Framework (SPF – Estrutura de políticas para remetentes) e DomainKeysIdentified Mail (DKIM – Mensagem identificada por chaves de domínio). Para obter mais informações,consulte Autenticação de e-mail no Amazon SES (p. 132).

Cotas de envio

Se um provedor de e-mail detectar picos inesperados repentinos no volume ou na taxa de seus e-mails,poderá suspeitar que você é um spammer e bloquear seus e-mails. Portanto, todas as contas do AmazonSES têm um conjunto de cotas de envio. Essas cotas restringem o número de e-mails que você podeenviar em um período de 24 horas e o número que você pode enviar por segundo. As cotas de envioajudam a proteger a confiabilidade com provedores de e-mail.

Na maioria dos casos, se você for um novo usuário, o Amazon SES permitirá o envio de uma pequenaquantidade de e-mails por dia. Se os e-mails que você enviar forem aceitáveis para os provedores dee-mail, aumentaremos automaticamente essa cota. As cotas de envio aumentarão constantemente aolongo do tempo para que você possa enviar maiores quantidades de e-mail em taxas mais rápidas. Vocêtambém pode criar um SES Sending Limits Increase case para solicitar aumentos de cota adicionais.

Para obter mais informações sobre cotas de envio e como aumentá-las, consulte Gerenciar as cotas deenvio do Amazon SES (p. 148).

Filtragem de conteúdo

Muitos provedores de e-mail usam filtragem de conteúdo para determinar se os e-mails de entrada sãospam. Os filtros de conteúdo procuram conteúdo questionável e bloqueiam o e-mail caso se enquadreno perfil de spam. O Amazon SES também usa filtros de conteúdo. Quando o aplicativo envia umasolicitação para o Amazon SES, o Amazon SES monta uma mensagem de e-mail em seu nome e examinao cabeçalho e o corpo da mensagem para determinar se eles contêm algum conteúdo que os provedoresde e-mail possam interpretar como spam. Se suas mensagens aparecerem como spam para os filtros deconteúdo que o Amazon SES usa, sua reputação com o Amazon SES será afetada negativamente.

O Amazon SES também verifica todas as mensagens para detectar a presença de vírus. Se umamensagem contém um vírus, o Amazon SES não tenta entregar a mensagem ao servidor de e-mail dodestinatário.

Reputação

Em se tratando de envio de e-mail, a reputação— uma medida de confiança que um endereço IP,endereço de e-mail ou domínio de envio não é a fonte do spam— é importante. O Amazon SES mantémuma sólida reputação com provedores de e-mail, de forma que os provedores de e-mail distribuem seuse-mails para as caixas de entrada do destinatário. Da mesma forma, você precisa manter uma reputaçãoconfiável com o Amazon SES. Você cria sua reputação com o Amazon SES enviando conteúdo de altaqualidade. Quando você envia conteúdo de alta qualidade, sua reputação se torna mais confiável ao longo

10

Page 18: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProcesso de envio de e-mails

do tempo e o Amazon SES aumenta suas cotas de envio. Devoluções e reclamações em excesso afetamnegativamente sua reputação e podem levar o Amazon SES a reduzir as cotas de envio da conta ou aencerrar a conta do Amazon SES.

Uma forma de ajudar a manter sua reputação é usar o simulador de caixa postal durante o teste dosistema, em vez de enviar para endereços de e-mail que você criou. Os e-mails para o simulador decaixa postal não contam nas métricas de devolução e reclamação. Para obter mais informações sobre osimulador de caixa postal, consulte Teste de envio de e-mail no Amazon SES (p. 187).

E-mail de alta qualidade

E-mail de alta qualidade é um e-mail que os destinatários consideram interessante e gostariam de receber.Valor significa coisas diferentes para destinatários diferentes, e pode vir em forma de ofertas, confirmaçõesde pedidos, recibos, newsletters, etc. Em última análise, sua capacidade de entrega depende da qualidadedos e-mails que você envia, pois os provedores de e-mail bloqueiam os e-mails que consideram de baixaqualidade.

Fique informadoSe ocorrerem falhas nas suas entregas, os destinatários reclamarem sobre seus e-mails ou se o AmazonSES entregar com êxito um e-mail ao servidor de e-mail de um destinatário, o Amazon SES ajudará vocêa rastrear o problema fornecendo notificações e permitindo que você monitore facilmente suas estatísticasde uso.

Notificações

Quando um e-mail é devolvido, o provedor de e-mail notifica o Amazon SES, e o Amazon SES notificavocê. O Amazon SES notificará você sobre devoluções definitivas e devoluções flexíveis que o AmazonSES não repetirá mais. Muitos provedores de e-mail também encaminham reclamações, e o Amazon SESconfigura ciclos de comentários de reclamação com os principais provedores de e-mail, de modo que vocênão precisa fazer isso. O Amazon SES pode notificá-lo sobre devoluções, reclamações e entregas bem-sucedidas de duas formas: você pode definir sua conta para receber notificações por meio do AmazonSNS ou pode receber notificações por e-mail (apenas para devoluções e reclamações). Para obter maisinformações, consulte Monitoramento com o uso de notificações do Amazon SES (p. 258).

Estatísticas de uso

O Amazon SES fornece estatísticas de uso para que você possa visualizar as entregas com falha a fim dedeterminar e resolver as causas. É possível visualizar as estatísticas de uso usando o console do AmazonSES ou chamando a API do Amazon SES. Você pode visualizar o número de entregas, devoluções,reclamações e e-mails rejeitados infectados por vírus que possui, e também pode visualizar as cotas deenvio para garantir que você não as ultrapasse.

Melhore seu programa de envio de e-mailsSe você estiver recebendo um grande número de devoluções e reclamações, é hora de reavaliar suaestratégia de envio de e-mail. Lembre-se de que um número excessivo de devoluções, reclamaçõese tentativas de envio de e-mails de baixa qualidade representam abuso e colocam sua conta da AWSem risco de rescisão. Em última análise, você precisa usar o Amazon SES para enviar e-mails de altaqualidade e somente para os destinatários que querem recebê-los.

Processo de envio de e-mails do Amazon SESEste tópico descreve o que acontece quando você envia um e-mail com o Amazon SES e os váriosresultados que podem ocorrer após o envio do e-mail. A figura a seguir é uma visão geral de alto nível doprocesso de envio:

11

Page 19: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProcesso de envio de e-mails

1. Um aplicativo cliente, atuando como um remetente do e-mail, faz uma solicitação para o Amazon SESenviar um e-mail para um ou mais destinatários.

2. Se a solicitação for válida, o Amazon SES aceitará o e-mail.3. O Amazon SES envia a mensagem pela Internet para o receptor do destinatário. Assim que a

mensagem é passada para o Amazon SES, ela normalmente é enviada imediatamente, com aprimeira tentativa de entrega normalmente ocorrendo em milissegundos.

4. Neste momento, existem diferentes possibilidades. Por exemplo:

a. O ISP entrega a mensagem na caixa de entrada do destinatário.b. O endereço de e-mail do destinatário não existe, de modo que o ISP envia uma notificação de

devolução para o Amazon SES. O Amazon SES encaminha a notificação para o remetente.c. O destinatário recebe a mensagem, mas considera que ela seja spam e registra uma reclamação

com o ISP. O ISP, que tem um ciclo de comentários configurado com o Amazon SES, envia areclamação ao Amazon SES, que, por sua vez, a encaminha para o remetente.

As seções a seguir analisam os possíveis resultados individuais após um remetente enviar uma solicitaçãode e-mail para o Amazon SES e após o Amazon SES enviar uma mensagem de e-mail para o destinatário.

Após um remetente enviar uma solicitação de e-mail para oAmazon SESQuando o remetente faz uma solicitação para o Amazon SES enviar um e-mail, a chamada pode ou nãoser bem-sucedida. As seções a seguir descrevem o que acontece em cada caso.

Solicitação de envio bem-sucedida

Se a solicitação ao Amazon SES for bem-sucedida, o Amazon SES retornará uma resposta de êxitoao remetente. Essa mensagem inclui o ID de mensagem, uma string de caracteres que identificaexclusivamente a solicitação. Você pode usar o ID de mensagem para identificar o e-mail enviado oupara rastrear problemas encontrados durante o envio. O Amazon SES monta uma mensagem de e-mailcom base nos parâmetros da solicitação, verifica a mensagem para ver se há conteúdo questionávele vírus e, em seguida, a envia pela Internet usando o Simple Mail Transfer Protocol (SMTP). Suamensagem costuma ser enviada imediatamente; a primeira tentativa de entrega normalmente ocorre emmilissegundos.

Note

Se o Amazon SES aceita a solicitação do remetente e, em seguida, determina que a mensagemcontém um vírus, o Amazon SES interrompe o processamento da mensagem e não tenta entregá-la ao servidor de e-mail do destinatário.

12

Page 20: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProcesso de envio de e-mails

Falha na solicitação de envio

Se a solicitação de envio de e-mail do remetente ao Amazon SES falhar, o Amazon SES responderá parao remetente com um erro e descartará o e-mail. A solicitação pode falhar por vários motivos. Por exemplo,a solicitação pode não ser formatada corretamente ou o endereço de e-mail não pode ser verificado peloremetente.

O método pelo qual você pode determinar se a solicitação falhou depende de como você chama o AmazonSES. Veja a seguir exemplos de como erros e exceções são retornados:

• Se você estiver chamando o Amazon SES por meio da API de consulta (HTTPS) (SendEmail ouSendRawEmail), as ações retornarão um erro. Para mais informações, consulte o Amazon SimpleEmail Service API Reference.

• Se você estiver usando um AWS SDK para uma linguagem de programação que usa exceções, achamada para o Amazon SES lançará uma MessageRejectedException. (O nome da exceção podevariar, dependendo do SDK.)

• Se você estiver usando a interface SMTP, o remetente receberá um código de resposta SMTP, mascomo o erro é transmitido depende do cliente do remetente. Alguns clientes podem exibir um código deerro; outros não.

Para obter informações sobre erros que podem ocorrer quando você envia um e-mail com o Amazon SES,consulte Erros de envio de e-mails do Amazon SES (p. 460).

Depois que o Amazon SES envia um e-mailSe a solicitação do remetente ao Amazon SES for bem-sucedida, o Amazon SES enviará o e-mail e umdos seguintes resultados ocorrerá:

• Entrega bem-sucedida e o destinatário não objeta o e-mail — O e-mail é aceito pelo ISP e o ISP entregao e-mail para o destinatário. A entrega bem-sucedida é mostrada na figura a seguir.

• Devolução definitiva — O e-mail é rejeitado pelo ISP devido a uma condição persistente ou rejeitadopelo Amazon SES porque o endereço de e-mail está na lista de supressão do Amazon SES. O endereçode e-mail estará na lista de supressão do Amazon SES se tiver causado recentemente uma devoluçãodefinitiva para algum cliente do Amazon SES. Uma devolução definitiva com um ISP pode ocorrerporque o endereço do destinatário é inválido. Uma notificação de devolução definitiva é enviado doISP de volta ao Amazon SES, que notifica o remetente por e-mail ou por meio do Amazon SimpleNotification Service (Amazon SNS), de acordo com a configuração do remetente. O Amazon SESnotifica o remetente sobre devoluções da lista de supressão do mesmo modo. O caminho de umadevolução definitiva de um ISP é mostrado na figura a seguir.

• Devolução flexível — O ISP não pode entregar o e-mail para o destinatário devido a uma condiçãotemporária, como o ISP está muito ocupado para processar a solicitação ou a caixa de correio dodestinatário está cheia. Uma devolução flexível também poderá ocorrer se o domínio não existir. O ISPenvia uma notificação de devolução flexível de volta para Amazon SES ou, no caso de um domínio quenão existe, o Amazon SES não pode encontrar um servidor de e-mail para o domínio. Em qualquer umdos casos, o Amazon SES repete o e-mail por um período estendido. Se o Amazon SES não conseguirentregar o e-mail nesse período, enviará uma notificação de devolução por e-mail ou por meio do

13

Page 21: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorFormato de e-mail e Amazon SES

Amazon SNS. Se o Amazon SES conseguir entregar o e-mail para o destinatário durante uma novatentativa, a entrega será bem-sucedida. Uma devolução flexível é mostrada na figura a seguir. Nessecaso, o Amazon SES repete o envio do e-mail e o ISP acaba conseguindo entregá-lo para o destinatário.

• Reclamação — O e-mail é aceito pelo ISP e entregue para o destinatário, mas o destinatário considerao e-mail como spam e clica em um botão, como "Marcar como spam" no cliente de e-mail. Se o AmazonSES tiver um ciclo de comentários configurado com ISP, uma notificação de reclamação será enviada aoAmazon SES, que a encaminha para o remetente. A maioria dos ISPs não fornece o endereço de e-maildo destinatário que enviou a reclamação, de modo que a notificação de reclamação do Amazon SESfornece ao remetente uma lista de destinatários que podem ter enviado a reclamação, com base nosdestinatários da mensagem original e no ISP de que o Amazon SES recebeu a reclamação. O caminhode uma reclamação é mostrado na figura a seguir.

• Resposta automática — O e-mail é aceito pelo ISP e o ISP o entrega para o destinatário. O ISP enviauma resposta automática, como uma mensagem de ausência do escritório (OOTO) para o AmazonSES. O Amazon SES encaminha a notificação de resposta automática para o remetente. Uma respostaautomática é mostrada na figura a seguir.

Certifique-se de que seu programa habilitado para o Amazon SES não tente enviar novamente asmensagens que geram uma resposta automática.

Tip

Você pode usar o simulador de caixa postal do Amazon SES para testar uma entrega bem-sucedida, devolução, reclamação, OOTO ou o que acontece quando um endereço está na listade supressão. Para obter mais informações, consulte Teste de envio de e-mail no AmazonSES (p. 187).

Formato de e-mail e Amazon SESQuando um cliente faz uma solicitação para o Amazon SES, o Amazon SES cria uma mensagem de e-mail em conformidade com a especificação de formato de mensagem de Internet (RFC 5322). Um e-mailconsiste em um cabeçalho, um corpo e um envelope, como descrito abaixo.

• Cabeçalho — Contém instruções de roteamento e informações sobre a mensagem. Entre os exemplosestão o endereço do remetente, o endereço do destinatário, o assunto e a data. O cabeçalho ésemelhante às informações na parte superior de uma carta postal, embora possa conter muitos outrostipos de informação, como o formato da mensagem.

• Corpo — Contém o texto da mensagem.• Envelope — Contém as informações de roteamento reais que são transmitidas entre o cliente de e-

mail e o servidor de e-mail durante a sessão SMTP. Essas informações de envelope de e-mail sãosemelhantes às informações em um envelope postal. As informações de roteamento do envelope de e-

14

Page 22: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorFormato de e-mail e Amazon SES

mail normalmente são iguais às informações de roteamento no cabeçalho de e-mail, mas não sempre.Por exemplo, quando você envia uma cópia oculta (CCO), o endereço real do destinatário (derivadodo envelope) não é igual ao endereço "To" que é exibido no cliente de e-mail do destinatário, que éderivado do cabeçalho.

Veja a seguir um exemplo simples de um e-mail. O cabeçalho é seguido por uma linha em branco e pelocorpo do e-mail. O envelope não é mostrado porque é transmitido entre o cliente e o servidor de e-maildurante a sessão SMTP, em vez de uma parte do e-mail em si.

Received: from abc.smtp-out.amazonses.com (123.45.67.89) by in.example.com (87.65.43.210); Fri, 17 Dec 2010 14:26:22From: "Andrew" <[email protected]>;To: "Bob" <[email protected]>Date: Fri, 17 Dec 2010 14:26:21 -0800Subject: HelloMessage-ID: <[email protected]>Accept-Language: en-USContent-Language: en-USContent-Type: text/plain; charset="us-ascii"Content-Transfer-Encoding: quoted-printableMIME-Version: 1.0

Hello, I hope you are having a good day.

-Andrew

As seções a seguir analisam cabeçalhos e corpos de e-mail e identificam as informações que você precisafornecer quando usa o Amazon SES.

Cabeçalho de e-mailHá um cabeçalho por mensagem de e-mail. Cada linha do cabeçalho contém um campo seguido por doispontos seguidos por um corpo de campo. Quando você lê um e-mail em um cliente de e-mail, o cliente dee-mail normalmente exibe os valores dos seguintes campos de cabeçalho:

• Para — Os endereços de e-mail dos destinatários da mensagem.• CC — Os endereços de e-mail dos destinatários copiados na mensagem.• De — O endereço de e-mail do qual o e-mail é enviado.• Assunto — Resumo do tópico da mensagem.• Data — A data e hora em que o e-mail é enviado.

Há muitos campos de cabeçalho adicionais que fornecem informações de roteamento e descrevem oconteúdo da mensagem. Os clientes de e-mail normalmente não exibem esses campos para o usuário.Para obter uma lista completa dos campos de cabeçalho que o Amazon SES aceita, consulte Apêndice:Campos do cabeçalho (p. 498). Quando você usa o Amazon SES, precisa entender especialmente adiferença entre os campos de cabeçalho "De", "Responder para" e "Return-Path". Conforme mencionadoanteriormente, o endereço "From" é o endereço de e-mail do remetente da mensagem, enquanto "Reply-To" e "Return-Path" são assim:

• Responder para — O endereço de e-mail para o qual as respostas serão enviadas. Por padrão, asrespostas são enviadas para o endereço de e-mail do remetente original.

• Return-Path — O endereço de e-mail para o qual devoluções e reclamações de mensagem devem serenviadas. "Return-Path" às vezes é chamado de "envelope de", "remetente do envelope" ou "E-MAILDE".

15

Page 23: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorFormato de e-mail e Amazon SES

Note

Quando você usar o Amazon SES, recomendamos que sempre defina o parâmetro "Return-Path", para que possa estar ciente de devoluções e tomar a ação corretiva se ocorrerem.

Para associar facilmente uma mensagem devolvida ao destinatário pretendido, você pode usar VariableEnvelope Return Path (VERP). Com VERP, você define um "Return-Path" diferente para cada destinatário,de modo que, se a mensagem voltar, você saberá automaticamente qual destinatário a devolveu, em vezde precisar abrir a mensagem de devolução e analisá-la.

Corpo do e-mailO corpo do e-mail contém o texto da mensagem. O corpo pode ser enviado nos seguintes formatos:

• HTML — Se o cliente de e-mail do destinatário conseguir interpretar HTML, o corpo poderá incluir textoformatado e hiperlinks

• Texto sem formatação — Se o cliente de e-mail do destinatário for baseado em texto, o corpo nãodeverá conter caracteres não imprimíveis.

• HTML e texto sem formatação — Quando você usa ambos os formatos para enviar o mesmo conteúdoem uma única mensagem, o cliente de e-mail do destinatário decide quais exibir, com base em seusrecursos.

Se você enviar uma mensagem de e-mail para um grande número de destinatários, faz sentido enviá-la emHTML e texto. Alguns destinatários terão clientes de e-mail habilitados para HTML, para que eles possamclicar em hiperlinks incorporados na mensagem. Os destinatários que usam clientes de e-mail com baseem texto precisarão incluir URLs que eles podem copiar e abrir usando um navegador da Web.

Informações de e-mail que você precisa fornecer ao AmazonSESQuando você envia um e-mail com o Amazon SES, as informações de e-mail que precisa fornecerdependem de como o Amazon SES é chamado. Você pode fornecer uma quantidade mínima deinformações e deixar o Amazon SES cuidar de toda a formatação. Ou, se você quiser fazer algo maisavançado, como enviar um anexo, poderá fornecer a mensagem bruta. As seções a seguir analisam oque você precisa fornecer quando envia um e-mail usando a API do Amazon SES, a interface SMTP doAmazon SES ou o console do Amazon SES.

API do Amazon SES

Se você chamar a API do Amazon SES diretamente, chamará a API SendEmail ou SendRawEmail. Aquantidade de informações necessárias depende da API que você chamar.

• A SendEmail API requer que o usuário forneça somente um endereço de origem, endereçode destino, assunto da mensagem e um corpo da mensagem. Opcionalmente, você podefornecer endereços "Responder para". Quando você chamar essa API, o Amazon SES montaráautomaticamente uma mensagem de e-mail Multipurpose Internet Mail Extensions (MIME) de váriaspartes adequadamente formatada otimizada para a exibição pelo software cliente de e-mail. Para obtermais informações, consulte Envio de e-mail formatado usando a API do Amazon SES (p. 115).

• A API SendRawEmail fornece a flexibilidade de formatar e enviar sua própria mensagem de e-mailbruta ao especificar cabeçalhos, partes MIME e tipos de conteúdo. Normalmente, SendRawEmail éusado por usuários avançados. Você precisa fornecer o corpo da mensagem e todos os campos decabeçalho que são especificados como exigido na especificação do formato de mensagem de Internet(RFC 5322). Para obter mais informações, consulte Envio de e-mail bruto usando a API do AmazonSES (p. 115).

16

Page 24: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConceitos básicos

Se você usar um SDK da AWS para chamar a API do Amazon SES, fornecerá as informações listadasacima para as funções correspondentes (por exemplo, SendEmail e SendRawEmail para Java).

Para obter mais informações sobre envio de e-mail usando a API do Amazon SES, consulte Uso do API doAmazon SES para enviar e-mail (p. 114).

Amazon SESInterface SMTP

Quando você acessar o Amazon SES por meio da interface SMTP, seu aplicativo do cliente SMTPmontará a mensagem, de forma que as informações que você precisa fornecer dependerão do aplicativoque você estiver usando. No mínimo, a troca de SMTP entre um cliente e um servidor requer um endereçode origem, um endereço de destino e os dados da mensagem. Se você estiver usando a interface SMTPe estiver com o encaminhamento de feedback ativado, suas devoluções, reclamações e notificaçõesde entrega serão enviadas para o endereço "MAIL FROM". Qualquer endereço "Reply-To" que vocêespecificar não será usado.

Para obter mais informações sobre envio de e-mail usando a interface SMTP do Amazon SES, consulteUso da interface SMTP do Amazon SES para enviar e-mail (p. 80).

Console do Amazon SES

Quando você enviar um e-mail usando o console do Amazon SES, a quantidade de informaçõesnecessárias depende de se você optou por enviar um e-mail formatado ou bruto.

• Para enviar um e-mail formatado, forneça somente um endereço de origem, endereço de destino,assunto da mensagem e um corpo da mensagem. O Amazon SES monta automaticamente umamensagem de e-mail MIME de várias partes adequadamente formatada otimizada para a exibição pelosoftware cliente de e-mail. Você também pode especificar uma um campo de resposta e um caminho deretorno.

• Para enviar um e-mail bruto, você fornece o endereço de origem, endereço de destino e o conteúdoda mensagem, que deve conter o corpo da mensagem e todos os campos de cabeçalho que sãoespecificados como exigido na especificação do formato de mensagem de Internet (RFC 5322).

Conceitos básicos do envio de e-mail com oAmazon SES

Este tutorial de conceitos básicos fornece instruções passo a passo para configurar o Amazon SimpleEmail Service (Amazon SES) e enviar um e-mail. Primeiro, revise as informações em Antes de começarcom o Amazon SES (p. 18). Em seguida, envie um e-mail de uma das seguintes formas.

Usar o console do Amazon SESUse esse método se quiser começar a enviar e-mails de teste por meio do Amazon SES com o mínimode configuração. Quando você estiver pronto para iniciar sua campanha de envio de e-mail de produção,use um dos outros métodos de envio e use o console do Amazon SES principalmente para monitorar suaatividade de envio.

Para iniciar este tutorial, acesse Enviar um e-mail usando o console do Amazon SES (p. 18).

Uso do Simple Mail Transfer Protocol (SMTP)Use este método se você desejar enviar e-mails por meio da interface SMTP do Amazon SES com ou semprogramação da seguinte forma:

17

Page 25: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de um SDK da AWS

• Ative um aplicativo para enviar e-mails por meio do Amazon SES usando uma linguagem deprogramação que suporte SMTP. Os exemplos estão disponíveis em C#, Java e PHP. Parainiciar este tutorial, acesse Enviar um e-mail acessando a interface SMTP do Amazon SESprogramaticamente (p. 20).

• Configure seu servidor de e-mail para encaminhar e-mails para o Amazon SES ou configure seu clientede e-mail ou pacote de software habilitado para SMTP para enviar e-mail por meio do Amazon SES. Osexemplos são fornecidos para os servidores de e-mail Postfix, Sendmail e Exim. Para iniciar este tutorial,acesse Configurar seu servidor de e-mail ou aplicativo existente habilitado para SMTP para enviar e-mails por meio do Amazon SES (p. 29).

Para obter informações introdutórias sobre ambos os métodos de envio de SMTP, consulte Enviar um e-mail por meio do Amazon SES usando SMTP (p. 19).

Uso de um SDK da AWSUse este método para chamar a API do Amazon SES usando bibliotecas que lidam com os detalhes dainterface de consulta do Amazon SES subjacente. Os exemplos são fornecidos em C#, Java, PHP, Rubye Python. Para iniciar este tutorial, acesse Enviar um e-mail por meio do Amazon SES usando um SDK daAWS (p. 30).

Antes de começar com o Amazon SESAntes de começar, você precisa configurar o Amazon SES. Se você enviar um e-mail usando o console doAmazon SES, a interface SMTP ou a API do Amazon SES, precisará:

• Cadastrar-se na AWS – antes de usar oAmazon SES ou outros serviços da AWS, você precisa criar umaconta da AWS. Para obter mais informações, consulte Cadastrando-se na AWS (p. 47).

• Verificar seu endereço de e-mail ou domínio — para enviar e-mails usando o Amazon SES, você sempreprecisa verificar o endereço "From" para mostrar que você é proprietário. Se você estiver na sandbox,também precisará verificar seus endereços "To". Você pode verificar endereços de e-mail ou domíniosinteiros. Para obter mais informações, consulte Verificar identidades no Amazon SES (p. 47).

Esta lista contém as tarefas de configuração obrigatórias para todos os métodos de envio de e-mail.Tarefas de configuração adicionais que são específicas para o método de envio de e-mail são fornecidasna seção de conceitos básicos correspondente. Para ver uma lista completa de todas as tarefas deconfiguração, consulte Configurar e-mails com o Amazon SES (p. 46).

Enviar um e-mail usando o console do Amazon SESA maneira mais fácil de enviar um e-mail com o Amazon SES é usar o console do Amazon SES. Comoo console requer a inserção manual das informações, você normalmente só o utiliza para enviar e-mailsde teste. Depois de começar a usar o Amazon SES, você provavelmente enviará seus e-mails usando ainterface SMTP ou a API do Amazon SES, mas o console é útil para o monitoramento de sua atividade deenvio.

Important

Neste tutorial de conceitos básicos, você envia um e-mail para si mesmo, para que possa verificarse o recebeu. Para fazer mais experimentos ou testes de carga, use o simulador de caixa postalAmazon SES. Os e-mails enviados ao simulador de caixa postal não contam para sua cota deenvio nem para suas taxas de devoluções e reclamações. Para obter mais informações, consulteTeste de envio de e-mail no Amazon SES (p. 187).

Antes de seguir estas etapas, verifique as instruções de configuração em Antes de começar com oAmazon SES (p. 18).

18

Page 26: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

Para enviar uma mensagem de e-mail a partir do console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

Note

Se você ainda não estiver conectado na sua conta da AWS, este link o levará a uma páginade login. Depois de fazer login, você será direcionado para o console do Amazon SES.

2. No painel de navegação no lado esquerdo do console do Amazon SES, em Identity Management,escolha Email Addresses para visualizar o endereço de e-mail que você verificou em Verificarendereços de e-mail no Amazon SES (p. 47).

3. Na lista de identidades, marque a caixa próxima ao endereço de e-mail que você verificou.4. Escolha Send a Test Email.5. Para Send Test Email, escolha Email Format. As duas opções são as seguintes:

• Formatted — Esta é a opção mais simples. Escolha essa opção se você simplesmente desejadigitar o texto da sua mensagem na caixa de texto Body. Quando você envia o e-mail, o AmazonSES coloca o texto em formato de e-mail.

• Raw — Escolha esta opção se você deseja enviar uma mensagem mais complexa, como umamensagem que inclui HTML ou um anexo. Devido a essa flexibilidade, você precisa formatar amensagem, como descrito em Envio de e-mail bruto usando a API do Amazon SES (p. 115), ecolar toda a mensagem formatada, incluindo os cabeçalhos, na caixa de texto Body. Você podeusar o exemplo a seguir, que contém HTML, para enviar um e-mail de teste usando o formato Raw.Copie e cole essa mensagem inteira na caixa de texto Body. Certifique-se de que não haja umalinha em branco entre o cabeçalho MIME-Version e o cabeçalho Content-Type; uma linha embranco entre essas duas linhas faz com que o e-mail seja formatado como texto sem formatação emvez de HTML.

Subject: Amazon SES Raw Email TestMIME-Version: 1.0Content-Type: text/html <!DOCTYPE html><html><body><h1>This text should be large, because it is formatted as a header in HTML.</h1><p>Here is a formatted link: <a href="https://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html">Guia do desenvolvedor do Amazon Simple Email Service</a>.</p></body></html>

6. Para Send Test Email, preencha o restante dos campos. Se você ainda estiver na sandbox doAmazon SES, certifique-se de que o endereço no campo To seja um endereço de e-mail verificado.Para obter mais informações, consulte Verificar endereços de e-mail no Amazon SES (p. 47).

7. Escolha Send Test Email.8. Faça login no cliente de e-mail do endereço de destino da mensagem. Você encontrará a mensagem

que enviou.

Enviar um e-mail por meio do Amazon SES usandoSMTPPara enviar um e-mail usando a interface SMTP do Amazon SES, você pode usar uma linguagem deprogramação, um servidor de e-mail ou um aplicativo habilitado para SMTP. Antes de começar, reveja as

19

Page 27: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

instruções em Antes de começar com o Amazon SES (p. 18). Você também precisa obter as seguintesinformações adicionais:

• Seu nome de usuário e senha SMTP do Amazon SES, que permitem a conexão com o endpoint SMTPdo Amazon SES. Para obter seu nome de usuário e senha SMTP do Amazon SES, consulte Obtençãodas suas credenciais SMTP do Amazon SES (p. 81).

Important

Suas credenciais SMTP são diferentes das suas credenciais da AWS. Para obter maisinformações sobre credenciais, consulte Uso de credenciais com o Amazon SES (p. 398).

• O nome do host SMTP do Amazon SES, que é email-smtp.us-east-1.amazonaws.com (para a regiãous-east-1), email-smtp.us-west-2.amazonaws.com (para a região us-west-2) ou email-smtp.eu-west-1.amazonaws.com (para a região eu-west-1).

• O número da porta da interface SMTP do Amazon SES, que depende do método de conexão. Para obtermais informações, consulte Conexão ao endpoint SMTP do Amazon SES (p. 85).

Depois de obter suas credenciais SMTP, você pode se conectar ao endpoint SMTP do Amazon SES eenviar e-mails. Este tutorial de conceitos básicos mostra como enviar e-mails por meio da interface SMTPdo Amazon SES usando os seguintes métodos:

• Enviar um e-mail acessando a interface SMTP do Amazon SES programaticamente (p. 20)• Configurar seu servidor de e-mail ou aplicativo existente habilitado para SMTP para enviar e-mails por

meio do Amazon SES (p. 29)

Para obter mais informações sobre a interface SMTP do Amazon SES, consulte Uso da interface SMTP doAmazon SES para enviar e-mail (p. 80).

Enviar um e-mail acessando a interface SMTP do Amazon SESprogramaticamenteVocê pode acessar a interface SMTP do Amazon SES usando uma linguagem de programação habilitadapara SMTP. Você fornece o nome do host e o número da porta SMTP do Amazon SES junto com suascredenciais SMTP e, em seguida, use as funções SMTP genéricas da linguagem de programação paraenviar o e-mail.

Tópicos nesta seção:• Enviar um e-mail usando SMTP com C# (p. 20)• Envio de um e-mail usando SMTP com Java (p. 23)• Enviar um e-mail usando SMTP com PHP (p. 26)

Enviar um e-mail usando SMTP com C#

O procedimento a seguir mostra como usar o Microsoft Visual Studio para criar um aplicativo de consoleC# que envia um e-mail por meio do Amazon SES. Os procedimentos nesta seção aplicam-se ao VisualStudio 2017, mas o processo de criação de aplicativos de console C# é semelhante em todas as ediçõesdo Microsoft Visual Studio.

Antes de realizar o procedimento a seguir, conclua as tarefas de configuração descritas em Antesde começar com o Amazon SES (p. 18) e Enviar um e-mail por meio do Amazon SES usandoSMTP (p. 19).

20

Page 28: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

Important

Neste tutorial de conceitos básicos, você envia um e-mail para si mesmo, para que possa verificarse o recebeu. Para fazer mais experimentos ou testes de carga, use o simulador de caixa postalAmazon SES. Os e-mails enviados ao simulador de caixa postal não contam para sua cota deenvio nem para suas taxas de devoluções e reclamações. Para obter mais informações, consulteTeste de envio de e-mail no Amazon SES (p. 187).

Para enviar um e-mail usando a interface SMTP do Amazon SES com o C#

1. Crie um projeto de console no Visual Studio realizando as seguintes etapas:

a. Abra o Microsoft Visual Studio.b. No menu File, escolha New, Project.c. Na janela New Project, no painel esquerdo, expanda Installed, expanda Templates e, em seguida,

expanda Visual C#.d. Em Visual C#, escolha Windows Classic Desktop.e. No menu na parte superior da janela, escolha .NET Framework 4.5, conforme mostrado na

imagem a seguir.

Note

Você pode selecionar uma versão posterior do .NET Framework, se necessário.f. Escolha Console App (.NET Framework).g. No campo Name, digite AmazonSESSample.h. Escolha OK.

2. No seu projeto do Visual Studio, substitua todo o conteúdo de Program.cs pelo seguinte código:

using System;using System.Net;using System.Net.Mail;

namespace AmazonSESSample{ class Program { static void Main(string[] args) { // Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. String FROM = "[email protected]"; String FROMNAME = "Sender Name";

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. String TO = "[email protected]";

// Replace smtp_username with your Amazon SES SMTP user name.

21

Page 29: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

String SMTP_USERNAME = "smtp_username";

// Replace smtp_password with your Amazon SES SMTP user name. String SMTP_PASSWORD = "smtp_password";

// (Optional) the name of a configuration set to use for this message. // If you comment out this line, you also need to remove or comment out // the "X-SES-CONFIGURATION-SET" header below. String CONFIGSET = "ConfigSet";

// If you're using Amazon SES in a region other than Oeste dos EUA (Oregon), // replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP // endpoint in the appropriate AWS Region. String HOST = "email-smtp.us-west-2.amazonaws.com";

// The port you will connect to on the Amazon SES SMTP endpoint. We // are choosing port 587 because we will use STARTTLS to encrypt // the connection. int PORT = 587;

// The subject line of the email String SUBJECT = "Amazon SES test (SMTP interface accessed using C#)";

// The body of the email String BODY = "<h1>Amazon SES Test</h1>" + "<p>This email was sent through the " + "<a href='https://aws.amazon.com/ses'>Amazon SES</a> SMTP interface " + "using the .NET System.Net.Mail library.</p>";

// Create and build a new MailMessage object MailMessage message = new MailMessage(); message.IsBodyHtml = true; message.From = new MailAddress(FROM, FROMNAME); message.To.Add(new MailAddress(TO)); message.Subject = SUBJECT; message.Body = BODY; // Comment or delete the next line if you are not using a configuration set message.Headers.Add("X-SES-CONFIGURATION-SET", CONFIGSET);

using (var client = new System.Net.Mail.SmtpClient(HOST, PORT)) { // Pass SMTP credentials client.Credentials = new NetworkCredential(SMTP_USERNAME, SMTP_PASSWORD);

// Enable SSL encryption client.EnableSsl = true;

// Try to send the message. Show status in console. try { Console.WriteLine("Attempting to send email..."); client.Send(message); Console.WriteLine("Email sent!"); } catch (Exception ex) { Console.WriteLine("The email was not sent."); Console.WriteLine("Error message: " + ex.Message); } } } }

22

Page 30: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

}

3. Em Program.cs, substitua os seguintes endereços de e-mail por seus próprios valores:

Important

Os endereços de e-mail diferenciam maiúsculas de minúsculas. Certifique-se de que osendereços sejam exatamente os mesmos que você verificou.

[email protected] — Substitua pelo seu endereço de e-mail "From". Você deve verificaresse endereço antes de executar esse programa. Para obter mais informações, consulte Verificaridentidades no Amazon SES (p. 47).

[email protected] — Substitua pelo seu endereço de e-mail "To". Se sua conta aindaestiver na sandbox, você precisará verificar esse endereço antes de usá-lo. Para obter maisinformações, consulte Sair da sandbox do Amazon SES (p. 73).

4. Em Program.cs, substitua as seguintes credenciais SMTP pelos valores obtidos em Obtenção dassuas credenciais SMTP do Amazon SES (p. 81):

Important

Suas credenciais SMTP são diferentes das suas credenciais da AWS. Para obter maisinformações sobre credenciais, consulte Uso de credenciais com o Amazon SES (p. 398).

• YOUR_SMTP_USERNAME — Substitua pelo seu nome de usuário SMTP. Observe que suacredencial de nome de usuário SMTP é uma string de 20 caracteres de letras e números, e não umnome inteligível.

• YOUR_SMTP_PASSWORD — Substitua pela sua senha SMTP.5. (Opcional) Se quiser usar um endpoint SMTP do Amazon SES em uma região diferente de Oeste dos

EUA (Oregon), altere o valor da variável HOST para o endpoint que deseja usar. Para obter uma listade URLs de endpoint SMTP para as regiões da AWS onde o Amazon SES está disponível, consulteAmazon Simple Email Service (Amazon SES) em AWS General Reference.

6. (Opcional) Se você quiser usar um conjunto de configurações ao enviar esse e-mail, altere o valor davariável CONFIGSET pelo nome do conjunto de configurações. Para obter mais informações sobre osconjuntos de configurações, consulte Usar conjuntos de configurações do Amazon SES (p. 244).

7. Salvar Program.cs.8. Para construir o projeto, escolha Build e, em seguida, escolha Build Solution.9. Para executar o programa, escolha Debug e escolha Start Debugging.10. Revise a saída. Se o e-mail foi enviado com êxito, o console exibirá "Email sent!"; do contrário, ele

exibirá uma mensagem de erro.11. Entre no cliente de e-mail do endereço de destinatário. Você encontrará a mensagem que enviou.

Envio de um e-mail usando SMTP com Java

Este exemplo usa Eclipse IDE e a API JavaMail para enviar e-mail pelo Amazon SES usando a interfaceSMTP.

Antes de realizar o procedimento a seguir, conclua as tarefas de configuração descritas em Antesde começar com o Amazon SES (p. 18) e Enviar um e-mail por meio do Amazon SES usandoSMTP (p. 19).

Important

Neste tutorial de conceitos básicos, você envia um e-mail para si mesmo, para que possa verificarse o recebeu. Para fazer mais experimentos ou testes de carga, use o simulador de caixa postalAmazon SES. Os e-mails enviados ao simulador de caixa postal não contam para sua cota de

23

Page 31: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

envio nem para suas taxas de devoluções e reclamações. Para obter mais informações, consulteTeste de envio de e-mail no Amazon SES (p. 187).

Para enviar um e-mail usando a interface SMTP do Amazon SES com Java

1. Em um navegador da web, vá para a página do JavaMail Github. Em Downloads, escolhajavax.mail.jar para fazer download da versão mais recente do JavaMail.

Important

Este tutorial requer JavaMail versão 1.5 ou posterior. Esses procedimentos foram testadosusando o JavaMail versão 1.6.1.

2. Crie um projeto no Eclipse realizando as seguintes etapas:

a. Inicie o Eclipse.b. No Eclipse, escolha File, New e Java Project.c. Na caixa de diálogo Create a Java Project, digite o nome do projeto e escolha Next.d. Na caixa de diálogo Java Settings, escolha a guia Libraries.e. Escolha Add External JARs.f. Procure a pasta em que você baixou JavaMail. Escolha o arquivo javax.mail.jar e Open.g. Na caixa de diálogo Java Settings, escolha Finish.

3. No Eclipse, na janela Package Explorer, expanda seu projeto.4. No seu projeto, clique com o botão direito do mouse no diretório src, escolha New e Class.5. Na caixa de diálogo New Java Class, no campo Name, digite AmazonSESSample e escolha Finish.6. Substitua o todo o conteúdo de AmazonSESSample.java pelo seguinte código:

import java.util.Properties;

import javax.mail.Message;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;

public class AmazonSESSample {

// Replace [email protected] with your "From" address. // This address must be verified. static final String FROM = "[email protected]"; static final String FROMNAME = "Sender Name"; // Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. static final String TO = "[email protected]"; // Replace smtp_username with your Amazon SES SMTP user name. static final String SMTP_USERNAME = "smtp_username"; // Replace smtp_password with your Amazon SES SMTP password. static final String SMTP_PASSWORD = "smtp_password"; // The name of the Configuration Set to use for this message. // If you comment out or remove this variable, you will also need to // comment out or remove the header below. static final String CONFIGSET = "ConfigSet"; // Amazon SES SMTP host name. This example uses the Oeste dos EUA (Oregon) region. // See https://docs.aws.amazon.com/ses/latest/DeveloperGuide/regions.html#region-endpoints

24

Page 32: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

// for more information. static final String HOST = "email-smtp.us-west-2.amazonaws.com"; // The port you will connect to on the Amazon SES SMTP endpoint. static final int PORT = 587; static final String SUBJECT = "Amazon SES test (SMTP interface accessed using Java)"; static final String BODY = String.join( System.getProperty("line.separator"), "<h1>Amazon SES SMTP Email Test</h1>", "<p>This email was sent with Amazon SES using the ", "<a href='https://github.com/javaee/javamail'>Javamail Package</a>", " for <a href='https://www.java.com'>Java</a>." );

public static void main(String[] args) throws Exception {

// Create a Properties object to contain connection configuration information. Properties props = System.getProperties(); props.put("mail.transport.protocol", "smtp"); props.put("mail.smtp.port", PORT); props.put("mail.smtp.starttls.enable", "true"); props.put("mail.smtp.auth", "true");

// Create a Session object to represent a mail session with the specified properties. Session session = Session.getDefaultInstance(props);

// Create a message with the specified information. MimeMessage msg = new MimeMessage(session); msg.setFrom(new InternetAddress(FROM,FROMNAME)); msg.setRecipient(Message.RecipientType.TO, new InternetAddress(TO)); msg.setSubject(SUBJECT); msg.setContent(BODY,"text/html"); // Add a configuration set header. Comment or delete the // next line if you are not using a configuration set msg.setHeader("X-SES-CONFIGURATION-SET", CONFIGSET); // Create a transport. Transport transport = session.getTransport(); // Send the message. try { System.out.println("Sending..."); // Connect to Amazon SES using the SMTP username and password you specified above. transport.connect(HOST, SMTP_USERNAME, SMTP_PASSWORD); // Send the email. transport.sendMessage(msg, msg.getAllRecipients()); System.out.println("Email sent!"); } catch (Exception ex) { System.out.println("The email was not sent."); System.out.println("Error message: " + ex.getMessage()); } finally { // Close and terminate the connection. transport.close(); }

25

Page 33: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

}}

7. Em AmazonSESSample.java, substitua os seguintes endereços de e-mail por seus próprios valores:

Important

Os endereços de e-mail diferenciam maiúsculas de minúsculas. Certifique-se de que osendereços sejam exatamente os mesmos que você verificou.

[email protected] — Substitua pelo seu endereço de e-mail "From". Você deve verificaresse endereço antes de executar esse programa. Para obter mais informações, consulte Verificaridentidades no Amazon SES (p. 47).

[email protected] — Substitua pelo seu endereço de e-mail "To". Se sua conta aindaestiver na sandbox, você precisará verificar esse endereço antes de usá-lo. Para obter maisinformações, consulte Sair da sandbox do Amazon SES (p. 73).

8. Em AmazonSESSample.java, substitua as seguintes credenciais SMTP pelos valores obtidos emObtenção das suas credenciais SMTP do Amazon SES (p. 81):

Important

Suas credenciais SMTP são diferentes das suas credenciais da AWS. Para obter maisinformações sobre credenciais, consulte Uso de credenciais com o Amazon SES (p. 398).

• YOUR_SMTP_USERNAME — Substitua pela sua credencial do nome do usuário SMTP. Observe quesua credencial de nome de usuário SMTP é uma string de 20 caracteres de letras e números, e nãoum nome inteligível.

• YOUR_SMTP_PASSWORD — Substitua pela sua senha SMTP.9. (Opcional) Se quiser usar um endpoint SMTP do Amazon SES em uma região da AWS diferente de

Oeste dos EUA (Oregon), altere o valor da variável HOST para o endpoint que deseja usar. Para obteruma lista de regiões onde o Amazon SES está disponível, consulte Amazon Simple Email Service(Amazon SES) no AWS General Reference.

10. (Opcional) Se você quiser usar um conjunto de configurações ao enviar esse e-mail, altere o valor davariável CONFIGSET pelo nome do conjunto de configurações. Para obter mais informações sobre osconjuntos de configurações, consulte Usar conjuntos de configurações do Amazon SES (p. 244).

11. Salvar AmazonSESSample.java.12. Para criar o projeto, escolha Project e, em seguida, escolha Build Project. (Se essa opção estiver

desativada, você pode ter a criação automática ativada.)13. Para iniciar o programa e enviar o e-mail, escolha Run e Run novamente.14. Revise a saída. Se o e-mail foi enviado com êxito, o console exibirá "Email sent!"; do contrário, ele

exibirá uma mensagem de erro.15. Entre no cliente de e-mail do endereço de destinatário. Você encontrará a mensagem que enviou.

Enviar um e-mail usando SMTP com PHP

Este exemplo usa a classe PHPMailer para enviar e-mail pelo Amazon SES usando a interface SMTP.

Important

Neste tutorial, você enviará um e-mail para si mesmo, para que possa verificar se o receberá.Para fazer mais experimentos ou testes de carga, use o simulador de caixa postal Amazon SES.Os e-mails enviados ao simulador de caixa postal não contam para sua cota de envio nem parasuas taxas de devoluções e reclamações. Para obter mais informações, consulte Teste de enviode e-mail no Amazon SES (p. 187).

26

Page 34: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

Pré-requisitos

Antes de começar, execute as seguintes tarefas:

• Verifique seu endereço de e-mail com o Amazon SES — Antes de enviar e-mails com o Amazon SES,é necessário verificar se você é o proprietário do endereço de e-mail do remetente. Se sua conta aindaestiver na sandbox do Amazon SES, você também deverá verificar o endereço de e-mail do destinatário.A maneira mais fácil de verificar os endereços de e-mail é usando o console do Amazon SES. Para obtermais informações, consulte Verificar endereços de e-mail no Amazon SES (p. 47).

• Obtenha suas credenciais SMTP — Você precisa de um nome de usuário e uma senha do SMTPdo Amazon SES para acessar a interface SMTP do Amazon SES. Suas credenciais SMTP não sãoas mesmas que suas credenciais da AWS. Você pode encontrar suas credenciais SMTP acessandoa página Configurações de SMTP do console do Amazon SES. Para obter mais informações sobrecredenciais SMTP, consulte Obtenção das suas credenciais SMTP do Amazon SES (p. 81).

• Instale o PHP — O PHP está disponível em http://php.net/downloads.php. Depois de instalar o PHP,adicione o caminho para o PHP nas suas variáveis de ambiente, de forma que possa executar o PHP apartir de qualquer prompt de comando.

• Instale o gerenciador de dependências Composer — O gerenciador de dependências Composerpermitirá que você faça download e instale a classe PHPMailer e suas dependências. Para instalar oComposer, siga as instruções de instalação em https://getcomposer.org/download.

• Instale a classe PHPMailer— depois de instalar o Composer, execute o comando a seguir para instalar oPHPMailer:

path/to/composer require phpmailer/phpmailer

No comando anterior, substitua path/to/ pelo caminho onde você instalou o Composer.

Procedimento

O procedimento a seguir mostra como enviar um e-mail pelo Amazon SES com PHP.

Para enviar um e-mail usando a interface SMTP do Amazon SES com o PHP

1. Crie um arquivo chamado amazon-ses-smtp-sample.php. Abra o arquivo com um editor de textoe cole o seguinte código:

<?php

// Import PHPMailer classes into the global namespace// These must be at the top of your script, not inside a functionuse PHPMailer\PHPMailer\PHPMailer;use PHPMailer\PHPMailer\Exception;

// If necessary, modify the path in the require statement below to refer to the// location of your Composer autoload.php file.require 'vendor/autoload.php';

// Replace [email protected] with your "From" address.// This address must be verified with Amazon SES.$sender = '[email protected]';$senderName = 'Sender Name';

// Replace [email protected] with a "To" address. If your account// is still in the sandbox, this address must be verified.$recipient = '[email protected]';

// Replace smtp_username with your Amazon SES SMTP user name.$usernameSmtp = 'smtp_username';

27

Page 35: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

// Replace smtp_password with your Amazon SES SMTP password.$passwordSmtp = 'smtp_password';

// Specify a configuration set. If you do not want to use a configuration// set, comment or remove the next line.$configurationSet = 'ConfigSet';

// If you're using Amazon SES in a region other than US West (Oregon),// replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP// endpoint in the appropriate region.$host = 'email-smtp.us-west-2.amazonaws.com';$port = 587;

// The subject line of the email$subject = 'Amazon SES test (SMTP interface accessed using PHP)';

// The plain-text body of the email$bodyText = "Email Test\r\nThis email was sent through the Amazon SES SMTP interface using the PHPMailer class.";

// The HTML-formatted body of the email$bodyHtml = '<h1>Email Test</h1> <p>This email was sent through the <a href="https://aws.amazon.com/ses">Amazon SES</a> SMTP interface using the <a href="https://github.com/PHPMailer/PHPMailer"> PHPMailer</a> class.</p>';

$mail = new PHPMailer(true);

try { // Specify the SMTP settings. $mail->isSMTP(); $mail->setFrom($sender, $senderName); $mail->Username = $usernameSmtp; $mail->Password = $passwordSmtp; $mail->Host = $host; $mail->Port = $port; $mail->SMTPAuth = true; $mail->SMTPSecure = 'tls'; $mail->addCustomHeader('X-SES-CONFIGURATION-SET', $configurationSet);

// Specify the message recipients. $mail->addAddress($recipient); // You can also add CC, BCC, and additional To recipients here.

// Specify the content of the message. $mail->isHTML(true); $mail->Subject = $subject; $mail->Body = $bodyHtml; $mail->AltBody = $bodyText; $mail->Send(); echo "Email sent!" , PHP_EOL;} catch (phpmailerException $e) { echo "An error occurred. {$e->errorMessage()}", PHP_EOL; //Catch errors from PHPMailer.} catch (Exception $e) { echo "Email not sent. {$mail->ErrorInfo}", PHP_EOL; //Catch errors from Amazon SES.}

?>

2. Em amazon-ses-smtp-sample.php, substitua o seguinte pelos seus próprios valores:

28

Page 36: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando SMTP

[email protected] — Substitua por um endereço de e-mail que você tenha verificado com oAmazon SES. Para obter mais informações, consulte Verificar identidades (p. 47). Os endereçosde e-mail no Amazon SES diferenciam maiúsculas de minúsculas. Certifique-se de que o endereçoinformado seja exatamente o mesmo que você verificou.

[email protected] — Substitua pelo endereço do destinatário. Se sua conta ainda estiverna sandbox, você precisará verificar esse endereço antes de usá-lo. Para obter mais informações,consulte Sair da sandbox do Amazon SES (p. 73). Certifique-se de que o endereço informadoseja exatamente o mesmo que você verificou.

• smtp_username — Substitua pela sua credencial de nome de usuário SMTP obtida na páginaConfigurações de SMTP do console do Amazon SES. Essa não é igual ao ID de chave de acessoda AWS. Observe que sua credencial de nome de usuário SMTP é uma string de 20 caracteres deletras e números, e não um nome inteligível.

• smtp_password — Substitua pela sua senha SMTP obtida na página Configurações de SMTP doconsole do Amazon SES. Essa não é igual à chave de acesso secreta da AWS.

• (Opcional) ConfigSet —Se você quiser usar um conjunto de configurações ao enviar esse e-mail,substitua esse valor pelo nome do conjunto de configurações. Para obter mais informações sobre osconjuntos de configurações, consulte Usar conjuntos de configurações do Amazon SES (p. 244).

• (Opcional) email-smtp.us-west-2.amazonaws.com — Se você quiser usar um endpoint SMTPdo Amazon SES em uma região diferente de Oeste dos EUA (Oregon), substitua pelo endpointSMTP do Amazon SES da região que você deseja usar. Para obter uma lista de URLs de endpointSMTP para as regiões da AWS onde o Amazon SES está disponível, consulte .Amazon SimpleEmail Service (Amazon SES) na AWS General Reference.

3. Salvar amazon-ses-smtp-sample.php.4. Para executar o programa, abra um prompt de comando no mesmo diretório de amazon-ses-smtp-

sample.php e, em seguida, digite php amazon-ses-smtp-sample.php.5. Revise a saída. Se o e-mail foi enviado com êxito, o console exibirá "Email sent!"; do contrário, ele

exibirá uma mensagem de erro.6. Entre no cliente de e-mail do endereço de destinatário. Você encontrará a mensagem que enviou.

Configurar seu servidor de e-mail ou aplicativo existentehabilitado para SMTP para enviar e-mails por meio do AmazonSESVocê pode configurar seu servidor de e-mail, cliente de e-mail ou pacote de software de envio de e-mailpara enviar mensagens por meio do Amazon SES sem qualquer programação.

Primeiro, leia Enviar um e-mail por meio do Amazon SES usando SMTP (p. 19). Em seguida, reveja umdos seguintes tópicos, que mostram como configurar um servidor de e-mail para encaminhar e-mails aoAmazon SES:

• Configuração do Postfix (p. 92)• Integração do Amazon SES com Sendmail (p. 96)• Integração do Amazon SES com o Exim (p. 106)

29

Page 37: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

Enviar um e-mail por meio do Amazon SES usandoum SDK da AWSPara enviar um e-mail usando a API do Amazon SES, você pode usar a interface de consulta diretamenteou pode usar um SDK da AWS para lidar com os detalhes de baixo nível, como montagem e análise desolicitações e respostas HTTP.

Antes de enviar um e-mail usando um AWS SDK, revise as instruções em Antes de começar com oAmazon SES (p. 18). Para concluir os tutoriais desta seção, você também precisa:

• Fazer download de um SDK da AWS — Faça download e instale o SDK da AWS. Para obter maisinformações, consulte Fazer download de um SDK da AWS (p. 66).

• Obtenha suas credenciais da AWS — Para acessar o Amazon SES programaticamente, você precisadas suas chaves de acesso do AWS. Para obter mais informações, consulte Obter suas chaves deacesso da AWS (p. 66).

• Crie um arquivo de credenciais compartilhadas — Siga os procedimentos em Criar um arquivo decredenciais compartilhadas (p. 30) para criar o arquivo de credenciais compartilhadas.

Quando você concluir os pré-requisitos listados acima, consulte Enviar programaticamente um e-mail peloAmazon SES usando um SDK da AWS (p. 31).

Criar um arquivo de credenciais compartilhadasO procedimento a seguir mostra como criar um arquivo de credenciais compartilhadas no diretório inicial.Para o código de amostra do SDK funcionar corretamente, você deve criar este arquivo.

1. Em um editor de texto, crie um novo arquivo. No arquivo, cole o código a seguir:

[default]aws_access_key_id = YOUR_AWS_ACCESS_KEY_IDaws_secret_access_key = YOUR_AWS_SECRET_ACCESS_KEY

2. No arquivo de texto recém-criado, substitua YOUR_AWS_ACCESS_KEY pelo seu ID da chave de acessoda AWS exclusivo e substitua YOUR_AWS_SECRET_ACCESS_KEY pela chave de acesso secreta daAWS exclusiva.

3. Salve o arquivo. A tabela a seguir mostra a localização correta e o nome do arquivo para o seusistema operacional.

Se você estiver usando... Salve o arquivo...

Windows C:\Users\<yourUserName>\.aws\credentials

Linux, macOS, or Unix ~/.aws/credentials

Important

Não inclua uma extensão de arquivo ao salvar o arquivo de credenciais.

30

Page 38: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

Enviar programaticamente um e-mail pelo Amazon SES usandoum SDK da AWSVocê pode usar um SDK da AWS para enviar e-mails pelo Amazon SES. Os AWS SDKs estão disponíveispara várias linguagens de programação. Para obter mais informações, consulte Ferramentas para aAmazon Web Services.

Note

Se você ainda não tiver feito isso, preencha os pré-requisitos listados em Enviar um e-mail pormeio do Amazon SES usando um SDK da AWS (p. 30) antes de tentar concluir o tutoriaisnesta seção.

É possível encontrar exemplos de código adicionais em Amazon SES Exemplos de código (p. 409).

Tópicos nesta seção:• Enviar um e-mail usando o AWS SDK para .NET (p. 31)• Enviar um e-mail usando o AWS SDK for Java (p. 34)• Enviar um e-mail usando o AWS SDK para PHP (p. 37)• Enviar um e-mail usando o AWS SDK para Ruby (p. 39)• Enviar um e-mail usando o AWS SDK for Python (Boto) (p. 42)

Enviar um e-mail usando o AWS SDK para .NETO procedimento a seguir mostra como enviar um e-mail por meio do Amazon SES usando o Visual Studioe o AWS SDK para .NET.

Esta solução foi testada com os seguintes componentes:

• Microsoft Visual Studio Community 2017, versão 15.4.0.• Microsoft .NET Framework versão 4.6.1.• Pacote AWSSDK.Core (versão 3.3.19), instalado usando NuGet.• Pacote AWSSDK.SimpleEmail (versão 3.3.6.1), instalado usando NuGet.

Note

Neste tutorial de conceitos básicos, você envia um e-mail para si mesmo, para que possa verificarse o recebeu. Para fazer mais experimentos ou testes de carga, use o simulador de caixa postalAmazon SES. Os e-mails enviados ao simulador de caixa postal não contam para sua cota deenvio nem para suas taxas de devoluções e reclamações. Para obter mais informações, consulteTeste de envio de e-mail no Amazon SES (p. 187).

Pré-requisitos

Antes de começar, execute as seguintes tarefas:

• Verifique seu endereço de e-mail com o Amazon SES — Antes de enviar e-mails com o Amazon SES,é necessário verificar se você é o proprietário do endereço de e-mail do remetente. Se sua conta aindaestiver na sandbox do Amazon SES, você também deverá verificar o endereço de e-mail do destinatário.A maneira mais fácil de verificar os endereços de e-mail é usando o console do Amazon SES. Para obtermais informações, consulte Verificar endereços de e-mail no Amazon SES (p. 47).

• Obtenha suas credenciais da AWS — Você precisa de um ID de chave de acesso da AWS e da chavede acesso secreta da AWS para acessar o Amazon SES usando um SDK. Você pode encontrar suascredenciais na página Credenciais de segurança do Console de gerenciamento da AWS. Para obtermais informações sobre credenciais, consulte Uso de credenciais com o Amazon SES (p. 398).

31

Page 39: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

• Instale o Visual Studio — O Visual Studio está disponível em https://www.visualstudio.com/.• Criar um arquivo de credenciais compartilhadas — Para que o código de exemplo nesta seção funcione

corretamente, você deve criar um arquivo de credenciais compartilhadas. Para obter mais informações,consulte Criar um arquivo de credenciais compartilhadas (p. 30).

Procedimento

O procedimento a seguir mostra como enviar um e-mail por meio do Amazon SES usando o AWS SDKpara .NET.

Para enviar um e-mail usando o AWS SDK para .NET

1. Crie um novo projeto realizando as seguintes etapas:

a. Inicie Visual Studio.b. No menu File, escolha New, Project.c. Na janela New Project, no painel esquerdo, expanda Installed e expanda Visual C#.d. No painel à direita, escolha Console App (.NET Framework).e. Em Name, digite AmazonSESSample e selecione OK.

2. Use o NuGet para incluir pacotes do Amazon SES na sua solução ao concluir as etapas a seguir:

a. No painel Solution Explorer, clique com o botão direito no projeto e, em seguida, selecioneManage NuGet Packages.

b. Na guia NuGet: AmazonSESSample, escolha Browse.c. Na caixa de pesquisa, digite AWSSDK.SimpleEmail.d. Escolha o pacote AWSSDK.SimpleEmail e, a seguir, Install.e. Na janela Preview Changes, escolha OK.

3. Na guia Program.cs, cole o seguinte código:

using Amazon;using System;using System.Collections.Generic;using Amazon.SimpleEmail;using Amazon.SimpleEmail.Model;

namespace AmazonSESSample { class Program { // Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. static readonly string senderAddress = "[email protected]";

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. static readonly string receiverAddress = "[email protected]";

// The configuration set to use for this email. If you do not want to use a // configuration set, comment out the following property and the // ConfigurationSetName = configSet argument below. static readonly string configSet = "ConfigSet";

// The subject line for the email. static readonly string subject = "Amazon SES test (AWS SDK para .NET)";

// The email body for recipients with non-HTML email clients. static readonly string textBody = "Amazon SES Test (.NET)\r\n" + "This email was sent through Amazon SES "

32

Page 40: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

+ "using the AWS SDK para .NET."; // The HTML body of the email. static readonly string htmlBody = @"<html><head></head><body> <h1>Amazon SES Test (AWS SDK para .NET)</h1> <p>This email was sent with <a href='https://aws.amazon.com/ses/'>Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-net/'> AWS SDK para .NET</a>.</p></body></html>";

static void Main(string[] args) { // Replace USWest2 with the AWS Region you're using for Amazon SES. // Acceptable values are EUWest1, USEast1, and USWest2. using (var client = new AmazonSimpleEmailServiceClient(RegionEndpoint.USWest2)) { var sendRequest = new SendEmailRequest { Source = senderAddress, Destination = new Destination { ToAddresses = new List<string> { receiverAddress } }, Message = new Message { Subject = new Content(subject), Body = new Body { Html = new Content { Charset = "UTF-8", Data = htmlBody }, Text = new Content { Charset = "UTF-8", Data = textBody } } }, // If you are not using a configuration set, comment // or remove the following line ConfigurationSetName = configSet }; try { Console.WriteLine("Sending email using Amazon SES..."); var response = client.SendEmail(sendRequest); Console.WriteLine("The email was sent successfully."); } catch (Exception ex) { Console.WriteLine("The email was not sent."); Console.WriteLine("Error message: " + ex.Message);

} }

Console.Write("Press any key to continue..."); Console.ReadKey();

33

Page 41: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

} }}

4. Na caixa de editor, faça o seguinte:

• Substitua [email protected] pelo endereço de e-mail do remetente "From:". Esseendereço deve ser verificado. Para obter mais informações, consulte the section called “Verificaridentidades” (p. 47).

• Substitua destinatá[email protected] pelo endereço "To:". Se sua conta ainda estiver nasandbox, esse endereço "To" também deverá ser verificado.

• Substitua ConfigSet pelo nome do conjunto de configurações para usar ao enviar esse e-mail.• Substitua USWest2 pelo nome do endpoint da região da AWS que você usa para enviar e-mails

com o Amazon SES. Para obter uma lista de regiões onde o Amazon SES está disponível, consulteAmazon Simple Email Service (Amazon SES) no AWS General Reference.

Quando terminar, salve Program.cs.5. Crie e execute o aplicativo concluindo as seguintes etapas:

a. No menu Build, escolha Build Solution.b. No menu Debug, escolha Start Debugging. Uma janela do console será exibida.

6. Analise a saída do console. Se o e-mail tiver sido enviado com sucesso, o console exibirá "Theemail was sent successfully."

7. Se o e-mail tiver sido enviado com êxito, acesse o cliente de e-mail do endereço do destinatário. Vocêencontrará a mensagem que enviou.

Enviar um e-mail usando o AWS SDK for JavaO procedimento a seguir mostra como usar o Eclipse IDE para desenvolvedores Java EE e o AWS Toolkitfor Eclipse para criar um projeto de SDK da AWS e modificar o código Java para enviar um e-mail peloAmazon SES.

Important

Neste tutorial de conceitos básicos, você envia um e-mail para si mesmo, para que possa verificarse o recebeu. Para fazer mais experimentos ou testes de carga, use o simulador de caixa postalAmazon SES. Os e-mails enviados ao simulador de caixa postal não contam para sua cota deenvio nem para suas taxas de devoluções e reclamações. Para obter mais informações, consulteTeste de envio de e-mail no Amazon SES (p. 187).

Pré-requisitos

Antes de começar, execute as seguintes tarefas:

• Verifique seu endereço de e-mail com o Amazon SES — Antes de enviar e-mails com o Amazon SES,é necessário verificar se você é o proprietário do endereço de e-mail do remetente. Se sua conta aindaestiver na sandbox do Amazon SES, você também deverá verificar o endereço de e-mail do destinatário.A maneira mais fácil de verificar os endereços de e-mail é usando o console do Amazon SES. Para obtermais informações, consulte Verificar endereços de e-mail no Amazon SES (p. 47).

• Obtenha suas credenciais da AWS — Você precisa de um ID de chave de acesso da AWS e da chavede acesso secreta da AWS para acessar o Amazon SES usando um SDK. Você pode encontrar suascredenciais na página Credenciais de segurança no Console de gerenciamento da AWS. Para obtermais informações sobre credenciais, consulte Uso de credenciais com o Amazon SES (p. 398).

• Instale o Eclipse — O Eclipse está disponível em https://www.eclipse.org/downloads. O código nestetutorial foi testado com o Eclipse Neon.3 (versão 4.6.3), executando a versão 1.8 do Java RuntimeEnvironment.

34

Page 42: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

• Instale o AWS Toolkit for Eclipse — As instruções para adicionar o AWS Toolkit for Eclipse à suainstalação do Eclipse estão disponíveis em https://aws.amazon.com/eclipse. O código neste tutorial foitestado com a versão 2.3.1 do AWS Toolkit for Eclipse.

• Criar um arquivo de credenciais compartilhadas — Para que o código de exemplo nesta seção funcionecorretamente, você deve criar um arquivo de credenciais compartilhadas. Para obter mais informações,consulte Criar um arquivo de credenciais compartilhadas (p. 30).

Procedimento

O procedimento a seguir mostra como enviar um e-mail por meio do Amazon SES usando o AWS SDK forJava.

Para enviar um e-mail usando o AWS SDK for Java

1. Crie um projeto Java da AWS no Eclipse realizando as seguintes etapas:

a. Inicie o Eclipse.b. No menu File, escolha New e Other. Na janela New, expanda a pasta AWS e escolha AWS Java

Project.c. Na caixa de diálogo New AWS Java Project, faça o seguinte:

i. Para Project name, digite um nome de projeto.ii. Em AWS SDK for Java Samples, selecione Amazon Simple Email Service JavaMail Sample.iii. Escolha Finish.

2. No Eclipse, no painel Package Explorer, expanda o seu projeto.3. Em seu projeto, expanda a pasta src/main/java, expanda a pasta com.amazon.aws.samples e,

em seguida, clique duas vezes em AmazonSESSample.java.4. Substitua o todo o conteúdo de AmazonSESSample.java pelo seguinte código:

package com.amazonaws.samples;

import java.io.IOException;

import com.amazonaws.regions.Regions;import com.amazonaws.services.simpleemail.AmazonSimpleEmailService;import com.amazonaws.services.simpleemail.AmazonSimpleEmailServiceClientBuilder;import com.amazonaws.services.simpleemail.model.Body;import com.amazonaws.services.simpleemail.model.Content;import com.amazonaws.services.simpleemail.model.Destination;import com.amazonaws.services.simpleemail.model.Message;import com.amazonaws.services.simpleemail.model.SendEmailRequest;

public class AmazonSESSample {

// Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. static final String FROM = "[email protected]";

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. static final String TO = "[email protected]";

// The configuration set to use for this email. If you do not want to use a // configuration set, comment the following variable and the // .withConfigurationSetName(CONFIGSET); argument below. static final String CONFIGSET = "ConfigSet";

// The subject line for the email. static final String SUBJECT = "Amazon SES test (AWS SDK for Java)";

35

Page 43: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

// The HTML body for the email. static final String HTMLBODY = "<h1>Amazon SES test (AWS SDK for Java)</h1>" + "<p>This email was sent with <a href='https://aws.amazon.com/ses/'>" + "Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-java/'>" + "AWS SDK for Java</a>";

// The email body for recipients with non-HTML email clients. static final String TEXTBODY = "This email was sent through Amazon SES " + "using the AWS SDK for Java.";

public static void main(String[] args) throws IOException {

try { AmazonSimpleEmailService client = AmazonSimpleEmailServiceClientBuilder.standard() // Replace US_WEST_2 with the AWS Region you're using for // Amazon SES. .withRegion(Regions.US_WEST_2).build(); SendEmailRequest request = new SendEmailRequest() .withDestination( new Destination().withToAddresses(TO)) .withMessage(new Message() .withBody(new Body() .withHtml(new Content() .withCharset("UTF-8").withData(HTMLBODY)) .withText(new Content() .withCharset("UTF-8").withData(TEXTBODY))) .withSubject(new Content() .withCharset("UTF-8").withData(SUBJECT))) .withSource(FROM) // Comment or remove the next line if you are not using a // configuration set .withConfigurationSetName(CONFIGSET); client.sendEmail(request); System.out.println("Email sent!"); } catch (Exception ex) { System.out.println("The email was not sent. Error message: " + ex.getMessage()); } }}

5. Em AmazonSESSample.java, substitua o seguinte pelos seus próprios valores:

Important

Os endereços de e-mail diferenciam maiúsculas de minúsculas. Certifique-se de que osendereços sejam exatamente os mesmos que você verificou.

[email protected] — Substitua pelo seu endereço de e-mail "From". Você deve verificaresse endereço antes de executar esse programa. Para obter mais informações, consulte Verificaridentidades no Amazon SES (p. 47).

[email protected] — Substitua pelo seu endereço de e-mail "To". Se sua conta aindaestiver na sandbox, você precisará verificar esse endereço antes de usá-lo. Para obter maisinformações, consulte Sair da sandbox do Amazon SES (p. 73).

• (Opcional) us-west-2 — Se você deseja usar o Amazon SES em outra região que não seja aOeste dos EUA (Oregon), substitua pela região que você deseja usar. Para obter uma lista deregiões onde o Amazon SES está disponível, consulte Amazon Simple Email Service (Amazon SES)no AWS General Reference.

6. Salvar AmazonSESSample.java.7. Para criar o projeto, escolha Project e, em seguida, escolha Build Project.

36

Page 44: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

Note

Se essa opção estiver desativada, a criação automática talvez esteja ativada. Nesse caso,pule esta etapa.

8. Para iniciar o programa e enviar o e-mail, escolha Run e Run novamente.9. Analise a saída do painel do console no Eclipse. Se o e-mail foi enviado com êxito, o console exibirá

"Email sent!"; do contrário, ele exibirá uma mensagem de erro.10. Se o e-mail tiver sido enviado com êxito, acesse o cliente de e-mail do endereço do destinatário. Você

encontrará a mensagem que enviou.

Enviar um e-mail usando o AWS SDK para PHPEste tópico mostra como usar o AWS SDK para PHP para enviar um e-mail pelo Amazon SES.

Important

Neste tutorial, envie um e-mail para si mesmo, para que você possa verificar se você recebeu.Para fazer mais experimentos ou testes de carga, use o simulador de caixa postal Amazon SES.Os e-mails enviados ao simulador de caixa postal não contam para sua cota de envio nem parasuas taxas de devoluções e reclamações. Para obter mais informações, consulte Teste de enviode e-mail no Amazon SES (p. 187).

Pré-requisitos

Antes de começar, execute as seguintes tarefas:

• Verifique seu endereço de e-mail com o Amazon SES — Antes de enviar e-mails com o Amazon SES,é necessário verificar se você é o proprietário do endereço de e-mail do remetente. Se sua conta aindaestiver na sandbox do Amazon SES, você também deverá verificar o endereço de e-mail do destinatário.A maneira mais fácil de verificar os endereços de e-mail é usando o console do Amazon SES. Para obtermais informações, consulte Verificar endereços de e-mail no Amazon SES (p. 47).

• Obtenha suas credenciais da AWS — Você precisa de um ID de chave de acesso da AWS e da chavede acesso secreta da AWS para acessar o Amazon SES usando um SDK. Você pode encontrar suascredenciais na página Credenciais de segurança do Console de gerenciamento da AWS. Para obtermais informações sobre credenciais, consulte Uso de credenciais com o Amazon SES (p. 398).

• Instale o PHP — O PHP está disponível em http://php.net/downloads.php. Este tutorial requer PHPversão 5.5 ou superior. Depois de instalar o PHP, adicione o caminho para o PHP nas suas variáveis deambiente, de forma que possa executar o PHP a partir de qualquer prompt de comando. O código nestetutorial foi testado usando PHP 7.2.7.

• Instalar o AWS SDK para PHP versão 3 — Para ver instruções de download e instalação, consulte adocumentação do AWS SDK para PHP. O código neste tutorial foi testado com a versão 3.64.13 doSDK.

• Criar um arquivo de credenciais compartilhadas — Para que o código de exemplo nesta seção funcionecorretamente, você deve criar um arquivo de credenciais compartilhadas. Para obter mais informações,consulte Criar um arquivo de credenciais compartilhadas (p. 30).

Procedimento

O procedimento a seguir mostra como enviar um e-mail por meio do Amazon SES usando o AWS SDKpara PHP.

Para enviar e-mail pelo Amazon SES usando o AWS SDK para PHP

1. Em um editor de texto, crie um arquivo chamado amazon-ses-sample.php. Cole o seguinte código:

<?php

37

Page 45: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

// If necessary, modify the path in the require statement below to refer to the // location of your Composer autoload.php file.require 'vendor/autoload.php';

use Aws\Ses\SesClient;use Aws\Exception\AwsException;

// Create an SesClient. Change the value of the region parameter if you're // using an AWS Region other than Oeste dos EUA (Oregon). Change the value of the// profile parameter if you want to use a profile in your credentials file// other than the default.$SesClient = new SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-west-2']);

// Replace [email protected] with your "From" address.// This address must be verified with Amazon SES.$sender_email = '[email protected]';

// Replace these sample addresses with the addresses of your recipients. If// your account is still in the sandbox, these addresses must be verified.$recipient_emails = ['[email protected]','[email protected]'];

// Specify a configuration set. If you do not want to use a configuration// set, comment the following variable, and the// 'ConfigurationSetName' => $configuration_set argument below.$configuration_set = 'ConfigSet';

$subject = 'Amazon SES test (AWS SDK para PHP)';$plaintext_body = 'This email was sent with Amazon SES using the AWS SDK for PHP.' ;$html_body = '<h1>AWS Amazon Simple Email Service Test Email</h1>'. '<p>This email was sent with <a href="https://aws.amazon.com/ses/">'. 'Amazon SES</a> using the <a href="https://aws.amazon.com/sdk-for-php/">'. 'AWS SDK para PHP</a>.</p>';$char_set = 'UTF-8';

try { $result = $SesClient->sendEmail([ 'Destination' => [ 'ToAddresses' => $recipient_emails, ], 'ReplyToAddresses' => [$sender_email], 'Source' => $sender_email, 'Message' => [ 'Body' => [ 'Html' => [ 'Charset' => $char_set, 'Data' => $html_body, ], 'Text' => [ 'Charset' => $char_set, 'Data' => $plaintext_body, ], ], 'Subject' => [ 'Charset' => $char_set, 'Data' => $subject, ], ], // If you aren't using a configuration set, comment or delete the // following line 'ConfigurationSetName' => $configuration_set,

38

Page 46: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

]); $messageId = $result['MessageId']; echo("Email sent! Message ID: $messageId"."\n");} catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo("The email was not sent. Error message: ".$e->getAwsErrorMessage()."\n"); echo "\n";}

2. Em amazon-ses-sample.php, substitua o seguinte pelos seus próprios valores:

• path_to_sdk_inclusion — Substitua pelo caminho necessário para incluir o AWS SDK paraPHP no programa. Para obter mais informações, consulte a documentação do AWS SDK para PHP.

[email protected] — Substitua por um endereço de e-mail que você tenha verificado com oAmazon SES. Para obter mais informações, consulte Verificar identidades (p. 47). Os endereçosde e-mail no Amazon SES diferenciam maiúsculas de minúsculas. Certifique-se de que o endereçoinformado seja exatamente o mesmo que você verificou.

[email protected], [email protected] — Substitua pelos endereços dosdestinatários. Se sua conta ainda estiver na sandbox, os endereços dos destinatários tambémdeverão ser verificados. Para obter mais informações, consulte Sair da sandbox do AmazonSES (p. 73). Certifique-se de que o endereço informado seja exatamente o mesmo que vocêverificou.

• (Opcional) ConfigSet —Se você quiser usar um conjunto de configurações ao enviar esse e-mail,substitua esse valor pelo nome do conjunto de configurações. Para obter mais informações sobre osconjuntos de configurações, consulte Usar conjuntos de configurações do Amazon SES (p. 244).

• (Opcional) us-west-2 — Se você deseja usar o Amazon SES em outra região que não seja aOeste dos EUA (Oregon), substitua pela região que você deseja usar. Para obter uma lista deregiões onde o Amazon SES está disponível, consulte Amazon Simple Email Service (Amazon SES)no AWS General Reference.

3. Salvar amazon-ses-sample.php.4. Para executar o programa, abra um prompt de comando no mesmo diretório de amazon-ses-

sample.php e, em seguida, digite o comando a seguir:

$ php amazon-ses-sample.php

5. Revise a saída. Se o e-mail foi enviado com êxito, o console exibirá "Email sent!"; do contrário, eleexibirá uma mensagem de erro.

Note

Se você encontrar um erro "cURL error 60: SSL certificate problem" quando executar oprograma, faça download do pacote CA mais recente, conforme descrito na documentaçãodo AWS SDK para PHP. Em seguida, em amazon-ses-sample.php, adicione as seguinteslinhas à matriz SesClient::factory, substitua path_of_certs pelo caminho para opacote CA que você obteve por download e execute novamente o programa.

'http' => [ 'verify' => 'path_of_certs\ca-bundle.crt']

6. Entre no cliente de e-mail do endereço de destinatário. Você encontrará a mensagem que enviou.

Enviar um e-mail usando o AWS SDK para Ruby

Este tópico mostra como usar o AWS SDK para Ruby para enviar um e-mail pelo Amazon SES.

39

Page 47: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

Important

Neste tutorial, envie um e-mail para si mesmo, para que você possa verificar se você recebeu.Para fazer mais experimentos ou testes de carga, use o simulador de caixa postal Amazon SES.Os e-mails enviados ao simulador de caixa postal não contam para sua cota de envio nem parasuas taxas de devoluções e reclamações. Para obter mais informações, consulte Teste de enviode e-mail no Amazon SES (p. 187).

Pré-requisitos

Antes de começar, execute as seguintes tarefas:

• Verifique seu endereço de e-mail com o Amazon SES — Antes de enviar e-mails com o Amazon SES,é necessário verificar se você é o proprietário do endereço de e-mail do remetente. Se sua conta aindaestiver na sandbox do Amazon SES, você também deverá verificar o endereço de e-mail do destinatário.A maneira mais fácil de verificar os endereços de e-mail é usando o console do Amazon SES. Para obtermais informações, consulte Verificar endereços de e-mail no Amazon SES (p. 47).

• Obtenha suas credenciais da AWS — Você precisa de um ID de chave de acesso da AWS e da chavede acesso secreta da AWS para acessar o Amazon SES usando um SDK. Você pode encontrar suascredenciais na página Credenciais de segurança do Console de gerenciamento da AWS. Para obtermais informações sobre credenciais, consulte Uso de credenciais com o Amazon SES (p. 398).

• Instalar o Ruby — Ruby está disponível em https://www.ruby-lang.org/en/downloads/. O código nestetutorial foi testado usando Ruby 1.9.3. Depois de instalar o Ruby, adicione o caminho para o Rubynas suas variáveis de ambiente, de forma que possa executar o Ruby a partir de qualquer prompt decomando.

• Instalar o AWS SDK para Ruby — Para ver as instruções de download e instalação, consulte Instalaçãodo AWS SDK para Ruby no AWS SDK para Ruby Developer Guide. O código de exemplo neste tutorialfoi testado com a versão 2.9.36 do AWS SDK para Ruby.

• Criar um arquivo de credenciais compartilhadas — Para que o código de exemplo nesta seção funcionecorretamente, você deve criar um arquivo de credenciais compartilhadas. Para obter mais informações,consulte Criar um arquivo de credenciais compartilhadas (p. 30).

Procedimento

O procedimento a seguir mostra como enviar um e-mail por meio do Amazon SES usando o AWS SDKpara Ruby.

Para enviar e-mail pelo Amazon SES usando o AWS SDK para Ruby

1. Em um editor de texto, crie um arquivo chamado amazon-ses-sample.rb. Cole o seguinte códigono arquivo:

require 'aws-sdk'

# Replace [email protected] with your "From" address.# This address must be verified with Amazon SES.sender = "[email protected]"

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.recipient = "[email protected]"

# Specify a configuration set. If you do not want to use a configuration# set, comment the following variable and the # configuration_set_name: configsetname argument below. configsetname = "ConfigSet" # Replace us-west-2 with the AWS Region you're using for Amazon SES.awsregion = "us-west-2"

40

Page 48: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

# The subject line for the email.subject = "Amazon SES test (AWS SDK para Ruby)"

# The HTML body of the email.htmlbody = '<h1>Amazon SES test (AWS SDK para Ruby)</h1>'\ '<p>This email was sent with <a href="https://aws.amazon.com/ses/">'\ 'Amazon SES</a> using the <a href="https://aws.amazon.com/sdk-for-ruby/">'\ 'AWS SDK para Ruby</a>.'

# The email body for recipients with non-HTML email clients. textbody = "This email was sent with Amazon SES using the AWS SDK para Ruby."

# Specify the text encoding scheme.encoding = "UTF-8"

# Create a new SES resource and specify a regionses = Aws::SES::Client.new(region: awsregion)

# Try to send the email.begin

# Provide the contents of the email. resp = ses.send_email({ destination: { to_addresses: [ recipient, ], }, message: { body: { html: { charset: encoding, data: htmlbody, }, text: { charset: encoding, data: textbody, }, }, subject: { charset: encoding, data: subject, }, }, source: sender, # Comment or remove the following line if you are not using # a configuration set configuration_set_name: configsetname, }) puts "Email sent!"

# If something goes wrong, display an error message.rescue Aws::SES::Errors::ServiceError => error puts "Email not sent. Error message: #{error}"

end

2. Em amazon-ses-sample.rb, substitua o seguinte pelos seus próprios valores:

[email protected] — Substitua por um endereço de e-mail que você tenha verificado com oAmazon SES. Para obter mais informações, consulte Verificar identidades (p. 47). Os endereçosde e-mail no Amazon SES diferenciam maiúsculas de minúsculas. Certifique-se de que o endereçoinformado seja exatamente o mesmo que você verificou.

41

Page 49: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

[email protected] — Substitua pelo endereço do destinatário. Se sua conta ainda estiverna sandbox, você precisará verificar esse endereço antes de usá-lo. Para obter mais informações,consulte Sair da sandbox do Amazon SES (p. 73). Certifique-se de que o endereço informadoseja exatamente o mesmo que você verificou.

• (Opcional) us-west-2 — Se você deseja usar o Amazon SES em outra região que não seja aOeste dos EUA (Oregon), substitua pela região que você deseja usar. Para obter uma lista deregiões onde o Amazon SES está disponível, consulte Amazon Simple Email Service (Amazon SES)no AWS General Reference.

3. Salvar amazon-ses-sample.rb.4. Para executar o programa, abra um prompt de comando no mesmo diretório de amazon-ses-

sample.rb e digite ruby amazon-ses-sample.rb5. Revise a saída. Se o e-mail foi enviado com êxito, o console exibirá "Email sent!"; do contrário, ele

exibirá uma mensagem de erro.6. Entre no cliente de e-mail do endereço de destinatário. Você encontrará a mensagem que enviou.

Enviar um e-mail usando o AWS SDK for Python (Boto)Este tópico mostra como usar o AWS SDK for Python (Boto) para enviar um e-mail pelo Amazon SES.

Important

Neste tutorial, envie um e-mail para si mesmo, para que você possa verificar se você recebeu.Para fazer mais experimentos ou testes de carga, use o simulador de caixa postal Amazon SES.Os e-mails enviados ao simulador de caixa postal não contam para sua cota de envio nem parasuas taxas de devoluções e reclamações. Para obter mais informações, consulte Teste de enviode e-mail no Amazon SES (p. 187).

Pré-requisitos

Antes de começar, execute as seguintes tarefas:

• Verifique seu endereço de e-mail com o Amazon SES — Antes de enviar e-mails com o Amazon SES,é necessário verificar se você é o proprietário do endereço de e-mail do remetente. Se sua conta aindaestiver na sandbox do Amazon SES, você também deverá verificar o endereço de e-mail do destinatário.A maneira mais fácil de verificar os endereços de e-mail é usando o console do Amazon SES. Para obtermais informações, consulte Verificar endereços de e-mail no Amazon SES (p. 47).

• Obtenha suas credenciais da AWS — Você precisa de um ID de chave de acesso da AWS e da chavede acesso secreta da AWS para acessar o Amazon SES usando um SDK. Você pode encontrar suascredenciais na página Credenciais de segurança do Console de gerenciamento da AWS. Para obtermais informações sobre credenciais, consulte Uso de credenciais com o Amazon SES (p. 398).

• Instalar o Python — O Python está disponível em https://www.python.org/downloads/. O código nestetutorial foi testado com a versão Python 2.7.6 e Python 3.6.1. Depois de instalar o Python, adicione ocaminho para o Python nas suas variáveis de ambiente, de forma que possa executar o Python a partirde qualquer prompt de comando.

• Instalar o AWS SDK for Python (Boto) — Para ver instruções de download e instalação, consulte adocumentação do AWS SDK for Python (Boto). O código de exemplo neste tutorial foi testado com aversão 1.4.4 do SDK for Python.

• Criar um arquivo de credenciais compartilhadas — Para que o código de exemplo nesta seção funcionecorretamente, você deve criar um arquivo de credenciais compartilhadas. Para obter mais informações,consulte Criar um arquivo de credenciais compartilhadas (p. 30).

Procedimento

O procedimento a seguir mostra como enviar um e-mail por meio do Amazon SES usando o SDK forPython.

42

Page 50: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnviar um e-mail usando um SDK da AWS

Para enviar e-mail pelo Amazon SES usando o SDK for Python

1. Em um editor de texto, crie um arquivo chamado amazon-ses-sample.py. Cole o seguinte códigono arquivo:

import boto3from botocore.exceptions import ClientError

# Replace [email protected] with your "From" address.# This address must be verified with Amazon SES.SENDER = "Sender Name <[email protected]>"

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.RECIPIENT = "[email protected]"

# Specify a configuration set. If you do not want to use a configuration# set, comment the following variable, and the # ConfigurationSetName=CONFIGURATION_SET argument below.CONFIGURATION_SET = "ConfigSet"

# If necessary, replace us-west-2 with the AWS Region you're using for Amazon SES.AWS_REGION = "us-west-2"

# The subject line for the email.SUBJECT = "Amazon SES Test (SDK for Python)"

# The email body for recipients with non-HTML email clients.BODY_TEXT = ("Amazon SES Test (Python)\r\n" "This email was sent with Amazon SES using the " "AWS SDK for Python (Boto)." ) # The HTML body of the email.BODY_HTML = """<html><head></head><body> <h1>Amazon SES Test (SDK for Python)</h1> <p>This email was sent with <a href='https://aws.amazon.com/ses/'>Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-python/'> AWS SDK for Python (Boto)</a>.</p></body></html> """

# The character encoding for the email.CHARSET = "UTF-8"

# Create a new SES resource and specify a region.client = boto3.client('ses',region_name=AWS_REGION)

# Try to send the email.try: #Provide the contents of the email. response = client.send_email( Destination={ 'ToAddresses': [ RECIPIENT, ], }, Message={ 'Body': { 'Html': {

43

Page 51: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorMigrar para o Amazon SES de outra solução

'Charset': CHARSET, 'Data': BODY_HTML, }, 'Text': { 'Charset': CHARSET, 'Data': BODY_TEXT, }, }, 'Subject': { 'Charset': CHARSET, 'Data': SUBJECT, }, }, Source=SENDER, # If you are not using a configuration set, comment or delete the # following line ConfigurationSetName=CONFIGURATION_SET, )# Display an error if something goes wrong. except ClientError as e: print(e.response['Error']['Message'])else: print("Email sent! Message ID:"), print(response['MessageId'])

2. Em amazon-ses-sample.py, substitua o seguinte pelos seus próprios valores:

[email protected] — Substitua por um endereço de e-mail que você tenha verificado com oAmazon SES. Para obter mais informações, consulte Verificar identidades (p. 47). Os endereçosde e-mail no Amazon SES diferenciam maiúsculas de minúsculas. Certifique-se de que o endereçoinformado seja exatamente o mesmo que você verificou.

[email protected] — Substitua pelo endereço do destinatário. Se sua conta ainda estiverna sandbox, você precisará verificar esse endereço antes de usá-lo. Para obter mais informações,consulte Sair da sandbox do Amazon SES (p. 73). Certifique-se de que o endereço informadoseja exatamente o mesmo que você verificou.

• (Opcional) us-west-2 — Se você deseja usar o Amazon SES em outra região que não seja aOeste dos EUA (Oregon), substitua pela região que você deseja usar. Para obter uma lista deregiões onde o Amazon SES está disponível, consulte Amazon Simple Email Service (Amazon SES)no AWS General Reference.

3. Salvar amazon-ses-sample.py.4. Para executar o programa, abra um prompt de comando no mesmo diretório de amazon-ses-

sample.py e, em seguida, digite python amazon-ses-sample.py5. Revise a saída. Se o e-mail foi enviado com êxito, o console exibirá "Email sent!"; do contrário, ele

exibirá uma mensagem de erro.6. Entre no cliente de e-mail do endereço de destinatário. Você encontrará a mensagem que enviou.

Migrar para o Amazon SES de outra solução de enviode e-mailsEste tópico oferece uma visão geral das etapas que você precisa realizar se quiser transferir a soluçãode envio de e-mails para o Amazon SES de uma solução hospedada no local ou em uma instância doAmazon EC2.

Tópicos nesta seção:• Verificar o domínio (p. 45)• Solicitar acesso à produção (p. 45)

44

Page 52: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorMigrar para o Amazon SES de outra solução

• Configurar sistemas de autenticação de domínio (p. 45)• Gerar as credenciais SMTP (p. 45)• Conectar a um endpoint SMTP (p. 45)• Próximas etapas (p. 45)

Verificar o domínioAntes de poder usar o Amazon SES para enviar e-mails, verifique as identidades das quais planejaenviar e-mails. No Amazon SES, uma identidade pode ser um endereço de e-mail ou um domínio inteiro.Ao verificar um domínio, você pode usar o Amazon SES para enviar e-mails de qualquer endereço nodomínio. Para obter mais informações sobre como verificar um domínio, consulte Verificar domínios noAmazon SES (p. 59).

Solicitar acesso à produçãoQuando você usar o Amazon SES pela primeira vez, a conta estará em um ambiente de sandbox.Enquanto sua conta estiver na sandbox, só será possível enviar e-mails para endereços que foramverificados. Além disso, há restrições quanto ao número de mensagens que você pode enviar por dia epor segundo. Para obter mais informações sobre como solicitar o acesso à produção, consulte Sair dasandbox do Amazon SES (p. 73).

Configurar sistemas de autenticação de domínioÉ possível configurar o domínio para usar sistemas de autenticação, como DKIM e SPF. Esta etapa étecnicamente opcional. No entanto, ao configurar o DKIM ou o SPF (ou ambos) para o domínio, é possívelaprimorar a capacidade de entrega de e-mails e aumentar o nível de confiança que os clientes têm emvocê. Para obter mais informações sobre como configurar um SPF, consulte Autenticação de e-mail comSPF no Amazon SES (p. 133). Para obter mais informações sobre a configuração do DKIM, consulteAutenticação de e-mail com DKIM no Amazon SES (p. 134).

Gerar as credenciais SMTPSe você planeja enviar e-mails usando um aplicativo que use SMTP, será necessário gerar credenciaisSMTP. As credenciais SMTP são diferentes das credenciais regulares da AWS. Essas credenciais tambémsão exclusivas para cada região da AWS. Para obter mais informações sobre como gerar as credenciaisde SMTP, consulte Obtenção das suas credenciais SMTP do Amazon SES (p. 81).

Conectar a um endpoint SMTPSe você usar um agente de transferência de mensagens, como postfix ou sendmail, será necessárioatualizar a configuração desse aplicativo para se referir a um endpoint SMTP do Amazon SES. Para obteruma lista completa de endpoints SMTP, consulte Conexão ao endpoint SMTP do Amazon SES (p. 85).Observe que as credenciais SMTP criadas na etapa anterior estão associadas a uma região da AWSespecífica. É necessário se conectar ao endpoint SMTP na região em que as credenciais SMTP foramcriadas.

Próximas etapasAgora você está pronto para começar a enviar e-mails usando o Amazon SES. Porém, há algumas etapasopcionais que você pode executar.

• Você pode criar conjuntos de configurações, que são conjuntos de regras aplicadas aos e-mailsenviados. Por exemplo, você pode usar conjuntos de configurações a fim de especificar para onde as

45

Page 53: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfigurar e-mails

notificações são enviadas quando um e-mail é entregue, quando um destinatário abre uma mensagemou clica em um link nela, quando um e-mail é devolvido e quando um destinatário marca seu e-mailcomo spam. Para obter mais informações, consulte Usar conjuntos de configurações do AmazonSES (p. 244).

• Ao enviar e-mails usando o Amazon SES, é importante monitorar as devoluções e as reclamaçõesrelacionadas à sua conta. O Amazon SES inclui um painel de reputação que pode ser usado paramonitorar as devoluções e as reclamações relacionadas à sua conta. Para obter mais informações,consulte Uso do painel de reputação para acompanhar as taxas de devolução e reclamação (p. 360).Também é possível criar alarmes do CloudWatch que alertarão quando essas avaliações atingiremum nível muito alto. Para obter mais informações sobre como criar alarmes do CloudWatch, consulteCriação de alarmes de monitoramento de reputação com o CloudWatch (p. 374).

• Os clientes que enviarem um grande volume de e-mails, ou aqueles que simplesmente quiserem ter totalcontrole sobre a reputação de seus endereços IP, podem conceder endereços IP dedicados por umatarifa mensal adicional. Para obter mais informações, consulte Uso de endereços IP dedicados com oAmazon SES (p. 178).

Configurar e-mails com o Amazon SESPara configurar e-mails com o Amazon Simple Email Service (Amazon SES), você precisa realizar asseguintes tarefas:

• Antes de poder acessar o Amazon SES ou outros serviços da AWS, você precisa configurar uma contada AWS. Para obter mais informações, consulte Cadastrando-se na AWS (p. 47).

• Antes de enviar e-mails por meio do Amazon SES, você precisa confirmar que é proprietário doendereço "From". Se a sua conta ainda estiver na sandbox do Amazon SES, você também precisaráverificar seus endereços "To". Você pode verificar endereços de e-mail ou domínios inteiros. Para obtermais informações, consulte Verificar identidades no Amazon SES (p. 47).

As seguintes tarefas são opcionais, dependendo do que você deseja fazer:

• Se você deseja acessar o Amazon SES por meio da API do Amazon SES, seja pela interface deconsulta (HTTPS) ou indiretamente através de um SDK da AWS, da AWS Command Line Interface oudo AWS Tools para Windows PowerShell, você precisa obter suas chaves de acesso da AWS. Paraobter mais informações, consulte Obter suas chaves de acesso da AWS (p. 66).

• Se você quiser chamar a API do Amazon SES sem manipular os detalhes de baixo nível da interface deconsulta, poderá usar um SDK da AWS. Para obter mais informações, consulte Fazer download de umSDK da AWS (p. 66).

• Se quiser acessar o Amazon SES através da sua interface SMTP, você precisará obter seu nome deusuário SMTP e sua senha. Suas credenciais SMTP são diferentes das suas credenciais da AWS. Paraobter mais informações, consulte Obter suas credenciais SMTP para o Amazon SES (p. 73).

• Quando você se cadastra pela primeira vez no Amazon SES, sua conta está na sandbox do AmazonSES. Na sandbox, você pode enviar e-mails usando os mesmos métodos de envio de e-mail quequalquer outro usuário do Amazon SES, com a exceção de você só poder enviar 200 e-mails por umperíodo de 24 horas com uma taxa máxima de um e-mail por segundo e só poder enviar e-mails paraendereços que você verificou. Para aumentar suas cotas de envio e enviar e-mail para endereços de e-mail não verificados, consulte Sair da sandbox do Amazon SES (p. 73).

• Se você deseja que os seus e-mails passem na autenticação Domain-based Message Authentication,Reporting and Conformance (DMARC - Autenticação, relatórios e conformidade de mensagensbaseados em domínio) com base na Sender Policy Framework (SPF - Estrutura de políticas pararemetentes), configure sua identidade para enviar a partir de um domínio MAIL FROM personalizadoconforme descrito em Configurar um domínio MAIL FROM personalizado (p. 66).

46

Page 54: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCadastrando-se na AWS

Cadastrando-se na AWSÉ necessário criar uma conta da AWS para usar o Amazon SES ou outros serviços da AWS.

Para criar uma conta da AWS

1. Em um navegador, acesse https://aws.amazon.com/ses.2. Escolha Create an AWS Account (Criar uma conta da AWS).3. Siga as instruções da tela.

Próximas etapasDepois de criar a conta da AWS, é possível começar a configurar o Amazon SES.

• Para começar a enviar e-mails com o Amazon SES, primeiro é necessário verificar umaidentidade (p. 47). Uma identidade é um endereço de e-mail ou domínio do qual o seu e-mail éenviado.

• Para interagir com o Amazon SES, é necessário obter as credenciais do IAM (p. 66) da sua conta.• Quando você usa pela primeira vez o Amazon SES, sua conta está na sandbox do Amazon SES. Na

sandbox, você tem acesso total à API do Amazon SES e à interface SMTP. No entanto, as seguintesrestrições estão em vigor:• Só é possível enviar e-mails para o simulador de caixa postal do Amazon SES (p. 187) e para

identidades de e-mail verificadas (p. 47).• Você pode enviar um máximo de 200 mensagens por um período de 24 horas.• Você pode enviar no máximo uma mensagem por segundo.

Para obter informações sobre como sair da sandbox, consulte Sair da sandbox do AmazonSES (p. 73).

Verificar identidades no Amazon SESNo Amazon SES, uma identidade é um endereço de e-mail ou domínio que você usa para enviar e-mails.Antes de poder enviar um e-mail usando o Amazon SES, você deve verificar cada identidade que usarácomo um endereço "From", "Source", "Sender" ou "Return-Path" para provar que é proprietário dele. Se asua conta ainda estiver na sandbox do Amazon SES, você também precisará verificar todos os endereçosde e-mail aos quais envia e-mails, exceto aqueles fornecidos pelo simulador de caixa postal do AmazonSES (p. 187).

Você pode verificar uma identidade usando o console do Amazon SES ou a API do Amazon SES.

Verificar endereços de e-mail no Amazon SESO Amazon SES exige que você verifique suas identidades (os domínios ou endereços de e-mail a partirdos quais você envia e-mails) para confirmar que você é o proprietário delas, e para impedir o uso nãoautorizado. Esta seção inclui informações sobre a verificação de identidades de endereços de e-mail. Paraobter informações sobre como verificar identidades de domínios, consulte the section called “Verificardomínios” (p. 59).

Considere os seguintes fatores ao verificar os endereços de e-mail a serem usados com o Amazon SES:

• Você deve verificar cada identidade usada como um endereço "From", "Source", "Sender" ou "Return-Path". No entanto, é possível adicionar um rótulo a um endereço de e-mail que já tenha sido verificadosem executar qualquer etapa de verificação adicional (consulte as informações mais tarde nesta lista).

47

Page 55: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

• Os endereços de e-mail diferenciam maiúsculas de minúsculas. Se você [email protected], não poderá enviar e-mails de [email protected], a não ser que [email protected] também.

• Se você verificar um endereço de e-mail e o domínio ao qual o endereço pertence, as configuraçõesdo endereço de e-mail substituirão as do domínio. Por exemplo, se DomainKeys Identified Mail (DKIM)estiver habilitado para o domínio example.com, mas não para [email protected], os e-mailsenviados de [email protected] não serão assinados pelo DKIM.

• O Amazon SES tem endpoints em várias regiões da AWS, e o status de verificação do endereço de e-mail é separado para cada região. Se você deseja enviar e-mails a partir da mesma identidade em maisde uma região, deve verificar essa identidade em cada região. Para obter informações sobre como usaro Amazon SES em várias regiões, consulte Regiões (p. 441).

• Em cada região da AWS, você pode verificar até 10 mil identidades (endereços de e-mail ou domínios,em qualquer combinação).

• Você pode adicionar rótulos aos endereços de e-mail verificados sem executar etapas de verificaçãoadicionais. Para adicionar um rótulo a um endereço de e-mail, adicione um sinal de mais (+) entre onome da conta e o caractere "arroba" (@), seguido por um rótulo de texto. Por exemplo, se você jáverificou [email protected], pode usar o [email protected] como endereços "From"ou "Return-Path" para seus e-mails. Você pode usar esse recurso para implementar Variable EnvelopeReturn Path (VERP). Em seguida, você pode usar VERP para detectar e remover endereços de e-mailnão entregáveis de suas listas de destinatários.

• Você pode personalizar as mensagens que são enviadas para os endereços de e-mail que tentarverificar. Para obter mais informações, consulte the section called “Uso de modelos personalizados de e-mail de verificação” (p. 52).

Verificar um endereço de e-mail

Você pode verificar os endereços de e-mail usando o console do Amazon SES ou a operação da APIVerifyEmailIdentity.

Verificar um endereço de e-mail usando o console do Amazon SES

Conclua o procedimento desta seção para verificar um endereço de e-mail usando o console do AmazonSES.

Para verificar um endereço de e-mail usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No console, use o seletor de regiões para escolher a região da AWS onde deseja verificar o endereçode e-mail, como mostrado na imagem a seguir.

48

Page 56: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Note

Para verificar um endereço de e-mail para uso em mais de uma região, repita o procedimentodesta seção para cada região.

3. No painel de navegação, em Identity Management, escolha Email Addresses.4. Escolha Verify a New Email Address.5. Na caixa de diálogo Verify a New Email Address, digite seu endereço de e-mail no campo Email

Address e, em seguida, escolha Verify This Email Address.6. Marque a caixa de entrada para o endereço de e-mail que você está verificando. Você receberá uma

mensagem com a seguinte linha de assunto: "Amazon Web Services - Solicitação de verificação deendereço de e-mail na região RegionName," onde RegionName é o nome da região da AWS quevocê selecionou na etapa 2.

Clique no link na mensagem.Note

O link na mensagem de verificação expira 24 horas depois que a mensagem foi enviada. Sejá se passaram 24 horas desde que você recebeu o e-mail de verificação, repita as etapas de1 a 5 para receber um e-mail de verificação com um link válido.

7. No console do Amazon SES, em Identity Management, escolha Email Addresses. Na lista deendereços de e-mail, localize o endereço de e-mail que você está verificando. Se o endereço de e-mail foi verificado, o valor na coluna Status é "verified".

Verificar um endereço de e-mail usando a API do Amazon SES

Use a operação da API VerifyEmailIdentity para criar uma nova identidade de e-mail. Quando você executaessa operação, um e-mail de verificação é enviado para o endereço especificado.

Para verificar um endereço de e-mail usando a AWS CLI, digite o seguinte comando na linha de comando:aws ses verify-email-identity --email-address [email protected]

No comando anterior, substitua [email protected] pelo endereço de e-mail que você deseja verificar.

Para obter um script que pode ser usado para verificar várias identidades de e-mail em uma únicaoperação, consulte the section called “Verificar vários endereços de e-mail” (p. 439).

Solucionar problemas de verificação de endereço de e-mail

Se você tentou verificar um endereço de e-mail, mas não recebeu um e-mail de verificação da AWS, tenteseguir estas etapas para solucionar o problema:

• Verifique a pasta de spam em seu cliente de e-mail.• Verifique se o seu cliente de e-mail não está aplicando regras que movem automaticamente

determinadas mensagens para uma pasta diferente da sua caixa de entrada.• Em seu cliente de e-mail, adicione [email protected] ao seu catálogo de endereços ou lista

de remetentes seguros. Você também pode solicitar ao administrador do sistema que insira os e-mailsrecebidos de [email protected] em uma lista de permissões.

• Com um endereço de e-mail que usa um provedor de serviço de e-mail diferente (como um endereço dee-mail pessoal), envie uma mensagem para o endereço de e-mail que você deseja verificar. Certifique-se de que o endereço de e-mail que você deseja verificar está recebendo a mensagem. Esta etapa éespecialmente importante se você configurou seu próprio domínio recentemente. Ocasionalmente, novosdomínios podem não ser configurados corretamente para receber e-mails de entrada.

Como alternativa, tente verificar um endereço de e-mail que você sabe que recebe e-mails, como umendereço de e-mail pessoal. Se você receber o e-mail de verificação em seu endereço pessoal, issopode indicar que há um problema no outro domínio.

49

Page 57: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Se esses testes mostrarem que os e-mail não estão sendo recebidos no endereço que você tentouverificar, consulte o administrador do sistema ou provedor de serviço de e-mail para obter maisassistência.

Como listar identidades de e-mail no Amazon SES

É possível exibir uma lista de identidades de e-mail usando o console do Amazon SES ou a operação daAPI ListIdentities.

Visualizar uma lista de identidades de e-mail no Amazon SES

Você pode usar o console do Amazon SES e a API para visualizar uma lista de endereços de e-mailverificados, ou que estão aguardando verificação, assim como os que falharam no processo de verificação.

Para visualizar uma lista de endereços de e-mail verificados

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No console, use o seletor de regiões para escolher a região da AWS em que deseja listar asidentidades de e-mail, como mostrado na imagem a seguir.

Note

Esses procedimentos só exibem uma lista de endereços de e-mail para a região selecionadada AWS.

3. No painel de navegação, em Identity Management, escolha Email Addresses.

A página de endereços de e-mail exibe uma lista de endereços de e-mails que foram verificados, queestão aguardando verificação e que falharam no processo de verificação. Clique em um endereço dee-mail para visualizar informações adicionais sobre ele.

Visualizar uma lista de identidades de e-mail usando a API do Amazon SES

Use a operação da API ListIdentities para visualizar uma lista de todas as identidades de e-mail,independentemente dos status. Também é possível usar a operação GetIdentityVerificationAttributes paraencontrar o status de verificação de determinada identidade.

Para visualizar uma lista de identidades usando a AWS CLI, digite o seguinte comando na linha decomando: aws ses list-identities

Ao executar a operação ListIdentities, ela retorna uma lista de todas as identidades em sua contadoAmazon SES, independentemente de seus status de verificação. Para ver o status de verificação de

50

Page 58: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

uma ou mais identidades, use a operação GetIdentityVerificationAttributes. Para encontraro status de verificação de uma identidade usando a AWS CLI, digite o seguinte comando na linha decomando: aws ses get-identity-verification-attributes --identities "[email protected]"

Substitua [email protected] no comando anterior pela identidade para a qual você deseja encontraro status de verificação. Você também pode usar esse comando para encontrar o status de verificaçãode várias identidades em uma única chamada de API. Por exemplo, para encontrar o status do domínioexample.com e o endereço de e-mail [email protected], digite o seguinte comando: aws ses get-identity-verification-attributes --identities "example.com" "[email protected]"

Excluir uma identidade de e-mail no Amazon SES

Se você não precisa mais usar um endereço de e-mail verificado, pode excluí-lo usando o console doAmazon SES ou a operação da API DeleteIdentity.

Warning

Esta ação não pode ser desfeita. No entanto, você pode repetir o processo de verificação parauma identidade que foi excluída anteriormente.

Excluir uma identidade de e-mail no Amazon SES

Para remover endereços de e-mail verificados

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No console, use o seletor de regiões para escolher a região da AWS onde deseja excluir umaidentidade de e-mail, como mostrado na imagem a seguir.

Note

Esses procedimentos excluem apenas o endereço de e-mail na região selecionada da AWS.Para excluir um endereço de e-mail que era verificado em mais de uma região, repita oprocedimento desta seção para cada região.

3. Selecione cada endereço de e-mail que deseja remover e escolha Remove.

Excluir uma identidade de e-mail usando a API do Amazon SES

Use a operação da API DeleteIdentity para excluir endereços de e-mail e identidades de domínio.

Para excluir uma identidade usando a AWS CLI, digite o seguinte comando na linha de comando: aws sesdelete-identity --identity "[email protected]"

Substitua [email protected] no comando anterior pela identidade que você deseja excluir.

51

Page 59: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Uso de modelos personalizados de e-mail de verificação

Ao tentar verificar um endereço de e-mail, o Amazon SES envia um e-mail para esse endereço que separece com o exemplo mostrado na imagem a seguir.

Vários clientes do Amazon SES criam aplicativos (como pacotes de marketing por e-mail ou sistemas deemissão de tíquetes) que enviam e-mails por meio do Amazon SES em nome de seus próprios clientes.Para os usuários finais desses aplicativos, o processo de verificação de e-mail pode ser confuso: o e-mailde verificação usa a marca do Amazon SES em vez da marca do aplicativo, e esses usuários finais nuncase inscreveram para usar o Amazon SES diretamente.

Se o seu caso de uso do Amazon SES exige que os clientes tenham os endereços de e-mail delesverificados para usar no Amazon SES, você pode criar e-mails de verificação personalizados. Esses e-mails personalizados ajudam a não deixar os clientes confusos e aumentam os índices de conclusão doprocesso de registro dos clientes.

Tópicos nesta seção:• Criação de um modelo personalizado de e-mail de verificação (p. 52)• Edição de um modelo personalizado de e-mail de verificação (p. 54)• Envio de e-mails de verificação usando modelos personalizados (p. 54)• Perguntas frequentes sobre e-mails de verificação personalizados (p. 55)

Criação de um modelo personalizado de e-mail de verificação

Para criar um e-mail de verificação personalizado, use a operação da APICreateCustomVerificationEmailTemplate. Esta operação aceita as seguintes entradas:

Atributo Descrição

TemplateName O nome do modelo. O nome que você especificar precisa ser exclusivo.

FromEmailAddress O endereço de e-mail do qual a verificação de e-mail foi enviada. Oendereço ou domínio que você especificar deve ser verificado para usarcom a sua conta do Amazon SES.

Note

O atributo FromEmailAddress não comporta nomes deexibição (também chamados de nomes "amigáveis").

TemplateSubject A linha de assunto do e-mail de verificação.

52

Page 60: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Atributo Descrição

TemplateContent O corpo do e-mail. O corpo do e-mail pode conter HTML, com certasrestrições. Para obter mais informações, consulte Perguntas frequentessobre e-mails de verificação personalizados (p. 55).

SuccessRedirectionURL O URL enviado aos usuários caso os endereços de e-mail tenham sidoverificados com êxito.

FailureRedirectionURL O URL enviado aos usuários caso os endereços de e-mail não tenhamsido verificados com êxito.

Use os SDKs da AWS ou a AWS CLI para criar um modelo personalizado de e-mail de verificação coma operação CreateCustomVerificationEmailTemplate. Para saber mais sobre os SDKs da AWS,consulte Ferramentas para a Amazon Web Services. Para obter mais informações sobre a AWS CLI,consulte Interface da linha de comando da AWS.

A seção a seguir inclui procedimentos para criar um e-mail de verificação personalizado usando a AWSCLI. Esses procedimentos presumem que você já tenha instalado e configurado a AWS CLI. Para obtermais informações sobre a instalação e a configuração da AWS CLI, consulte o Guia do usuário da AWSCommand Line Interface.

Note

To complete the procedure in this section, you must use version 1.14.6 or later of the AWSCLI. For best results, upgrade to the latest version of the AWS CLI. For more information aboutupdating the AWS CLI, see Installing the AWS Command Line Interface in the Guia do usuário doAWS Command Line Interface.

1. Em um editor de texto, crie um novo arquivo. Cole o seguinte conteúdo no editor:

{ "TemplateName": "SampleTemplate", "FromEmailAddress": "[email protected]", "TemplateSubject": "Please confirm your email address", "TemplateContent": "<html> <head></head> <body style="font-family:sans-serif;"> <h1 style="text-align:center">Ready to start sending email with ProductName?</h1> <p>We here at Example Corp are happy to have you on board! There's just one last step to complete before you can start sending email. Just click the following link to verify your email address. Once we confirm that you're really you, we'll give you some additional information to help you get started with ProductName.</p> </body> </html>", "SuccessRedirectionURL": "https://www.example.com/verifysuccess", "FailureRedirectionURL": "https://www.example.com/verifyfailure"}

Important

Para facilitar a leitura do exemplo anterior, o atributo TemplateContent contém quebras delinha. Se você colar o exemplo anterior em seu arquivo de texto, remova as quebras de linhaantes de prosseguir.

53

Page 61: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Substitua os valores de TemplateName, FromEmailAddress, TemplateSubject,TemplateContent, SuccessRedirectionURL e FailureRedirectionURL por seus própriosvalores. Salve o arquivo como customverificationemail.json.

2. Na linha de comando, digite o comando a seguir para criar um modelo personalizado de e-mail de verificação: aws ses create-custom-verification-email-template --cli-input-json file://customverificationemail.json

3. Opcionalmente, você pode confirmar a criação do modelo digitando o seguinte comando: aws ses list-custom-verification-email-templates

Edição de um modelo personalizado de e-mail de verificação

Você pode editar um modelo personalizado de e-mail de verificação usando a operaçãoUpdateCustomVerificationEmailTemplate. Esta operação aceita as mesmasentradas que a operação CreateCustomVerificationEmailTemplate (ou seja, osatributos TemplateName, FromEmailAddress, TemplateSubject, TemplateContent,SuccessRedirectionURL e FailureRedirectionURL). No entanto, com a operaçãoUpdateCustomVerificationEmailTemplate, nenhum desses atributos são necessários. Quandovocê passa um valor para o TemplateName igual ao nome de um modelo personalizado de e-mail deverificação existente, os atributos que você especificar substituem os atributos que estavam no modelooriginalmente.

Envio de e-mails de verificação usando modelos personalizados

Depois de criar pelo menos um modelo personalizado de e-mail de verificação, você poderá enviá-lo aos clientes chamando a operação da API SendCustomVerificationEmail. Chame a operaçãoSendCustomVerificationEmail usando qualquer SDK da AWS ou a AWS CLI. Esta operaçãoSendCustomVerificationEmail aceita as seguintes entradas:

Atributo Descrição

EmailAddress O endereço de e-mail que está sendo verificado.

TemplateName O nome do modelo personalizado de e-mail de verificação enviado aoendereço de e-mail que está sendo verificado.

ConfigurationSetName (Opcional) O nome de um conjunto de configurações para usar ao enviaro e-mail de verificação.

Por exemplo, suponha que seus clientes se registrem no seu serviço usando um formulário emseu aplicativo. Quando o cliente conclui o formulário e o envia, o aplicativo chama a operaçãoSendCustomVerificationEmail, passando o endereço de e-mail do cliente e o nome do modelo quevocê deseja usar.

O cliente recebe um e-mail que usa o modelo personalizado de e-mail criado. O Amazon SES adicionaautomaticamente um link exclusivo ao destinatário, bem como uma breve isenção de responsabilidade. Aimagem a seguir mostra um exemplo de e-mail de verificação que usa o modelo criado em Criação de ummodelo personalizado de e-mail de verificação (p. 52).

54

Page 62: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Perguntas frequentes sobre e-mails de verificação personalizados

Esta seção contém respostas às perguntas frequentes sobre o recurso de modelo personalizado de e-mailde verificação.

P1. Quantos modelos personalizados de e-mail de verificação posso criar?

Você pode criar até 50 modelos personalizados de e-mail de verificação para cada conta do Amazon SES.

P2. Como os e-mails de verificação personalizados são exibidos aos destinatários?

Os e-mails de verificação personalizados incluem o conteúdo que você especificou quando criou o modelo,seguido por um link que os destinatários devem clicar para verificar os endereços de e-mail deles.

P3. Posso visualizar o e-mail de verificação personalizado?

Para visualizar um e-mail de verificação personalizado, use a operaçãoSendCustomVerificationEmail para enviar um e-mail de verificação para um endereço seu. Sevocê não clicar no link de verificação, o Amazon SES não cria uma nova identidade. Opcionalmente,se você clicar no link de verificação, é possível excluir a identidade recém-criada usando a operaçãoDeleteIdentity.

P4. Posso incluir imagens em meus modelos personalizados de e-mail de verificação?

Você pode incorporar imagens ao HTML para seus modelos usando a codificação Base64. Quando vocêincorpora imagens dessa forma, o Amazon SES as converte automaticamente em anexos. Você podecodificar uma imagem na linha de comando, fazendo um dos seguintes comandos:

• Linux, macOS, or Unix: base64 -i imagefile.png | tr -d '\n' > output.txt• Windows: certutil -encode imagefile.png output.tmp && findstr /v /c:- output.tmp > output.txt && del

output.tmp

Substitua imagefile.png pelo nome do arquivo que você deseja codificar. Em ambos os comandosacima, a imagem Base64 codificada é salva em output.txt.

Note

Se você codificou a imagem usando a linha de comando do Windows, você deve abrir ooutput.txt em um editor de texto e remover as quebras de linha do arquivo antes deprosseguir.

Você pode incorporar no HTML do modelo a imagem codificada por Base64, incluindo o seguinte: <imgsrc="data:image/png;base64,base64EncodedImage"/>

No exemplo acima, substitua png pelo tipo de imagem codificada (como jpg ou gif) e substituabase64EncodedImage pela imagem codificada por Base64 (ou seja, o conteúdo de output.txt de umdos comandos anteriores).

55

Page 63: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

P5. Há alguma limitação para o conteúdo que eu possa incluir nos modelos personalizados de e-mail de verificação?

Os modelos personalizados de e-mail de verificação não podem ter mais de 10 MB de tamanho. Alémdisso, os modelos personalizados de e-mail de verificação que contêm HTML só podem usar as tags e osatributos listados na tabela a seguir:

Tag HTML Atributos permitidos

abbr class, id, style, title

acronym class, id, style, title

address class, id, style, title

area class, id, style, title

b class, id, style, title

bdo class, id, style, title

big class, id, style, title

blockquote cite, class, id, style, title

body class, id, style, title

br class, id, style, title

button class, id, style, title

caption class, id, style, title

center class, id, style, title

cite class, id, style, title

code class, id, style, title

col class, id, span, style, title, width

colgroup class, id, span, style, title, width

dd class, id, style, title

del class, id, style, title

dfn class, id, style, title

dir class, id, style, title

div class, id, style, title

dl class, id, style, title

dt class, id, style, title

em class, id, style, title

fieldset class, id, style, title

font class, id, style, title

56

Page 64: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Tag HTML Atributos permitidos

form class, id, style, title

h1 class, id, style, title

h2 class, id, style, title

h3 class, id, style, title

h4 class, id, style, title

h5 class, id, style, title

h6 class, id, style, title

head class, id, style, title

hr class, id, style, title

html class, id, style, title

i class, id, style, title

img align, alt, class, height, id, src,style, title, width

input class, id, style, title

ins class, id, style, title

kbd class, id, style, title

label class, id, style, title

legend class, id, style, title

li class, id, style, title

map class, id, style, title

menu class, id, style, title

ol class, id, start, style, title, type

optgroup class, id, style, title

option class, id, style, title

p class, id, style, title

pre class, id, style, title

q cite, class, id, style, title

s class, id, style, title

samp class, id, style, title

select class, id, style, title

small class, id, style, title

57

Page 65: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Tag HTML Atributos permitidos

span class, id, style, title

strike class, id, style, title

strong class, id, style, title

sub class, id, style, title

sup class, id, style, title

table class, id, style, summary, title,width

tbody class, id, style, title

td abbr, axis, class, colspan, id,rowspan, style, title, width

textarea class, id, style, title

tfoot class, id, style, title

th abbr, axis, class, colspan, id,rowspan, scope, style, title, width

thead class, id, style, title

tr class, id, style, title

tt class, id, style, title

u class, id, style, title

ul class, id, style, title, type

var class, id, style, title

P6. Quantos endereços de e-mail verificados podem existir em minha conta?

A conta do Amazon SES pode ter até 10.000 identidades verificadas em cada região da AWS. No AmazonSES, as identidades incluem os endereços de e-mail e os domínios verificados.

P7. Posso criar modelos personalizados de e-mail de verificação usando o console do AmazonSES?

No momento, só é possível criar, editar e excluir a e-mails de verificação personalizados usando a API doAmazon SES.

P8. Posso acompanhar eventos de abertura e clique que ocorrem quando os clientes recebem e-mails de verificação personalizados?

Os e-mails de verificação personalizados não podem incluir o acompanhamento de abertura ou clique.

P9. Os e-mails de verificação personalizados podem incluir cabeçalhos personalizados?

Os e-mails de verificação personalizados não podem incluir cabeçalhos personalizados.

58

Page 66: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

P10. Posso remover o texto que aparece na parte inferior dos e-mails de verificaçãopersonalizados?

O texto a seguir é adicionado automaticamente ao final de cada e-mail de verificação personalizado e nãopode ser removido:

Se você não solicitou a verificação deste endereço de e-mail, ignore essa mensagem. Em caso dedúvidas, encaminhe essa mensagem para o seguinte endereço de e-mail junto com suas dúvidas oucomentários.

O link do endereço de e-mail neste texto faz referência a [email protected], uma caixa de entradaque é monitorada ativamente pela equipe do Amazon SES.

P11. Os e-mails de verificação personalizados são assinados por DKIM?

Para que os e-mails de verificação sejam assinados por DKIM, o endereço de e-mail que você especificano atributo FromEmailAddress ao criar o modelo de e-mail de verificação deve ser configurado paragerar uma assinatura de DKIM. Para obter mais informações sobre como configurar o DKIM para domíniose endereços de e-mail, consulte the section called “Autenticação de e-mail com DKIM” (p. 134).

P12. Por que as operações de API do modelo personalizado de e-mail de verificação não sãoexibidas no SDK ou na CLI?

Se você não está conseguindo usar as operações do modelo personalizado de e-mail de verificação emum SDK ou na AWS CLI, é possível que você esteja usando uma versão mais antiga do SDK ou da CLI.As operações do modelo personalizado de e-mail de verificação estão disponíveis nos seguintes SDKs eCLIs:

• Versão 1.14.6 ou mais recente da AWS Command Line Interface• Versão 3.3.205.0 ou mais recente do AWS SDK para .NET• Versão 1.3.20170531.19 ou mais recente do AWS SDK para C++• Versão 1.12.43 ou mais recente do AWS SDK para Go• Versão 1.11.245 ou mais recente do AWS SDK for Java• Versão 2.166.0 ou mais recente do AWS SDK for JavaScript• Versão 3.45.2 ou mais recente do AWS SDK para PHP• Versão 1.5.1 ou mais recente do AWS SDK for Python (Boto)• Versão 1.5.0 ou mais recente do gem aws-sdk-ses no AWS SDK para Ruby

P13. Por que recebo erros ProductionAccessNotGranted quando envio e-mails de verificaçãopersonalizados?

O erro ProductionAccessNotGranted indica que sua conta ainda está no sandbox do Amazon SES.Só é possível enviar e-mails de verificação personalizados se sua conta tiver sido removida do sandbox.Para obter mais informações, consulte Sair da sandbox do Amazon SES (p. 73).

Verificar domínios no Amazon SESO Amazon SES requer que você verifique seu endereço de e-mail ou domínio, para confirmar que você é oproprietário e impedir que outras pessoas o utilizem. Ao verificar um domínio inteiro, você está verificandotodos os endereços de e-mail desse domínio e, portanto, não precisa verificar endereços de e-mail dessedomínio individualmente. Por exemplo, se você verificar o domínio example.com, poderá enviar e-mails [email protected], [email protected] ou qualquer outro usuário em example.com.

Você pode gerenciar seus domínios verificados usando o console do Amazon SES ou a API da AmazonSES. Para obter uma descrição completa das ações de API relacionadas à verificação de domínio, vá parao Amazon Simple Email Service API Reference. Esta seção, que demonstra as ações usando o console doAmazon SES, contém os seguintes tópicos:

59

Page 67: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

• Como verificar um domínio com o Amazon SES (p. 60)• Como listar as identidades de domínio no Amazon SES (p. 63)• Excluir uma identidade de domínio no Amazon SES (p. 63)• Revogação da verificação de domínio do Amazon SES (p. 63)• Amazon SESRegistros TXT de verificação de domínio (p. 64)

Observações importantes sobre a verificação de domínios de e-mail são as seguintes:

• O Amazon SES tem endpoints em várias regiões da AWS, e a verificação de domínios aplica-se a cadaregião da AWS separadamente. Você deve realizar todo o procedimento de verificação de domíniopara cada região na qual deseja enviar de um determinado domínio. Se você deseja verificar o mesmodomínio em várias regiões, e seu provedor DNS não permite que você tenha vários registros TXT com omesmo nome, veja as soluções alternativas Problemas comuns de verificação de domínio (p. 455).

• Se você verificar um domínio com o Amazon SES, poderá enviar de qualquer subdomínio desse domíniosem verificar especificamente o subdomínio. Por exemplo, se você verificar example.com, não precisaráverificar a.example.com ou a.b.example.com. Conforme especificado na RFC 1034, cada rótulo DNSpode ter até 63 caracteres e o nome de domínio inteiro não deve exceder um comprimento total de 255caracteres.

• Se você verificar um domínio, subdomínios e/ou endereços de e-mail que compartilham um domínioraiz, as configurações de identidade verificadas (como notificações de feedback e o Easy DKIM) serãoaplicadas no nível mais granular que você verificou. Ou seja:• As configurações de endereço de e-mail verificadas anulam as configurações de domínio verificadas.• As configurações de subdomínio verificadas substituem as configurações de domínio verificadas, com

as configurações de subdomínio de nível inferior substituindo as configurações de subdomínio de nívelsuperior.

Por exemplo, suponha que você verifique [email protected], a.b.example.com, b.example.come example.com. Estas são as configurações de identidade verificadas que serão usadas nos seguintescenários:• E-mails enviados de [email protected] (um endereço que não está especificamente verificado)

usarão as configurações para example.com.• E-mails enviados de [email protected] (um endereço que está especificamente verificado)

usarão as configurações para [email protected].• E-mails enviados de [email protected] (um endereço que não está especificamente verificado)

usarão as configurações para b.example.com.• Nomes de domínios não diferenciam maiúsculas de minúsculas. Se você verificar example.com, também

pode enviar de EXAMPLE.com.• Em cada região da AWS, você pode verificar até 10 mil identidades (domínios e endereços de e-mail,

em qualquer combinação).

Como verificar um domínio com o Amazon SES

O procedimento a seguir mostra como verificar um domínio usando o console do Amazon SES. Se quiserusar a API do Amazon SES em vez disso, consulte o Amazon Simple Email Service API Reference.

Note

Como alternativa para concluir o procedimento nesta seção, você também poderá habilitar oEasy DKIM (p. 134). Quando o Amazon SES detecta que você adicionou os registros DKIM àconfiguração de DNS de um domínio, você pode começar a enviar e-mails a partir desse domínio,mesmo se ainda não tiver concluído os procedimentos desta seção.

60

Page 68: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Para verificar um domínio

1. Vá para a lista de domínios verificados no console do Amazon SES ou siga estas instruções paranavegar até ele:

a. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

b. No painel de navegação, em Identity Management, escolha Domains.2. Escolha Verify a New Domain.3. Na caixa de diálogo Verify a New Domain, insira o nome do domínio.

Tip

Se o seu domínio for www.example.com, insira example.com como seu domínio. A parte"www." não é necessária, e o processo de verificação de domínio não terá êxito se vocêincluí-la.

4. Se quiser configurar a assinatura DKIM para este domínio, selecione a opção Generate DKIM Settings(Gerar configurações de DKIM). Para obter informações sobre a assinatura do DKIM, consulteAutenticação de e-mail com DKIM no Amazon SES (p. 134).

5. Escolha Verify This Domain.6. Na caixa de diálogo Verify a New Domain, você verá um valor em Domain Verification Record Set

contendo Name, a Type e Value. (Essas informações também estarão disponíveis escolhendo o nomedo domínio depois de fechar a caixa de diálogo.)

Para completar a verificação do domínio, adicione um registro TXT com o Name e o Value exibidosao servidor DNS do seu domínio. Para obter informações sobre registros TXT do Amazon SESe orientação geral sobre como adicionar um registro TXT a um servidor DNS, consulte AmazonSESRegistros TXT de verificação de domínio (p. 64). Em particular:

• Se o seu provedor de DNS não permitir sublinhados em nomes de registro, você pode omitir_amazonses de Name.

• Para ajudá-lo a identificar facilmente esse registro dentro das configurações de DNS do seudomínio, você pode opcionalmente prefixar Value com amazonses:

• Alguns provedores de DNS anexam automaticamente o nome do domínio aos nomes de registrosDNS. Para evitar a duplicação do nome de domínio, você pode adicionar um ponto ao final do nomede domínio no registro DNS. Isso indica que o nome do registro está totalmente qualificado e que oprovedor de DNS não precisa acrescentar um nome de domínio adicional.

61

Page 69: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

7. Se o Route 53 fornecer o serviço DNS para o domínio que está sendo verificado e você tiver feito loginno Console de gerenciamento da AWS com a mesma conta usada para o Route 53, o Amazon SESdará a opção de atualizar seu servidor DNS imediatamente pelo console do Amazon SES.

Se você usa um provedor de DNS diferente, os procedimentos para atualizar os registros de DNSvariam de acordo com qual DNS ou provedor de hospedagem web você usa. A tabela a seguir listalinks para a documentação de vários provedores comuns. Essa lista não é exaustiva e a inclusãonela não é um endosso ou recomendação de produtos ou serviços de nenhuma empresa. Se o seuprovedor não estiver listado na tabela, provavelmente você poderá usar o domínio com o AmazonSES.

Provedor de DNS/hospedagem Link da documentação

GoDaddy Adicionar um registro TXT (link externo)

Dreamhost Como adicionar registros DNS personalizados?(link externo)

Cloudflare Gerenciar registros DNS no CloudFlare (linkexterno)

HostGator Gerenciar registros DNS com HostGator/eNom(link externo)

Namecheap Como adicionar registros TXT/SPF/DKIM/DMARC para o meu domínio? (link externo)

Names.co.uk Alterar configurações de DNS dos domínios (linkexterno)

Wix Adicionar ou atualizar registros TXT em suaconta do Wix (link externo)

62

Page 70: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Quando a verificação for concluída, o status do domínio no console do Amazon SES mudará de"pending verification" (verificação pendente) para "verified" (verificado), e você receberá um e-mail denotificação do Amazon SES.

8. Agora, você pode usar o Amazon SES para enviar e-mails de qualquer endereço no domínioverificado. Para enviar um e-mail de teste, marque a caixa ao lado do domínio verificado e escolhaSend a Test Email.

Se as configurações de DNS não forem atualizadas corretamente, você receberá um e-mail de falhade verificação de domínio do Amazon SES, e o domínio exibirá um status failed na guia Domains(domínios). Se isso acontecer, execute as etapas na página de solução de problemas em Problemascomuns de verificação de domínio (p. 455). Depois de verificar se o TXT foi criado corretamente, escolhao link retry (tentar novamente) ao lado da notificação de status failed para reiniciar o processo deverificação de domínio.

Como listar as identidades de domínio no Amazon SES

Para visualizar seus domínios verificados, siga o procedimento abaixo.

Para visualizar seus domínios verificados

1. Vá para a lista de domínios verificados no console do Amazon SES ou siga estas instruções paranavegar até ele:

a. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

b. No painel de navegação, em Identity Management, escolha Domains.2. Na lista de domínios verificados, você pode expandir um ou mais domínios para visualizar os detalhes.

Excluir uma identidade de domínio no Amazon SES

Para remover um domínio verificado, siga o procedimento abaixo.

Para remover um domínio verificado

1. Vá para a lista de domínios verificados no console do Amazon SES ou siga estas instruções paranavegar até ele:

a. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

b. No painel de navegação, em Identity Management, escolha Domains.2. Marque a caixa ao lado de cada domínio que deseja remover e, em seguida, escolha Remove.3. Você não poderá mais enviar e-mails do domínio removido.

Revogação da verificação de domínio do Amazon SES

O Amazon SES avalia periodicamente o status de verificação do domínio e revoga a verificação quandoela não é mais válida. Se o Amazon SES for incapaz de detectar a informação de registro TXT necessáriapara confirmar a propriedade de um domínio, você receberá um e-mail Amazon SES Domain VerificationREVOCATION WARNING do Amazon SES.

Se você restaurar a informação de registro TXT no servidor DNS do seu domínio em até 72 horas,receberá e-mail Amazon SES Domain Verification REVOCATION CANCELLATION do Amazon SES.

63

Page 71: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Note

Você pode revisar as informações necessárias do registro TXT no console do Amazon SESusando as instruções a seguir. No painel de navegação, em Identity Management, escolhaDomains. Na lista de domínios, escolha (e não apenas expanda) o domínio para exibir asconfigurações de verificação do domínio, que incluem o nome e o valor do registro TXT.

Se você não restaurar a informação de registro TXT no servidor DNS do seu domínio em até 72 horas,receberá um e-mail Amazon SES Domain Verification REVOCATION do Amazon SES, o domínio seráremovido da lista Verified Senders na guia Domains, e você não poderá mais enviar a partir do domínio.

Para reverificar um domínio para o qual a verificação foi revogada, você deve reiniciar o procedimento deverificação desde o início, como se o domínio revogado fosse um domínio totalmente novo.

Amazon SESRegistros TXT de verificação de domínio

Seu domínio está associado a um conjunto de registros Domain Name System (DNS) que você podegerenciar por meio do seu provedor de DNS. Um registro TXT é um tipo de registro DNS que forneceinformações adicionais sobre seu domínio. Cada registro TXT consiste em um nome e um valor.

Ao iniciar a verificação de domínio usando o console do Amazon SES ou a API, o Amazon SES oferece onome e o valor a serem usados para o registro TXT. Por exemplo, se o seu domínio for example.com, asconfigurações de registro TXT geradas pelo Amazon SES serão semelhantes ao seguinte exemplo:

Nome Type Valor

_amazonses.example.com TXT pmBGN/7MjnfhTKUZ06Enqq1PeGUaOkw8lGhcfwefcHU=

Adicione um registro TXT ao servidor DNS do seu domínio usando o Name (Nome) e o Value (Valor)especificados. A verificação de domínio do Amazon SES é concluída quando o Amazon SES detectar aexistência do registro TXT nas configurações de DNS do seu domínio.

Note

Alguns provedores de DNS anexam automaticamente o nome do domínio aos nomes de registrosDNS. Para evitar a duplicação do nome de domínio, é possível adicionar um ponto (.) ao final donome de domínio no registro DNS ou omitir seu domínio do nome do registro. Para obter maisinformações, consulte a documentação do seu provedor de DNS.

Se o seu provedor de DNS não permitir que nomes de registro DNS contenham sublinhados, vocêpoderá omitir _amazonses do Nome. Nesse caso, para o exemplo anterior, o nome do registro TXT seriaexample.com em vez de _amazonses.example.com. Para tornar o registro mais fácil de reconhecer emanter, você também pode prefixar o Valor com amazonses:. No exemplo anterior, o valor do registro TXTseria, portanto, amazonses:pmBGN/7MjnfhTKUZ06Enqq1PeGUaOkw8lGhcfwefcHU=.

Note

Anteriormente, o Amazon SES permitia que nomes de registros TXT contivessem amazonsessem um sublinhado. Se você já verificou um domínio, e seu registro TXT contém amazonses semum sublinhado, seu domínio continuará a ser verificado; e não será necessária nenhuma açãoda sua parte. No entanto, quaisquer novos domínios que você verificar exigirão que amazonsesno nome do registro TXT seja precedido por um sublinhado ou que _amazonses seja removidototalmente do nome do registro TXT.

Você pode encontrar informações de solução de problemas e instruções sobre como verificar suasconfigurações de verificação de domínio em Problemas comuns de verificação de domínio (p. 455).

64

Page 72: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar identidades

Adicionar um registro TXT ao servidor DNS do seu domínio

O procedimento para adicionar registros TXT ao servidor DNS do seu domínio depende de quem forneceseu serviço de DNS. Seu provedor de DNS pode ser o Amazon Route 53 ou outro registrador de nomes dedomínio, como o GoDaddy. Esta seção apresenta os procedimentos para adicionar um registro TXT para oRoute 53, bem como procedimentos genéricos que se aplicam a outros provedores de DNS.

Procedimentos para o Amazon Route 53

Ao iniciar o processo de verificação de um novo domínio (p. 60) para usar com o Amazon SES, poderáadicionar automaticamente o registro TXT de verificação de domínio à configuração do Route 53. Noentanto, se optar por não adicionar o registro TXT automaticamente, poderá adicionar manualmente oregistro TXT à configuração do Route 53 por meio do procedimento apresentado nesta seção.

Para adicionar um registro TXT ao registro DNS do domínio gerenciado do Route 53

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. Em Identity Management (Gerenciamento de identidades), escolha Domains (Domínios).3. Escolha o domínio que você deseja verificar.4. Expanda a seção Verification (Verificação). Copie o valor indicado ao lado de TXT Value (Valor TXT).5. Abra o console do Route 53 em https://console.aws.amazon.com/route53/.6. No painel de navegação, escolha Zonas hospedadas.7. Selecione o domínio ao qual você deseja adicionar um registro TXT e, em seguida, escolha Go to

Record Sets (Ir para conjuntos de registros).8. Escolha Criar conjunto de registros.9. No painel Create Record Set (Criar conjunto de registros), selecione o seguinte:

a. Para Nome, digite _amazonses.b. Em Type (Tipo), selecione TXT – Text (TXT – texto).c. Em TTL (Seconds) (TTL (segundos)), digite 1800.d. Em Value (Valor), cole o valor de registro TXT copiado do console do Amazon SES.e. Escolha Criar.

10. Na página Domains (Domínios) no console do Amazon SES, verifique o valor na coluna Status aolado do domínio que você acabou de tentar verificar. Se o status for "pending verification" (verificaçãopendente), aguarde mais alguns minutos e, em seguida, selecione refresh (atualizar) ( ). Repita esseprocesso até que o valor na coluna de status seja "verified" (verificado).

Procedimentos genéricos para outros provedores de DNS

Os procedimentos para adicionar registros TXT às configurações de DNS variam de um fornecedorpara outro. Para etapas específicas, consulte a documentação do provedor do DNS. O procedimentodescrito nesta seção apresenta uma visão geral das etapas executadas para adicionar um registro TXT àconfiguração de DNS de seu domínio.

Para adicionar um registro TXT ao servidor DNS do seu domínio (procedimento geral)

1. Acesse o console de gerenciamento do fornecedor de DNS e faça login na sua conta.2. Encontre a página para atualizar os registros de DNS do seu domínio. Esta página pode ter um nome

semelhante a um dos seguintes exemplos: DNS Records (Registros DNS), DNS Zone File (Arquivo dezona DNS) ou Advanced DNS (DNS avançado). Consulte a documentação fornecida por seu provedorde DNS para obter mais informações.

3. Adicione um registro TXT com o nome e o valor fornecido pelo Amazon SES.

65

Page 73: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorObter suas chaves de acesso da AWS

Important

Alguns provedores de DNS, como GoDaddy, anexam automaticamente o nome do domínioao final dos registros de DNS. Adicionar um registro que já contenha o nome de domínio(como _amazonses.example.com) pode resultar na duplicação do nome de domínio (como_amazonses.example.com.example.com). Para evitar a duplicação do nome de domínio,adicione um ponto ao final do nome de domínio no registro DNS ou apenas omita seudomínio do nome do registro. Consulte a documentação fornecida por seu provedor de DNSpara obter mais informações.

4. Salve as alterações. As atualizações de registro de DNS podem demorar até 48 horas para seremefetivadas, mas a efetivação geralmente ocorre muito mais cedo. Você pode verificar se o registroTXT está corretamente publicado usando o procedimento em Como examinar as configurações deverificação de domínio (p. 456).

Obter suas chaves de acesso da AWSDepois de se cadastrar no Amazon SES, será necessário obter suas chaves de acesso da AWS se quiseracessar o Amazon SES por meio da API do Amazon SES, seja pela interface de consulta (HTTPS), diretaou indiretamente por meio de um SDK da AWS, da AWS Command Line Interface ou do AWS Tools paraWindows PowerShell. As chaves de acesso da AWS consistem em um ID de chave de acesso e em umachave de acesso secreta.

Para obter informações sobre como obter suas chaves de acesso da AWS, consulte Credenciais desegurança da AWS na AWS General Reference.

Fazer download de um SDK da AWSSe quiser chamar a API do Amazon SES sem ter de lidar com os detalhes de baixo nível, como amontagem de solicitações HTTP não processadas, você poderá usar um SDK da AWS. Os SDKs da AWSfornecem tipos de funções e de dados que encapsulam a funcionalidade do Amazon SES e de outrosserviços da AWS. Para fazer download de um SDK da AWS, acesse SDKs.

A seção Conceitos básicos deste guia oferece exemplos de como enviar e-mail usando os SDKs da AWSpara várias linguagens de programação. Para obter mais informações, consulte Enviar um e-mail por meiodo Amazon SES usando um SDK da AWS (p. 30).

Configurar um domínio MAIL FROM personalizadoQuando um e-mail é enviado, ele tem dois endereços que indicam sua origem: um endereço Fromexibido para o destinatário da mensagem e um endereço MAIL FROM que indica onde a mensagem foioriginada. O endereço MAIL FROM às vezes é chamado de remetente do envelope, envelope, endereçode devolução ou endereço Caminho de retorno. Os servidores de e-mail usam o endereço MAIL FROMpara retornar mensagens de devolução e outras notificações de erro. O endereço MAIL FROM geralmentesó pode ser visualizado pelos destinatários se eles visualizarem o código-fonte da mensagem.

O Amazon SES define o domínio MAIL FROM para as mensagens enviadas como um valor padrão, amenos que você especifique seu próprio domínio. Esta seção discute os benefícios da configuração de umdomínio MAIL FROM personalizado e inclui procedimentos de configuração.

Por que usar um domínio MAIL FROM personalizado?Por padrão, as mensagens que você envia pelo Amazon SES usam o amazonses.com (ou um subdomíniodele) como domínio MAIL FROM. A autenticação da Sender Policy Framework (SPF) valida essas

66

Page 74: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfigurar um domínio MAIL FROM personalizado

mensagens com êxito porque o domínio MAIL FROM padrão corresponde ao aplicativo que enviou o e-mail — neste caso, o Amazon SES.

Embora esse nível de autenticação seja suficiente para muitos remetentes, outros remetentes preferemdefinir o domínio MAIL FROM como um domínio de sua propriedade. Ao configurar um domínio MAILFROM personalizado, seus e-mails podem estar em conformidade com Domain-based MessageAuthentication, Reporting and Conformance (DMARC – Autenticação, relatórios e conformidade demensagens baseadas em domínio) (p. 146). O DMARC permite que o domínio de um remetente indiqueque os e-mails enviados do domínio são protegidos por um ou mais sistemas de autenticação.

Há duas maneiras de obter a validação DMARC: usando a Sender Policy Framework (p. 133) (SPF –Estrutura da política do remetente) e usando o DomainKeys Identified Mail (p. 134) (DKIM – Mensagemidentificada por chaves de domínio). A única maneira de estar em conformidade com o DMARC por meioda SPF é usar um domínio MAIL FROM personalizado, pois a validação da SPF requer que o domínio noendereço From corresponda ao domínio MAIL FROM. Ao usar o seu próprio domínio MAIL FROM, vocêtem a flexibilidade de usar SPF, DKIM ou ambos para obter validação por DMARC.

Escolher um domínio MAIL FROMO subdomínio que você usa para seu domínio MAIL FROM deve atender aos seguintes requisitos:

• O domínio MAIL FROM deve ser um subdomínio da identidade verificada (endereço de e-mail oudomínio) da qual você envia e-mails. Por exemplo, mail.example.com é um domínio MAIL FROM válidopara o domínio example.com.

• O domínio MAIL FROM não deve ser um domínio do qual você envia e-mails. Se você precisar usar odomínio MAIL FROM em um endereço de remetente, desabilite o encaminhamento de feedback por e-mail (p. 260) e receba suas devoluções por meio de notificações do Amazon SNS ou certifique-se deque seu domínio MAIL FROM não seja o destino para o encaminhamento de feedback. Para determinaro destino do feedback de encaminhamento de e-mail, consulte Destino do encaminhamento de feedbackde e-mail (p. 261).

• O domínio MAIL FROM não deve ser um domínio usado para receber e-mails.

Configurar o domínio MAIL FROMO processo de configuração de um domínio MAIL FROM personalizado requer que você adicione registrosà configuração do DNS do domínio. Você deve publicar um registro MX para que seu domínio possareceber as notificações de devolução e reclamação que os provedores de e-mail enviam a você. Vocêtambém deve publicar um registro SPF para provar que o Amazon SES está autorizado a enviar e-mails deseu domínio.

É possível configurar um domínio MAIL FROM personalizado para um domínio inteiro ou para endereçosde e-mail individuais. Os procedimentos a seguir mostram como usar o console do Amazon SES paraconfigurar um domínio MAIL FROM personalizado. Também é possível configurar um domínio MAIL FROMpersonalizado usando a operação da API SetIdentityMailFromDomain.

Configurar um domínio MAIL FROM para um domínio verificado

É possível configurar um domínio MAIL FROM para um domínio inteiro. Ao fazer isso, todas as mensagensenviadas de endereços nesse domínio usam o mesmo domínio MAIL FROM.

Para configurar um domínio verificado para usar um domínio MAIL FROM especificado

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. No painel de navegação, em Identity Management, escolha Domains.3. Na lista de domínios, confirme se o domínio pai do domínio MAIL FROM foi verificado. Se o domínio

não tiver sido verificado, conclua os procedimentos em Verificar domínios no Amazon SES (p. 59)para verificar o domínio. Caso contrário, escolha o domínio e vá para a próxima etapa.

67

Page 75: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfigurar um domínio MAIL FROM personalizado

4. Em MAIL FROM Domain (Domínio MAIL FROM), escolha Set MAIL FROM Domain (Definir domínioMAIL FROM).

5. Na janela Set MAIL FROM Domain (Definir domínio MAIL FROM) faça o seguinte:

a. Em MAIL FROM domain (Domínio MAIL FROM), insira o subdomínio que você deseja usar comoo domínio MAIL FROM.

b. Em Comportamento se o registro MX não for encontrado, escolha uma das seguintes opções:

• Usar a região.amazonses.com como MAIL FROM – se o registro MX do domínio MAIL FROMpersonalizado não for configurado corretamente, o Amazon SES usará um subdomínio deamazonses.com. O subdomínio varia de acordo com a região da AWS em que você usar oAmazon SES.

• Rejeitar mensagem – se o registro MX do domínio MAIL FROM personalizado não forconfigurado corretamente, o Amazon SES retornará um erro MailFromDomainNotVerified.Os e-mails que você tentar enviar desse domínio serão automaticamente rejeitados.

c. Escolha Set MAIL FROM Domain. Será exibida uma janela com os registros MX e SPF quevocê deve adicionar à configuração do DNS do seu domínio. Esses registros usam os formatosmostrados na tabela a seguir.

Nome Type Valor

subdomínio.domínio.com MX 10 feedback-smtp.região.amazonses.com

subdomínio.domínio.com TXT "v=spf1include:amazonses.com ~all"

Nos registros anteriores, substitua subdomínio.domínio. com pelo subdomínio MAIL FROMe substitua região pelo nome da região da AWS onde você deseja verificar o domínio MAILFROM (como us-west-2, us-east-1 ou eu-west-1). Observe que o valor do registro TXTdeve incluir as aspas.

Anote esses valores e, em seguida, vá para a próxima etapa.6. Publique um registro MX no servidor DNS do domínio MAIL FROM personalizado.

Important

Para configurar com sucesso um domínio MAIL FROM personalizado com o Amazon SES,é preciso publicar exatamente um registro MX no servidor DNS do domínio MAIL FROM. Seo domínio MAIL FROM tiver vários registros MX, a configuração MAIL FROM personalizadacom o Amazon SES falhará.

Se o Route 53 fornecer o serviço DNS para o seu domínio MAIL FROM e você estiver conectado aoConsole de gerenciamento da AWS com a mesma conta usada para o Route 53, escolha Publicarregistros usando o Route 53. Os registros DNS são aplicados automaticamente à configuração doDNS do seu domínio.

Se você usar um provedor de DNS diferente, será necessário publicar os registros DNS no servidorDNS do domínio MAIL FROM manualmente. O procedimento para adicionar registros DNS ao servidorDNS do seu domínio varia de acordo com seu serviço de hospedagem na web ou provedor de DNS.

Os procedimentos para atualizar os registros DNS do seu domínio dependem do provedor de DNSusado. A tabela a seguir inclui links para a documentação de vários provedores de DNS comuns. Estalista não é uma lista completa de provedores. Se o provedor não estiver listado abaixo, provavelmenteainda será possível configurar um domínio MAIL FROM. A inclusão na lista não é um endosso ourecomendação de produtos ou serviços de nenhuma empresa.

68

Page 76: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfigurar um domínio MAIL FROM personalizado

Nome do provedor de DNS/hospedagem Link da documentação

GoDaddy • MX: Adicionar um registro MX (link externo)• TXT: Adicionar um registro TXT (link externo)

DreamHost • MX: Como faço para alterar meus registrosMX? (link externo)

• TXT: Como faço para adicionar registros DNSpersonalizados? (link externo)

Cloudflare • MX: Como faço para adicionar ou editar e-mails ou registros MX? (link externo)

• TXT: Gerenciar registros DNS no CloudFlare(link externo)

HostGator • MX: Alterar registros MX — Windows (linkexterno)

• TXT: Gerenciar registros DNS com HostGator/eNom (link externo)

Namecheap • MX: Como posso configurar os registros MXnecessários para o serviço de e-mail? (linkexterno)

• TXT: Como adicionar registros TXT/SPF/DKIM/DMARC para o meu domínio? (linkexterno)

Names.co.uk • MX: Alterar configurações de DNS de seusdomínios (link externo)

• TXT: Alterar suas configurações do DNS dosdomínios (link externo)

Wix • MX: Adicionar ou atualizar registros MX emsua conta do Wix (link externo)

• TXT: Adicionar ou atualizar registros TXT emsua conta do Wix (link externo)

Quando o Amazon SES detectar que os registros estão em vigor, você receberá um e-mail informandoque seu domínio MAIL FROM personalizado foi configurado com êxito. Dependendo do seu provedorde DNS, pode haver uma demora de até 72 horas antes que o Amazon SES detecte o registro MX.

Configurar um domínio MAIL FROM para um endereço de e-mail verificado

Também é possível configurar um domínio MAIL FROM personalizado para um endereço de e-mailespecífico. Para configurar um domínio MAIL FROM personalizado para um endereço de e-mail, você devemodificar os registros DNS do domínio ao qual o endereço de e-mail está associado.

Note

Não é possível configurar um domínio MAIL FROM personalizado para endereços em um domínioque não seja de sua propriedade (por exemplo, não é possível criar um domínio MAIL FROMpersonalizado para um endereço no domínio gmail.com pois não é possível adicionar os registrosDNS necessários ao domínio).

69

Page 77: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfigurar um domínio MAIL FROM personalizado

Para configurar um endereço de e-mail verificado para usar um domínio MAIL FROM especificado

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. No painel de navegação, em Identity Management, escolha Email Addresses.3. Na lista de endereços de e-mail, confirme se o endereço de e-mail para o qual você deseja definir

como um domínio MAIL FROM personalizado está verificado. Se o endereço de e-mail não estiververificado, conclua os procedimentos em Verificar endereços de e-mail no Amazon SES (p. 47)para verificar o endereço de e-mail. Caso contrário, escolha o endereço de e-mail e vá para a próximaetapa.

4. Em MAIL FROM Domain (Domínio MAIL FROM), escolha Set MAIL FROM Domain (Definir domínioMAIL FROM).

5. Na janela Set MAIL FROM Domain (Definir domínio MAIL FROM) faça o seguinte:

a. Em MAIL FROM domain (Domínio MAIL FROM), insira o subdomínio que você deseja usar comoo domínio MAIL FROM.

b. Em Comportamento se o registro MX não for encontrado, escolha uma das seguintes opções:

• Usar a região.amazonses.com como MAIL FROM – se o registro MX do domínio MAIL FROMpersonalizado não for configurado corretamente, o Amazon SES usará um subdomínio deamazonses.com. O subdomínio varia de acordo com a região da AWS na qual você usa oAmazon SES.

• Rejeitar mensagem – se o registro MX do domínio MAIL FROM personalizado não forconfigurado corretamente, o Amazon SES retornará um erro MailFromDomainNotVerified.Os e-mails que você tentar enviar desse endereço de e-mail serão automaticamente rejeitados.

c. Escolha Set MAIL FROM Domain. Será exibida uma janela que contém os registros MX e SPFque você precisa adicionar à configuração de DNS do domínio ao qual o endereço de e-mailpertence. Esses registros usam os formatos mostrados na tabela a seguir.

Nome Type Valor

subdomínio.domínio.com MX 10 feedback-smtp.região.amazonses.com

subdomínio.domínio.com TXT "v=spf1include:amazonses.com ~all"

Nos registros anteriores, substitua subdomínio.domínio. com pelo subdomínio MAIL FROMe substitua região pelo nome da região da AWS onde você deseja verificar o domínio MAILFROM (como us-west-2, us-east-1 ou eu-west-1). Observe que o valor do registro TXTdeve incluir as aspas.

Anote esses valores e, em seguida, vá para a próxima etapa.6. Publique o registro DNS no servidor DNS do domínio MAIL FROM personalizado.

Important

Para configurar com sucesso um domínio MAIL FROM personalizado com o Amazon SES,é preciso publicar exatamente um registro MX no servidor DNS do domínio MAIL FROM. Seo domínio MAIL FROM tiver vários registros MX, a configuração MAIL FROM personalizadacom o Amazon SES falhará.

Se o Route 53 fornecer o serviço DNS para o seu domínio MAIL FROM e você estiver conectado aoConsole de gerenciamento da AWS com a mesma conta usada para o Route 53, escolha Publicarregistros usando o Route 53. Os registros DNS são aplicados automaticamente à configuração doDNS do seu domínio.

70

Page 78: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfigurar um domínio MAIL FROM personalizado

Se você usar um provedor de DNS diferente, será necessário publicar os registros DNS no servidorDNS do domínio MAIL FROM manualmente. O procedimento para adicionar registros DNS ao servidorDNS do seu domínio varia de acordo com seu serviço de hospedagem na web ou provedor de DNS.

Os procedimentos para atualizar os registros DNS do seu domínio dependem do provedor de DNSusado. A tabela a seguir inclui links para a documentação de vários provedores de DNS comuns. Estalista não é uma lista completa de provedores. Se o provedor não estiver listado abaixo, provavelmenteainda será possível configurar um domínio MAIL FROM. A inclusão na lista não é um endosso ourecomendação de produtos ou serviços de nenhuma empresa.

Nome do provedor de DNS/hospedagem Link da documentação

GoDaddy • MX: Adicionar um registro MX (link externo)• TXT: Adicionar um registro TXT (link externo)

DreamHost • MX: Como faço para alterar meus registrosMX? (link externo)

• TXT: Como faço para adicionar registros DNSpersonalizados? (link externo)

Cloudflare • MX: Como faço para adicionar ou editar e-mails ou registros MX? (link externo)

• TXT: Gerenciar registros DNS no CloudFlare(link externo)

HostGator • MX: Alterar registros MX — Windows (linkexterno)

• TXT: Gerenciar registros DNS com HostGator/eNom (link externo)

Namecheap • MX: Como posso configurar os registros MXnecessários para o serviço de e-mail? (linkexterno)

• TXT: Como adicionar registros TXT/SPF/DKIM/DMARC para o meu domínio? (linkexterno)

Names.co.uk • MX: Alterar configurações de DNS de seusdomínios (link externo)

• TXT: Alterar suas configurações do DNS dosdomínios (link externo)

Wix • MX: Adicionar ou atualizar registros MX emsua conta do Wix (link externo)

• TXT: Adicionar ou atualizar registros TXT emsua conta do Wix (link externo)

Quando o Amazon SES detectar que os registros estão em vigor, você receberá um e-mail informandoque seu domínio MAIL FROM personalizado foi configurado com êxito. Dependendo do seu provedorde DNS, pode haver uma demora de até 72 horas antes que o Amazon SES detecte o registro MX.

71

Page 79: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfigurar um domínio MAIL FROM personalizado

Estados de configuração de domínio de MAIL FROM comAmazon SESApós configurar uma identidade para usar um domínio MAIL FROM personalizado, o estado daconfiguração é "pendente" enquanto o Amazon SES tenta detectar o registro MX necessário nas suasconfigurações de DNS. O estado então muda, dependendo de o Amazon SES detectar ou não o registroMX. A tabela a seguir descreve o comportamento de envio de e-mails e as ações do Amazon SESassociadas a cada estado. Sempre que o estado mudar, o Amazon SES enviará uma notificação para oendereço de e-mail associado à sua conta da AWS.

Estado Comportamento de envio de e-mails Ações do AmazonSES

Pendente Usa a configuração de fallback MAIL FROM personalizada O Amazon SEStenta detectaro registro MXnecessário para72 horas. Se nãofor bem-sucedido,o estado mudarápara "Failed".

Bem-sucedida Usa o domínio MAIL FROM personalizado O AmazonSES verificacontinuamente queo registro MX estáem vigor.

TemporaryFailure Usa a configuração de fallback MAIL FROM personalizada O Amazon SEStenta detectaro registro MXnecessário para72 horas. Se nãofor bem-sucedido,o estado mudarápara "Failed"; sefor bem-sucedido,o estado mudarápara "Success".

Reprovada Usa a configuração de fallback MAIL FROM personalizada O AmazonSES não tentamais detectaro registro MXnecessário. Parausar um domínioMAIL FROMpersonalizado,é necessárioreiniciar oprocesso deconfiguração em??? (p. 67).

72

Page 80: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfigurar registros SPF

Configurar registros SPF para o Amazon SESUm registro SPF indica aos ISPs que você autorizou o Amazon SES a enviar e-mails para o seu domínio.Quando você usa o Amazon SES, sua decisão de publicar ou não um registro SPF depende de sevocê apenas requer que seus e-mails passem em uma verificação de SPF pelo servidor de e-mail derecebimento ou se deseja que seus e-mails atendam aos requisitos adicionais necessários para passar naautenticação DMARC (Autenticação, relatórios e conformidade com base em domínio) com base na SPF.Para obter mais informações, consulte Autenticação de e-mail com SPF no Amazon SES (p. 133).

Obter suas credenciais SMTP para o Amazon SESPara usar a interface SMTP do Amazon SES, você deve primeiro criar um nome de usuário e uma senhaSMTP. Para obter suas credenciais SMTP, consulte Obtenção das suas credenciais SMTP do AmazonSES (p. 81).

Important

Seu nome de usuário e senha SMTP não são iguais ao seu ID de chave de acesso e à chavede acesso secreta da AWS. Não tente usar suas credenciais da AWS para se autenticar noendpoint SMTP do Amazon SES. Para obter mais informações sobre credenciais, consulte Uso decredenciais com o Amazon SES (p. 398).

Sair da sandbox do Amazon SESPara ajudar a evitar fraudes e abusos e para ajudar a proteger sua reputação como remetente, aplicamosdeterminadas restrições às novas contas do Amazon SES.

Colocamos todas as novas contas na sandbox do Amazon SES. Enquanto sua conta estiver na sandbox,você pode usar todos os recursos do Amazon SES. No entanto, quando está na sandbox, aplicamos asseguintes restrições à sua conta:

• Você só pode enviar e-mails a endereços de e-mail e domínios verificados ou ao simulador de caixapostal do Amazon SES (p. 187).

• Você só pode enviar e-mails de endereços de e-mail e domínios verificados.Note

Essa restrição se aplica mesmo quando sua conta não está na sandbox.• Você pode enviar um máximo de 200 mensagens por um período de 24 horas.• Você pode enviar no máximo uma mensagem por segundo.

Quando sua conta estiver fora da sandbox, você poderá enviar e-mails para todos os destinatários,independentemente de o endereço do destinatário ou o domínio ser verificado. No entanto, você aindatem que verificar todas as identidades que usa como endereços de "From" (De), "Source" (Origem),"Sender" (Remetente) ou "Return-Path" (Caminho de retorno).

Conclua os procedimentos desta seção para solicitar que sua conta seja removida da sandbox.Note

Se você estiver usando o Amazon SES para enviar e-mails de uma instância do Amazon EC2,talvez também seja necessário solicitar que a limitação seja removida da porta 25 em suainstância do Amazon EC2. Para obter mais informações, consulte Como faço para remover alimitação da porta 25 na minha instância do EC2? no Centro de conhecimento da AWS.

Para solicitar que sua conta seja removida da sandbox do Amazon SES

1. Faça login no Console de gerenciamento da AWS em https://console.aws.amazon.com/.

73

Page 81: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSair da sandbox

2. No menu Support (Suporte), escolha Support Center, conforme mostrado na imagem a seguir.

3. Na guia My support cases (Minhas solicitações de suporte), escolha Create case (Criar solicitação).4. Em Create case (Criar solicitação), selecione Service limit increase (Aumento de limite de serviço).5. Em Case classification (Classificação de caso), preencha as seguintes seções:

• Em Limit type (Tipo de limite), selecione SES Sending Limits (Limites de envio do SES).• Para Mail Type (Tipo de e-mail), escolha o tipo de e-mail que você planeja enviar. Se mais de um

valor se aplica, escolha a opção que se aplica à maioria dos e-mails que você pretende enviar.• Para Website URL (URL do site), digite a URL de seu site. O fornecimento dessas informações nos

ajuda a compreender melhor o tipo de conteúdo que você planeja enviar.• Em My email sending complies with the AWS Service Terms and AUP (Meu envio de emails é

compatível com os Termos de serviço e a AUP da &AWS;), selecione a opção que se aplica ao seucaso de uso.

• Em Eu só envio para destinatários que tenham solicitado meus e-mails especificamente, escolha aopção que se aplica ao seu caso de uso.

• Em Tenho um processo para lidar com devoluções e reclamações, escolha a opção que se aplicaao seu caso de uso.

6. Em Requests (Solicitações), preencha as seguintes seções:

• Em Region (Região), escolha a região da AWS a qual sua solicitação se aplica.• Em Limit (Limite), escolha o tipo de aumento de cota que você deseja solicitar. Você pode escolher

entre as seguintes opções:• Desired Maximum Send Quota (Cota máxima de envio desejada) – Escolha esta opção se você

deseja solicitar um aumento na quantidade de e-mails que sua conta pode enviar a cada períodode 24 horas na região selecionada.

Desired Maximum Send Rate (Taxa máxima de envio desejada) – Escolha esta opção se vocêdeseja solicitar um aumento na quantidade de e-mails que sua conta pode enviar por segundo naregião selecionada.

74

Page 82: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSair da sandbox

• Em New limit value (Novo valor do limite), insira a cota que você está solicitando. Apenas solicite aquantidade que você julga ser necessária. Lembre-se de que não é garantido que você vá receber aquantidade solicitada.

Se desejar que sua conta seja removida da sandbox, mas não quiser um aumento da cota de envio,especifique uma cota de envio diário de 200 ou uma taxa máxima de envio de 1, dependendo dovalor que você escolheu para Limit (Limite). Essas são as cotas padrão que o Amazon SES aplica atodas as contas na sandbox.

Note

Se você deseja solicitar a remoção de sua conta da sandbox em outra região da AWS,escolha Add another request (Adicionar outra solicitação) e preencha os campos Region(Região), Limit (Limite) e New limit value (Novo valor limite) para essa região. Repita esseprocesso para cada região em que você deseja ter sua conta removida da sandbox.

7. Em Case Description (Descrição do caso), para Use case description (Descrição de caso de uso),descreva como você planeja usar o Amazon SES para enviar e-mails. Para ajudar-nos a processarsua solicitação, responda às seguintes perguntas:

• Como você planeja criar ou adquirir sua lista de endereçamento?• Como você planeja lidar com devoluções e reclamações?• Como os destinatários podem cancelar o recebimento de e-mails?• Como você escolheu a taxa de envio ou cota de envio que você especificou nesta solicitação?

Se houver informações adicionais que devem ser consideradas ao avaliar seu caso, forneça-astambém nesta seção.

8. Em Contact options (Opções de contato), para Preferred contact language (Preferência de idioma decontato), escolha se você deseja receber comunicações para esse caso em inglês ou japonês.

9. Quando terminar, escolha Submit (Enviar).

A equipe do AWS Support fornece uma resposta inicial à sua solicitação em 24 horas.

Para evitar que nossos sistemas sejam usados para enviar conteúdo indesejado ou malicioso,consideramos cuidadosamente cada solicitação. Se for possível, atenderemos à sua solicitação dentrodesse período de 24 horas. No entanto, se precisarmos obter informações adicionais sobre você, o tempode resolução poderá ser mais longo.

Se o seu caso de uso não estiver alinhado com nossas políticas, talvez não seja possível atender à suasolicitação.

Verificar o status de Sandbox para sua contaVocê pode usar o console do Amazon SES para determinar se a sua conta ainda está na sandbox.

Para determinar se a sua conta está na sandbox

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. Use o seletor de regiões para selecionar uma região da AWS.3. No painel de navegação, em Email Sending (Envio de e-mail), selecione Sending Statistics

(Estatísticas de envio).4. Se a sua conta ainda estiver na sandbox na região da AWS que você selecionou, você verá um

banner na parte superior da página que se parece com o exemplo na imagem a seguir.

75

Page 83: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de domínios de

abertura e clique personalizados

Se o banner não aparecer nesta página, sua conta não está mais na sandbox na região atual.5. (Opcional) Repita as etapas de 2 a 4 para cada região da AWS que você usa para enviar e-mail com o

Amazon SES.

Você também pode determinar se a sua conta está na sandbox, enviando um e-mail para um endereçoque ainda não verificou. Se a conta ainda estiver na sandbox, você receberá uma mensagem de erroafirmando que seu endereço de e-mail não foi verificado.

Configuração de domínios personalizados para lidarcom rastreamento de abertura e cliqueAo usar a publicação de eventos (p. 282) para capturar eventos de abertura e clique, o Amazon SES fazpequenas alterações nos e-mails enviados. Para capturar eventos de abertura, o Amazon SES adicionauma imagem transparente de 1 pixel por 1 pixel ao final de cada e-mail. Essa imagem tem um nome dearquivo exclusivo para cada e-mail e é hospedada em um servidor operado pelo Amazon SES. Paracapturar eventos de clique em link, o Amazon SES substitui os links dos seus e-mails por links para umservidor operado pelo Amazon SES. Isso imediatamente redireciona o destinatário ao destino pretendido.Alguns clientes do Amazon SES podem querer usar seus próprios domínios, em vez de domínios depropriedade e operação do Amazon SES, para criar uma experiência mais coesa para seus destinatários.

Você pode configurar vários domínios personalizados para lidar com eventos de rastreamento de aberturae clique. Esses domínios personalizados estão associados a conjuntos de configurações. Quandovocê envia um e-mail usando um conjunto de configurações, se ele estiver configurado para usar umdomínio personalizado, os links de abertura e clique nesse e-mail usarão automaticamente o domíniopersonalizado especificado no conjunto de configurações.

Esta seção contém procedimentos para configurar um subdomínio em um servidor que você tem pararedirecionar automaticamente os usuários aos servidores de rastreamento de abertura e clique operadospelo Amazon SES. Há duas etapas envolvidas na configuração desses domínios. Primeiro, você configurao subdomínio em si e, em seguida, você faz um conjunto de configurações personalizadas para usar odomínio. Este tópico contém procedimentos para concluir as duas etapas.

Parte 1: Configuração de um domínio para lidar comredirecionamentos de link de abertura e cliqueOs procedimentos específicos para configurar um domínio de redirecionamento variam de acordo como seu provedor de hospedagem na web (e sua rede de entrega de conteúdo, se você usar um servidorHTTPS). Os procedimentos nas seções a seguir fornecem orientação geral em vez de etapas específicas.

76

Page 84: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de domínios de

abertura e clique personalizados

Opção 1: Configuração de um domínio HTTP

Para usar um domínio HTTP para lidar com links de abertura e clique (ao contrário de um domínioHTTPS), o processo para configurar o subdomínio envolve apenas algumas etapas.

Note

Se você configurar um domínio personalizado que usa o protocolo HTTP e enviar um e-mail quecontém links que usam o protocolo HTTPS, os clientes verão uma mensagem de aviso quandoclicarem nos links no seu e-mail. Se você planeja enviar e-mails que contêm links que usam oprotocolo HTTPS, deve usar um domínio HTTPS para lidar com eventos de rastreamento deabertura e clique.

Se você planeja usar um subdomínio HTTPS, siga os procedimentos de Opção 2: Configuração de umdomínio HTTPS (p. 77).

Para configurar um subdomínio HTTP para lidar com links de abertura e clique

1. Se você ainda não tiver feito isso, crie um subdomínio para usar em links de rastreamento de aberturae clique. Recomendamos criar um subdomínio dedicado especificamente para lidar com esses links.

2. Verifique o subdomínio para uso com a Amazon SES. Para obter mais informações, consulte Verificardomínios no Amazon SES (p. 59).

3. Modifique o registro DNS do subdomínio. No registro DNS, adicione um novo registro CNAME queredirecione as solicitações para o domínio de rastreamento do Amazon SES. O endereço para o qualvocê redireciona depende da região da AWS em que você usa o Amazon SES. A tabela a seguircontém uma lista dos domínios de rastreamento para as regiões da AWS onde o Amazon SES estádisponível.

Região AWS Domínio de rastreamento da AWS

Leste dos EUA (Norte da Virgínia) r.us-east-1.awstrack.me

Oeste dos EUA (Oregon) r.us-west-2.awstrack.me

Ásia Pacífico (Mumbai) r.ap-south-1.awstrack.me

Ásia-Pacífico (Sydney) r.ap-southeast-2.awstrack.me

Europa (Frankfurt) r.eu-central-1.awstrack.me

Europa (Irlanda) r.eu-west-1.awstrack.me

Note

Dependendo do seu provedor de hospedagem na web, pode levar vários minutos paraque as alterações feitas no registro DNS do subdomínio surtam efeito. O seu provedor dehospedagem na web ou organização de TI podem fornecer informações adicionais sobreesses atrasos.

Opção 2: Configuração de um domínio HTTPS

Também é possível usar um domínio HTTPS para rastrear cliques no link. Para configurar um domínioHTTPS para rastrear links, é necessário executar algumas etapas adicionais, além das necessárias paraconfigurar um domínio HTTP (p. 77).

77

Page 85: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de domínios de

abertura e clique personalizados

Note

Só é possível usar um domínio HTTPS para rastrear cliques no link. O Amazon SES só oferecesuporte ao rastreamento de abertura em domínios HTTP.

Como configurar um subdomínio HTTPS para lidar com cliques

1. Crie um subdomínio a ser usado para links de rastreamento de clique. Recomendamos criar umsubdomínio dedicado especificamente para lidar com esses links.

2. Verifique o subdomínio para uso com a Amazon SES. Para obter mais informações, consulte Verificardomínios no Amazon SES (p. 59).

3. Crie uma conta com uma rede de entrega de conteúdo (CDN), como o Amazon CloudFront.4. Configure a CDN para redirecionar as solicitações ao domínio de rastreamento do Amazon SES. O

endereço para o qual você redireciona depende da região da AWS em que você usa o Amazon SES.A tabela a seguir contém uma lista dos domínios de rastreamento para as regiões da AWS onde oAmazon SES está disponível.

Região AWS Domínio de rastreamento da AWS

Leste dos EUA (Norte da Virgínia) r.us-east-1.awstrack.me

Oeste dos EUA (Oregon) r.us-west-2.awstrack.me

Ásia Pacífico (Mumbai) r.ap-south-1.awstrack.me

Ásia-Pacífico (Sydney) r.ap-southeast-2.awstrack.me

Europa (Frankfurt) r.eu-central-1.awstrack.me

Europa (Irlanda) r.eu-west-1.awstrack.me

5. Se você usar o Amazon CloudFront como sua CDN, faça os seguintes procedimentos:

a. Na página CloudFrontDistributions (Distribuições do CloudFront), selecione a distribuição quecorresponde à sua CDN.

b. Na guia Behaviors, escolha o comportamento padrão e, em seguida, escolha Edit.c. Para Cache Based on Selected Request Headers, escolha All.d. Para Query String Forwarding and Caching, escolha Forward all, cache based on all.e. (Opcional) Para usar um domínio personalizado para sua distribuição do CloudFront, em vez do

domínio que o CloudFront atribui, adicione um nome de domínio alternativo para a distribuição.Esse subdomínio também deve ser verificado no Amazon SES. Para obter mais informações,consulte Adicionar e mover nomes de domínio alternativos no Guia do desenvolvedor do AmazonCloudFront.

Se você usar uma CDN que não seja do CloudFront, pode ser necessário para concluir etapassemelhantes. Para obter mais informações, consulte a documentação de sua CDN.

6. Se você usar o Route 53 para gerenciar a configuração do DNS para seu domínio e o CloudFrontcomo sua CDN, crie um registro Alias no Route 53 que faça referência à distribuição do CloudFront(como d111111abcdef8.cloudfront.net). Para obter mais informações, consulte Criar registros usandoo console do Amazon Route 53 no Guia do desenvolvedor do Amazon Route 53.

Caso contrário, na configuração do DNS do subdomínio, adicione um registro CNAME que façareferência ao endereço de sua CDN.

7. Adquira um certificado SSL de uma autoridade de certificação confiável. O certificado deve cobriro subdomínio criado na etapa 1, bem como a CDN configurada nas etapas 3 a 5. Faça upload docertificado para a CDN.

78

Page 86: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio do seu e-mail

Parte 2: Ajuste de um conjunto de configurações para referênciaa um domínio personalizado de rastreamento de abertura ecliqueDepois de configurar seu domínio para lidar com redirecionamentos de rastreamento de abertura e clique,será preciso configurar um destino de evento em um conjunto de configurações para se referir ao domíniopersonalizado. Você pode concluir esta etapa usando o console do Amazon SES ou a operação da APICreateConfigurationSetTrackingOptions. Esta seção contém procedimentos para concluir essastarefas usando o console do Amazon SES. Para obter mais informações sobre o uso da API, consulteCreateConfigurationSetTrackingOptions na Amazon Simple Email Service API Reference.

Para criar um novo destino de evento para o conjunto de configurações que se refira ao domíniode rastreamento personalizado

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. Na barra de navegação do lado esquerdo da tela selecione Configuration Sets.3. Escolha Create Configuration Set.4. Para Configuration Set Name, digite um nome para o conjunto de configurações e selecione Create

Configuration Set.5. Na lista de conjuntos de configurações, selecione a caixa ao lado do conjunto de configurações que

você criou na etapa anterior. No menu Actions, escolha Edit.6. Na guia Event Destinations, para Add Destination, escolha um tipo de destino de evento. Para

obter mais informações sobre as opções neste menu, consulte Etapa 2: Adicionar destino deevento (p. 284).

7. Para Event types, escolha Click, Open ou os dois, dependendo dos tipos de eventos que você desejarastrear.

8. Para Domain, escolha Use your own subdomain.9. Para Select a verified domain, escolha o domínio que você deseja usar para o rastreamento de evento

de abertura e clique. No campo de texto à esquerda do menu, você pode opcionalmente especificarum subdomínio do domínio pai.

10. Configure as opções restantes normalmente. Para obter mais informações sobre como configurardestinos de evento, consulte Etapa 2: Adicionar destino de evento (p. 284).

11. Escolha Salvar.

Envio do seu e-mail com Amazon SESVocê pode enviar um e-mail com o Amazon Simple Email Service (Amazon SES) usando o console doAmazon SES, a interface SMTP (Simple Mail Transfer Protocol) do Amazon SES ou a API do AmazonSES. Em geral, você usa o console para enviar e-mails de teste e gerenciar sua atividade de envio. Paraenviar e-mails em massa, você pode usar a interface SMTP ou a API. Para obter informações sobre adefinição de preço de e-mail do Amazon SES, consulte Definição de preço do Amazon SES.

• Se você quiser usar um pacote de software habilitado para SMTP, aplicativo ou linguagem deprogramação para enviar e-mails pelo Amazon SES ou integrar o Amazon SES ao servidor de e-mails existente, use a interface SMTP do Amazon SES. Para obter mais informações, consulte Uso dainterface SMTP do Amazon SES para enviar e-mail (p. 80).

• Se você quiser chamar o Amazon SES usando solicitações HTTP brutas, use a API do Amazon SES.Para obter mais informações, consulte Uso do API do Amazon SES para enviar e-mail (p. 114).

Antes de enviar e-mails, consulte Configurar e-mails com o Amazon SES (p. 46).

79

Page 87: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Important

Quando você enviar um e-mail para vários destinatários (destinatários são "To", "CC" e "BCC") ea chamada para o Amazon SES falhar, todo o e-mail será rejeitado e nenhum dos destinatáriosreceberá o e-mail pretendido. Nós, portanto, recomendamos que você envie um e-mail para umdestinatário por vez.

Uso da interface SMTP do Amazon SES para enviare-mailPara enviar e-mails de produção pelo Amazon SES, você pode usar a interface SMTP (Simple MailTransfer Protocol) ou a API do Amazon SES. Para obter mais informações sobre o recurso de API doAmazon SES, consulte Uso do API do Amazon SES para enviar e-mail (p. 114). Esta seção descreve ainterface SMTP.

O Amazon SES envia e-mails usando SMTP, que é o protocolo de e-mail mais comum na Internet. Vocêpode enviar e-mails por meio do Amazon SES usando diversas linguagens de programação habilitadas praSMTP e um software para conectar-se à interface SMTP do Amazon SES. Esta seção explica como obtersuas credenciais SMTP do Amazon SES, como enviar e-mails usando a interface SMTP e como configurarvários softwares e servidores de e-mail para usar Amazon SES para envio de e-mail.

Note

Para obter as soluções para problemas comuns que podem ser encontrados quando você usar oAmazon SES pela interface SMTP, consulte Amazon SESProblemas de SMTP (p. 463).

Para enviar e-mails usando a interface SMTP do Amazon SES, você precisará do seguinte:

• Uma conta da AWS. Para obter mais informações, consulte Cadastrando-se na AWS (p. 47).• O nome do host da interface SMTP (ou seja, o endpoint). Para uma lista de endpoints SMTP do Amazon

SES, consulte Conexão ao endpoint SMTP do Amazon SES (p. 85).• O número de porta da interface SMTP. O número da porta varia de acordo com o método de conexão.

Para obter mais informações, consulte Conexão ao endpoint SMTP do Amazon SES (p. 85).• Nome de usuário e senha do SMTP. As credenciais SMTP são exclusivas de cada região da AWS. Se

você planeja usar a interface SMTP para enviar e-mails em várias regiões da AWS, precisa de um nomede usuário e senha para cada região.

Important

Seu nome de usuário e senha SMTP não são idênticos às chaves de acesso da AWS nem àscredenciais que você usa para fazer login no console do Amazon SES. Para obter informaçõessobre como gerar o seu nome de usuário e senha SMTP, consulte Obtenção das suascredenciais SMTP do Amazon SES (p. 81).

• Software cliente que pode se comunicar usando TLS (Transport Layer Security). Para obter maisinformações, consulte Conexão ao endpoint SMTP do Amazon SES (p. 85).

• Um endereço de e-mail que você verificou com o Amazon SES. Para obter mais informações, consulteVerificar identidades no Amazon SES (p. 47).

• Aumento de cotas de envio, se você quiser enviar grandes quantidades de e-mail. Para obter maisinformações, consulte Gerenciar as cotas de envio do Amazon SES (p. 148).

Em seguida, você pode enviar e-mails fazendo o seguinte:

• Para configurar um cliente de e-mail para enviar e-mails pelo Amazon SES, consulte Configuração declientes de e-mail para enviar através do Amazon SES (p. 86).

80

Page 88: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Note

É possível usar somente clientes de e-mail para enviar e-mails pelo Amazon SES. Não épossível usar clientes de e-mail para receber e-mails pelo Amazon SES. No entanto, há outrasmaneiras de receber e-mails que foram enviados para domínios que você usa com o AmazonSES. Para obter mais informações sobre como receber e-mails com o Amazon SES, consulteRecebimento de e-mails com o Amazon SES (p. 196).Se você precisar de uma solução que possa tanto enviar como receber e-mails usando umcliente de e-mail, considere o uso do Amazon WorkMail.

• Para configurar software habilitado para SMTP para enviar e-mail por meio da interface SMTPdo Amazon SES, consulte Envio de e-mail através do Amazon SES a partir de pacotes desoftware (p. 90).

• Para programar um aplicativo para enviar e-mails por meio do Amazon SES, consulte Envio de e-mailpelo Amazon SES a partir do seu aplicativo (p. 91).

• Para configurar seu servidor de e-mails existente para enviar todos os e-mail de saída pelo AmazonSES, consulte Integração do Amazon SES com seu servidor de e-mail existente (p. 92).

• Para interagir com a interface SMTP do Amazon SES usando a linha de comando, que pode ser útil paratestes, consulte Testar o envio de e-mails usando a linha de comando (p. 108).

Para obter uma lista de códigos de resposta do SMTP, consulte Códigos de resposta SMTP retornadospelo Amazon SES. (p. 464).

Informações de e-mail a serem fornecidasQuando você acessar o Amazon SES por meio da interface SMTP, seu aplicativo do cliente SMTPmontará a mensagem, de forma que as informações que precisa fornecer dependerão do aplicativo queestiver usando. No mínimo, a troca de SMTP entre um cliente e um servidor requer um endereço deorigem, um endereço de destino e os dados da mensagem.

Se você estiver usando a interface SMTP e estiver com o encaminhamento de feedback habilitado, suasdevoluções, reclamações e notificações de entrega serão enviadas para o endereço "MAIL FROM".Qualquer endereço "Reply-To" que você especificar não será usado.

Obtenção das suas credenciais SMTP do Amazon SESVocê precisa de um nome de usuário e senha de SMTP do Amazon SES para acessar a interface SMTPdo Amazon SES. Se você planeja usar a interface do SMTP para enviar e-mails em várias regiões daAWS, precisa obter um conjunto exclusivo de credenciais SMTP para cada região.

Important

Sua senha SMTP é diferente da sua chave de acesso secreta da AWS. Para obter maisinformações sobre credenciais, consulte Uso de credenciais com o Amazon SES (p. 398).

Obter as credenciais SMTP do Amazon SES usando o console do Amazon SES

Quando você gerar credenciais SMTP usando o console do Amazon SES, este Amazon SES criará umusuário do IAM com as políticas adequadas para chamar o Amazon SES e fornecer a você as credenciaisSMTP associadas a esse usuário.

Note

Um usuário do IAM pode criar credenciais SMTP do Amazon SES, mas a política do usuáriodo IAM deve fornecer permissão para usar o IAM em si, pois as credenciais SMTP doAmazon SES são criadas usando IAM. Sua política do IAM deve permitir que você execute as

81

Page 89: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

seguintes ações do IAM: iam:ListUsers, iam:CreateUser, iam:CreateAccessKey eiam:PutUserPolicy. Se você tentar criar as credenciais SMTP do Amazon SES usando oconsole e o usuário do IAM não tiver essas permissões, você vê um erro que afirma que suaconta é "não autorizada a realizar iam:ListUsers."

Para criar suas credenciais SMTP

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, selecione SMTP Settings.3. No painel de conteúdo, selecione Create My SMTP Credentials.4. Para Criar usuário para SMTP, digite um nome para seu usuário SMTP. Como alternativa, você pode

usar o valor padrão que é fornecido nesse campo. Ao concluir, selecione Create.

5. Escolha Show User SMTP Credentials. Suas credenciais SMTP são mostradas na tela. Copie essascredenciais e armazene-as em um local seguro. Você também pode escolher Download Credentialspara fazer download de um arquivo que contém suas credenciais.

Important

Esta é a única vez que você pode visualizar suas credenciais SMTP. Recomendamos quevocê faça download dessas credenciais e as mantenha em um local onde elas não serãoexcluídas. Se você perder essas credenciais, você precisa reiniciar o processo de criação doseu usuário SMTP.

6. Escolha Close Window.

É possível exibir uma lista de credenciais SMTP existentes que você criou usando esse procedimentoacessando o console do IAM em https://console.aws.amazon.com/iam/. No painel de navegação, emAccess management (Gerenciamento de acesso), escolha Users (Usuários). Use a barra de pesquisa paralocalizar todos os usuários que contêm o texto "ses-smtp-user".

Também é possível usar o console do IAM para excluir usuários SMTP existentes. Para saber mais sobrecomo excluir usuários, consulte https://docs.aws.amazon.com/IAM/latest/UserGuide/Gerenciar usuários doIAM no Guia de conceitos básicos do IAM.

82

Page 90: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Se pretender alterar a palavra-chave SMTP, exclua o usuário SMTP existente no console do IAM. Depois,conclua os procedimentos acima para gerar um novo conjunto de credenciais SMTP.

Obtenção das credenciais SMTP do Amazon SES ao converter credenciaisexistentes da AWS

Se você tiver um usuário do IAM que configurou usando a interface do IAM, poderá obter as credenciaisSMTP do Amazon SES do usuário com base nas credenciais dele na AWS.

Important

Não use credenciais temporárias da AWS para obter credenciais SMTP. A interface SMTP doAmazon SES não é compatível com credenciais SMTP que tenham sido geradas com base nascredenciais de segurança temporárias.

Para permitir que o usuário do IAM envie e-mail usando a interface SMTP do Amazon SES, você precisafazer as seguintes duas etapas:

• Derivar as credenciais SMTP do usuário a partir das credenciais da AWS usando o algoritmo fornecidonesta seção. Como você está iniciando a partir de credenciais da AWS, o nome de usuário SMTP é omesmo que o ID da chave de acesso da AWS portanto, você só precisa gerar a senha SMTP.

• Aplique a política a seguir ao usuário do IAM.

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

Para obter mais informações sobre como usar o Amazon SES com o IAM, consulte Controle do acessoao Amazon SES (p. 388).

Note

Embora você possa gerar credenciais SMTP do Amazon SES para seu usuário do IAM,recomendamos que você crie um usuário do IAM separado quando gerar suas credenciais SMTP.Para obter mais informações sobre por que é uma boa prática criar usuários para fins específicos,consulte Melhores práticas do IAM.

O pseudocódigo a seguir mostra o algoritmo que converte uma chave de acesso secreta da AWS em umasenha SMTP do Amazon SES.

// Modify this variable to include your AWS Secret Access Keykey = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"; // Modify this variable to refer to the AWS Region that you want to use to send email.region = "us-west-2"; // The values of the following variables should always stay the same.date = "11111111";service = "ses";terminal = "aws4_request";

83

Page 91: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

message = "SendRawEmail";versionInBytes = 0x04;

kDate = HmacSha256(date, "AWS4" + key);kRegion = HmacSha256(region, kDate);kService = HmacSha256(service, kRegion);kTerminal = HmacSha256(terminal, kService);kMessage = HmacSha256(message, kTerminal);signatureAndVersion = Concatenate(versionInBytes, kMessage);smtpPassword = Base64(signatureAndVersion);

Algumas linguagens de programação incluem bibliotecas que você pode usar para converter uma chavede acesso secreta do IAM em uma senha SMTP. Esta seção inclui um exemplo de código que você podeusar para converter uma chave de acesso secreta da AWS em uma senha SMTP do Amazon SES usandoPython.

Python

#!/usr/bin/env python3

import hmacimport hashlibimport base64import argparse

# Values that are required to calculate the signature. These values should# never change.DATE = "11111111"SERVICE = "ses"MESSAGE = "SendRawEmail"TERMINAL = "aws4_request"VERSION = 0x04

def sign(key, msg): return hmac.new(key, msg.encode('utf-8'), hashlib.sha256).digest()

def calculateKey(secretAccessKey, region): signature = sign(("AWS4" + secretAccessKey).encode('utf-8'), DATE) signature = sign(signature, region) signature = sign(signature, SERVICE) signature = sign(signature, TERMINAL) signature = sign(signature, MESSAGE) signatureAndVersion = bytes([VERSION]) + signature smtpPassword = base64.b64encode(signatureAndVersion) print(smtpPassword.decode('utf-8'))

def main(): parser = argparse.ArgumentParser(description='Convert a Secret Access Key for an IAM user to an SMTP password.') parser.add_argument('--secret', help='The Secret Access Key that you want to convert.', required=True, action="store") parser.add_argument('--region', help='The name of the AWS Region that the SMTP password will be used in.', required=True, choices=['us-east-1','us-west-2','eu-west-1'], action="store") args = parser.parse_args()

calculateKey(args.secret,args.region)

main()

84

Page 92: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Conexão ao endpoint SMTP do Amazon SESA tabela a seguir mostra os endpoints SMTP do Amazon SES para as regiões da AWS em que o AmazonSES está disponível.

Nome da região Endpoint de SMTP

Leste dos EUA (Norte da Virgínia) email-smtp.us-east-1.amazonaws.com

Oeste dos EUA (Oregon) email-smtp.us-west-2.amazonaws.com

Ásia Pacífico (Mumbai) email-smtp.ap-south-1.amazonaws.com

Ásia-Pacífico (Sydney) email-smtp.ap-southeast-2.amazonaws.com

Europa (Frankfurt) email-smtp.eu-central-1.amazonaws.com

Europa (Irlanda) email-smtp.eu-west-1.amazonaws.com

O endpoint SMTP do Amazon SES exige que todas as conexões sejam criptografadas usando TransportLayer Security (TLS - Segurança de camada de transporte). (Observe que TLS normalmente é chamadopelo nome do seu protocolo antecessor, SSL.) O Amazon SES oferece suporte a dois mecanismos paraestabelecer conexão criptografada por TLS: STARTTLS e TLS Wrapper. Verifique a documentação do seusoftware para determinar se ele oferece suporte ao STARTTLS, TLS Wrapper ou ambos.

Important

O Amazon Elastic Compute Cloud (Amazon EC2) regula o tráfego de e-mail pela porta 25 porpadrão. Para evitar erros de tempo limite ao enviar e-mails pelo endpoint SMTP do EC2, envieuma Solicitação para remover limitações de envio de e-mail para remover essa limitação. Comoalternativa, é possível enviar e-mails usando uma porta diferente.

STARTTLS

STARTTLS é um meio de atualizar uma conexão não criptografada para uma conexão criptografada.Existem versões do STARTTLS para diversos protocolos; a versão SMTP é definida em RFC 3207.

Para configurar uma conexão STARTTLS, o cliente SMTP se conecta ao endpoint SMTP do Amazon SESnas portas 25, 587 ou 2587, emite um comando EHLO e aguarda o servidor anunciar que é compatívelcom a extensão SMTP STARTTLS. Em seguida, o cliente emite o comando STARTTLS, iniciando anegociação de TLS. Quando a negociação estiver concluída, o cliente emitirá um comando EHLO sobre anova conexão criptografada e a sessão SMTP continuará normalmente.

TLS Wrapper

O TLS Wrapper (também conhecido como SMTPS ou Handshake Protocol) é um meio de iniciar umaconexão criptografada sem antes estabelecer uma conexão não criptografada. Com o TLS Wrapper, oendpoint SMTP do Amazon SES não faz negociação de TLS: é responsabilidade do cliente se conectarao endpoint usando a TLS e continuar usando a TLS por toda a conversa. O TLS Wrapper é um protocolomais antigo, mas ainda é compatível com muitos clientes.

Para configurar uma conexão com o TLS Wrapper, o cliente SMTP se conecta ao endpoint SMTP doAmazon SES na porta 465 ou 2465. O servidor apresenta o seu certificado, o cliente emite um comandoEHLO e a sessão SMTP continua normalmente.

85

Page 93: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Configuração de clientes de e-mail para enviar através doAmazon SESDepois de obter o nome do usuário e a senha do SMTP (p. 81), use a interface SMTP do Amazon SESpara enviar e-mails.

Os procedimentos a seguir mostram como configurar o Mozilla Thunderbird para enviar e-mails usando oAmazon SES. Você poderá configurar outros clientes de e-mail para enviar e-mails por meio do AmazonSES. Consulte a documentação do cliente de e-mail para obter mais informações.

Note

Esses procedimentos mostram como configurar o Mozilla Thunderbird para enviar e-mails usandoo Amazon SES. No entanto, não é possível usar o Thunderbird para receber e-mails enviados aosseus endereços de e-mail do Amazon SES. Para obter mais informações sobre como receber e-mails com o Amazon SES, consulte Recebimento de e-mails (p. 196).

Como configurar o Mozilla Thunderbird para enviar e-mail usando o Amazon SESOs procedimentos nesta seção mostram como configurar o Mozilla Thunderbird para enviar e-mails pormeio do Amazon SES. Esses procedimentos foram testados usando o Mozilla Thunderbird versão 52.5no Windows, macOS e Linux. Esses procedimentos podem diferir levemente para outras versões doThunderbird.

Parte 1: Criar pastas locais

O Amazon SES não inclui pastas baseadas em servidor para salvar itens, como rascunhos e e-mailsenviados. Por esse motivo, você deve criar essas pastas em seu computador. Você configurará oThunderbird para salvar e-mails nessas pastas em uma seção posterior.

Para criar pastas de e-mail enviados e rascunhos

1. No canto inferior esquerdo da janela Thunderbird, clique no ícone Offline Mode (Modo offline)

( ) para habilitar o modooffline. Se o Thunderbird perguntar se você deseja fazer download de mensagens para uso offline,escolha Later.

2. No painel de navegação no lado esquerdo da janela Thunderbird, clique com o botão direito do mouseem uma área em branco e, em seguida, escolha New Folder.

3. Na janela New Folder, preencha as seguintes seções:

• Para Nome, digite Sent Mail.• Em Create as a subfolder of, escolha Local Folders.

4. Repita as etapas 2 e 3 para criar uma pasta adicional, mas dessa vez dê o nome Drafts à pasta.

Parte 2: configurar o servidor SMTP

Antes de enviar e-mails por meio do Amazon SES, é necessário configurar o Thunderbird para que ele seconecte ao endpoint SMTP do Amazon SES.

Para configurar o servidor SMTP

1. No Thunderbird, execute uma das etapas a seguir:

• Se você usar o Windows: selecione o ícone Menu( ), aponte para Options (Opções) e, emseguida, selecione Account Settings (Configurações da conta).

86

Page 94: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

• Se você usar o Linux ou macOS: selecione o ícone Menu( ), aponte para Preferences(Preferências) e, em seguida, selecione Account Settings (Configurações da conta).

2. Na janela Account Settings, na coluna à esquerda, escolha Outgoing Server (SMTP).3. Escolha Adicionar.4. Na janela SMTP Server, preencha as seguintes seções:

• Em Description, digite Amazon SES.• Em Server Name (Nome do servidor), insira o endpoint SMTP da região da AWS na qual você usa

o Amazon SES. Para uma lista de endpoints , consulte the section called “Regiões e endpoints doAmazon SES” (p. 441).

• Em Port, digite 587.• Em Connection security, escolha STARTTLS.• Em Authentication method, escolha Normal password.• Em User Name, digite seu nome de usuário SMTP.

Note

Seu nome de usuário SMTP não é igual ao ID de chave de acesso da AWS. Além disso,você precisa usar as credenciais SMTP específicas para a região da AWS que estáusando. Para obter mais informações, consulte Obtenção das suas credenciais SMTP doAmazon SES (p. 81).

Ao concluir, escolha OK.5. Na janela Account Settings, escolha Account Actions e, em seguida, Add Mail Account.6. Na janela Mail Account Setup, preencha as seguintes seções:

• Em Your name, digite o nome que você deseja que seja exibido nas mensagens enviadas dessaconta.

• Em Email address (Endereço de e-mail), digite o endereço de e-mail usado para enviar e-mails como Amazon SES.

• Deixe o campo Password em branco e desmarque a caixa de seleção ao lado de Rememberpassword.

Ao concluir, escolha Advanced config. Você retorna à janela Account Settings (Configurações deconta).

Note

Você só pode concluir essa etapa se o Thunderbird estiver no modo offline.7. Na janela Account Settings, na coluna à esquerda, selecione a conta que você criou na etapa anterior.8. Em Outgoing Server (SMTP), escolha o servidor SMTP que você criou na etapa 4.

Parte 3: configurar o Thunderbird para salvar e-mails enviados e rascunhos em seu computador

Essa seção contém os procedimentos para salvar e-mails enviados e rascunhos em seu computador.

Para configurar o Thunderbird para salvar e-mails enviados e rascunhos em seu computador

1. Na janela Account Settings, em sua conta, escolha Server Settings.2. Em Server Settings, desmarque as caixas de seleção ao lado dos itens a seguir:

• Check for new messages at startup

87

Page 95: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

• Check for new messages every 10 minutes• Allow immediate server notifications when new messages arrive

3. Na janela Account Settings, em sua conta, escolha Copies & Folders.4. Em When sending messages, automatically, escolha Other e, em seguida, a pasta Sent Mail que você

criou na etapa 3.

5. Em Message Archives, desmarque a caixa de seleção ao lado de Keep message archives in.

6. Em Drafts and Templates, escolha Other e, em seguida, escolha a pasta Drafts que você criou naetapa 4.

Parte 4: testar a funcionalidade de envio de e-mails

Execute os procedimentos nesta seção para garantir que o Thunderbird esteja devidamente configuradopara enviar e-mails por meio do Amazon SES.

Para testar o envio de e-mail no Thunderbird

1. No canto inferior esquerdo da tela, selecione o ícone Offline mode (Modo offline)

( ) para desabilitar o modooffline.

2. Na janela Thunderbird, escolha Write. Envie uma mensagem de teste para si mesmo ou para outroendereço de e-mail que tenha sido verificado com o Amazon SES.

88

Page 96: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Ao enviar o e-mail, você pode ser solicitado a inserir uma senha. Insira sua senha SMTP do AmazonSES e, em seguida, marque a caixa de seleção ao lado de Use Password Manager to remember thispassword (Usar o gerenciador de senhas para lembrar esta senha).

Note

Sua senha SMTP não é a mesma que seu ID de chave de acesso da AWS. Para obter maisinformações, consulte Obtenção das suas credenciais SMTP do Amazon SES (p. 81).

A primeira vez que você enviar um e-mail usando essa configuração, o Thunderbird poderá exibir umamensagem informando que não foi possível conectar-se ao servidor. Se essa mensagem for exibida,clique em Retry.

(Opcional) Parte 5: especificar um conjunto de configurações ao enviar e-mail

Você pode configurar o Thunderbird para que ele permita especificar um conjunto de configurações aoenviar uma nova mensagem.

Warning

Você pode modificar as definições de configuração ocultas no Thunderbird durante esseprocedimento. A alteração dessas configurações pode tornar o Thunderbird inutilizável. Procedacom cuidado.

Para adicionar um cabeçalho ao conjunto de configurações

1. No Thunderbird, selecione o ícone Menu( ), aponte para Options(Opções) e, em seguida, selecione Options (Opções).

2. Na janela Options, escolha Advanced. Na guia General, escolha Config Editor.3. Na janela about:config, clique com o botão direito do mouse em qualquer lugar na lista de definições

de configuração, aponte para New e, em seguida, escolha String.4. Em Enter the preference name (Insira o nome preferencial), digite mail.compose.other.header e,

em seguida, selecione OK.5. Em mail.compose.other.header, digite X-SES-CONFIGURATION-SET e, em seguida, selecione OK.6. Feche a janela about:config e, em seguida, a janela Options.7. Ao enviar um e-mail, digite o endereço do destinatário no campo To. Clique na linha em branco abaixo

do endereço de e-mail do destinatário. Clique no menu To e escolha X-SES-CONFIGURATION-SET.

89

Page 97: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

8. Na linha X-SES-CONFIGURATION-SET, digite o nome do conjunto de configurações que você desejausar. Preencha normalmente as seções restantes do e-mail.

Envio de e-mail através do Amazon SES a partir de pacotes desoftwareHá diversos pacotes de software comerciais e de código aberto que oferecem suporte ao envio de e-mailvia SMTP. Aqui estão alguns exemplos:

• Plataformas de blogs• Agregadores RSS• Software de gerenciamento de listas• Sistemas de fluxo de trabalho

Você pode configurar qualquer software habilitado para SMTP para enviar e-mail por meio da interfaceSMTP do Amazon SES. Para obter instruções sobre como configurar o SMTP para um determinado pacotede software, consulte a documentação desse software.

O procedimento a seguir mostra como configurar o envio de Amazon SES no JIRA, uma conhecidasolução de rastreamento de problemas. Com esta configuração, o JIRA pode notificar os usuários por e-mail sempre que houver uma alteração no status de um problema de software.

Para configurar o JIRA para enviar e-mail usando o Amazon SES

1. Usando seu navegador, faça login no JIRA com as credenciais de administrador.2. Na janela do navegador, escolha Administration.3. No menu System, escolha Mail.4. Na página Mail administration, escolha Mail Servers.5. Escolha Configure new SMTP mail server.6. No formulário Add SMTP Mail Server, preencha os seguintes campos:

a. Name — Um nome descritivo para esse servidor.

90

Page 98: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

b. From address — O endereço de onde o e-mail será enviado. Você precisará verificar esseendereço de e-mail com o Amazon SES antes de enviar a partir dele. Para obter maisinformações sobre verificação, consulte Verificar identidades no Amazon SES (p. 47).

c. Email prefix — Uma string que o JIRA acrescenta para cada linha de assunto antes de enviar.d. Protocol — Escolha SMTP.

Note

Se você não puder se conectar ao Amazon SES usando essa configuração, tenteSECURE_SMTP.

e. Host Name — Consulte Conexão ao endpoint SMTP do Amazon SES (p. 85) para veruma lista de endpoints SMTP do Amazon SES. Por exemplo, se você quiser usar o endpointdo Amazon SES na região Oeste dos EUA (Oregon), o nome do host seria email-smtp.us-west-2.amazonaws.com.

f. SMTP Port — 25, 587 ou 2587 (para se conectar usando STARTTLS), ou 465 ou 2465 (para seconectar usando TLS Wrapper).

g. TLS — Marque esta caixa.h. Username — Seu nome de usuário de SMTP.i. Password — Sua senha SMTP.

As configurações para TLS Wrapper estão exibidas abaixo.

7. Escolha Test Connection. Se o e-mail de teste que o JIRA envia pelo Amazon SES chegar comsucesso, sua configuração estará concluída.

Envio de e-mail pelo Amazon SES a partir do seu aplicativoMuitas linguagens de programação oferecem suporte ao envio de e-mail usando SMTP. Este recurso podeser construído na linguagem de programação em si ou estar disponível como um suplemento, plug-in oubiblioteca. Você pode aproveitar esse recurso enviando e-mail pelo Amazon SES de dentro dos programasde aplicativo que você grava.

91

Page 99: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Para obter exemplos em C# e Java, consulte Enviar um e-mail acessando a interface SMTP do AmazonSES programaticamente (p. 20) na seção Conceitos básicos.

Integração do Amazon SES com seu servidor de e-mail existenteSe você administrar atualmente seu próprio servidor de e-mails, poderá usar o endpoint SMTP doAmazon SES para enviar todos os e-mails de saída ao Amazon SES. Não há necessidade de modificar osaplicativos e clientes de e-mail existentes; a mudança para o Amazon SES será transparente para eles.

Vários agentes de transferência de e-mail (MTAs) oferecem suporte ao envio de e-mails por meio detransmissões SMTP. Esta seção dá orientações gerais sobre como configurar alguns MTAs conhecidospara enviar e-mails usando a interface SMTP do Amazon SES.

O endpoint SMTP do Amazon SES exige que todas as conexões sejam criptografadas usando TransportLayer Security (TLS - Segurança de camada de transporte).

Tópicos• Integração do Amazon SES com o Postfix (p. 92)• Integração do Amazon SES com Sendmail (p. 96)• Integração do Amazon SES com o Microsoft Exchange (p. 99)• Integração do Amazon SES com IIS SMTP do Microsoft Windows Server (p. 105)• Integração do Amazon SES com o Exim (p. 106)

Integração do Amazon SES com o PostfixPostfix é uma alternativa ao Message Transfer Agent (MTA) do Sendmail. Para obter informações sobrePostfix, acesse http://www.postfix.org. Os procedimentos neste tópico funcionarão com Linux, macOS, orUnix.

Note

Postfix é um aplicativo de terceiros e não foi desenvolvido nem tem suporte da Amazon WebServices. Os procedimentos nesta seção são fornecidos somente para fins informativos e estãosujeitos a alterações sem aviso prévio.

Pré-requisitos

Antes de concluir os procedimentos desta seção, você precisa realizar as seguintes tarefas:

• Desinstale o Sendmail, se já estiver instalado em seu sistema. O procedimento para concluir esta etapapode variar dependendo de seu sistema operacional.

• Instale o Postfix. O procedimento para concluir esta etapa pode variar dependendo de seu sistemaoperacional.

• Instale um pacote de autenticação SASL. O procedimento para concluir esta etapa pode variardependendo de seu sistema operacional. Por exemplo, se usar um sistema RedHat, deverá instalaro pacote cyrus-sasl-plain. Se usar um sistema Debian ou Ubuntu, deverá instalar o pacotelibsasl2-modules.

• Confirme o endereço de e-mail ou domínio que você usará para enviar e-mails. Para obter maisinformações, consulte Verificar endereços de e-mail no Amazon SES (p. 47).

• Se a sua conta ainda estiver no sandbox, você só poderá enviar e-mail para endereços de e-mailverificados. Para obter mais informações, consulte Sair da sandbox do Amazon SES (p. 73).

Configuração do Postfix

Faça os seguintes procedimentos a fim de configurar seu servidor de e-mail para enviar e-mails por meiodo Amazon SES usando o Postfix.

92

Page 100: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Para configurar o Postfix

1. Na linha de comando, digite o seguinte comando:

sudo postconf -e "relayhost = [email-smtp.us-west-2.amazonaws.com]:587" \"smtp_sasl_auth_enable = yes" \"smtp_sasl_security_options = noanonymous" \"smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd" \"smtp_use_tls = yes" \"smtp_tls_security_level = encrypt" \"smtp_tls_note_starttls_offer = yes"

Note

Se você usar o Amazon SES em uma região da AWS diferente da Oeste dos EUA (Oregon),substitua email-smtp.us-west-2.amazonaws.com no comando anterior pelo endpointdo SMTP da região apropriada. Para obter mais informações, consulte Regiões (p. 441).

2. Em um editor de textos, abra o arquivo /etc/postfix/master.cf. Procure a seguinte entrada:

-o smtp_fallback_relay=

Se você encontrar essa entrada, faça um comentário, colocando um caractere # (hash) no início dalinha. Salve e feche o arquivo .

Caso contrário, se essa entrada não estiver presente, vá para a próxima etapa.3. Em um editor de textos, abra o arquivo /etc/postfix/sasl_passwd. Se o arquivo ainda não

existir, crie-o.4. Adicione a seguinte linha a /etc/postfix/sasl_passwd:

[email-smtp.us-west-2.amazonaws.com]:587 SMTPUSERNAME:SMTPPASSWORD

Note

Substitua SMTPUSERNAME e SMTPPASSWORD pelo seu nome de usuário e senha do SMTP,respectivamente. O nome do usuário e a senha SMTP não são iguais ao ID de chavede acesso e à chave de acesso secreta da AWS. Para obter mais informações sobrecredenciais, consulte the section called “Obtenção das suas credenciais SMTP” (p. 81).Se você usar o Amazon SES em uma região da AWS diferente da Oeste dos EUA (Oregon),substitua email-smtp.us-west-2.amazonaws.com no exemplo acima pelo endpoint doSMTP da região apropriada. Para obter mais informações, consulte Regiões (p. 441).

Salve e feche sasl_passwd.5. Em um prompt de comando, digite o comando a seguir para criar um arquivo de banco de dados de

hashmap que contém suas credenciais SMTP:

sudo postmap hash:/etc/postfix/sasl_passwd

6. (Opcional) Os arquivos /etc/postfix/sasl_passwd e /etc/postfix/sasl_passwd.dbque você criou nas etapas anteriores não são criptografados. Como esses arquivos contêm suascredenciais do SMTP, recomendamos que você modifique a propriedade e as permissões dosarquivos para restringir o acesso a eles. Para restringir o acesso a esses arquivos:

a. Em um prompt de comando, digite o comando a seguir para alterar a propriedade dos arquivos:

sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

93

Page 101: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

b. Em um prompt de comando, digite o comando a seguir para alterar as permissões dos arquivosde modo que apenas o usuário raiz possa ler ou gravar neles:

sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

7. Diga ao Postfix onde encontrar o certificado CA (necessário para verificar o certificado do servidorAmazon SES). O comando que você usa nesta etapa varia de acordo com o seu sistema operacional.

• Se você usa Amazon Linux, Red Hat Enterprise Linux ou uma distribuição relacionada, digite ocomando a seguir:

sudo postconf -e 'smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt'

• Se você usa Ubuntu ou uma distribuição relacionada, digite o comando a seguir:

sudo postconf -e 'smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt'

• Se você usa macOS, pode gerar o certificado a partir do conjunto de chaves do sistema. Para geraro certificado, digite o comando a seguir na linha de comando:

sudo security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain > /etc/ssl/certs/ca-bundle.crt

Depois que você gerar o certificado, digite o comando a seguir:

sudo postconf -e 'smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt'

8. Digite o comando a seguir para iniciar o servidor do Postfix (ou para recarregar os parâmetros deconfiguração, se o servidor já estiver em execução):

sudo postfix start; sudo postfix reload

9. Envie um e-mail de teste digitando o seguinte em uma linha de comando, pressionando Enter apóscada linha. Substitua [email protected] pelo endereço de e-mail De. O endereço De precisaser verificado para uso com o Amazon SES. Substitua destinatá[email protected] pelo endereçode destino. Se sua conta ainda estiver na sandbox, o endereço do destinatário também precisa serverificado. Por fim, a última linha da mensagem precisa conter um ponto final (.) sem nenhum outroconteúdo.

sendmail -f [email protected] [email protected]: Sender Name <[email protected]>Subject: Amazon SES Test This message was sent using Amazon SES. .

10. Marque a caixa de correio associada ao endereço de destinatário. Se o e-mail não chegar, verifiquesua pasta de spam. Se você ainda não conseguir localizar o e-mail, verifique o log de e-mails nosistema que usou para enviar o e-mail (normalmente localizado em /var/log/maillog) para obtermais informações.

Exemplo de uso avançado

Este exemplo mostra como enviar um e-mail que usa um conjunto de configurações (p. 244) e que usaa codificação MIME multipartes para enviar uma versão da mensagem tanto em texto simples quantoem HTML junto com um anexo. Isso também inclui uma tag de link (p. 495), que pode ser usada para

94

Page 102: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

categorizar eventos de clique. O conteúdo do e-mail é especificado em um arquivo externo, de modo quevocê não precise digitar manualmente os comandos na sessão do Postfix.

Para enviar um e-mail MIME multipartes usando o Postfix

1. Em um editor de texto, crie um novo arquivo chamado mime-email.txt.2. No arquivo de texto, cole o conteúdo a seguir, substituindo os valores em vermelho pelos valores

apropriados para a sua conta:

X-SES-CONFIGURATION-SET: ConfigSetFrom:Sender Name <[email protected]>Subject:Amazon SES TestMIME-Version: 1.0Content-Type: multipart/mixed; boundary="YWVhZDFlY2QzMGQ2N2U0YTZmODU"

--YWVhZDFlY2QzMGQ2N2U0YTZmODUContent-Type: multipart/alternative; boundary="3NjM0N2QwMTE4MWQ0ZTg2NTYxZQ"

--3NjM0N2QwMTE4MWQ0ZTg2NTYxZQContent-Type: text/plain; charset=UTF-8Content-Transfer-Encoding: quoted-printable

Amazon SES Test

This message was sent from Amazon SES using the SMTP interface.

For more information, see:http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp.html

--3NjM0N2QwMTE4MWQ0ZTg2NTYxZQContent-Type: text/html; charset=UTF-8Content-Transfer-Encoding: quoted-printable

<html> <head></head> <body> <h1>Amazon SES Test</h1> <p>This message was sent from Amazon SES using the SMTP interface.</p> <p>For more information, see <a ses:tags="samplekey0:samplevalue0;samplekey1:samplevalue1;" href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp.html"> Using the Amazon SES SMTP Interface to Send Email</a> in the <em>Amazon SES Developer Guide</em>.</p> </body></html>--3NjM0N2QwMTE4MWQ0ZTg2NTYxZQ----YWVhZDFlY2QzMGQ2N2U0YTZmODUContent-Type: application/octet-streamMIME-Version: 1.0Content-Transfer-Encoding: base64Content-Disposition: attachment; filename="customers.txt"

SUQsRmlyc3ROYW1lLExhc3ROYW1lLENvdW50cnkKMzQ4LEpvaG4sU3RpbGVzLENhbmFkYQo5MjM4OSxKaWUsTGl1LENoaW5hCjczNCxTaGlybGV5LFJvZHJpZ3VleixVbml0ZWQgU3RhdGVzCjI4OTMsQW5heWEsSXllbmdhcixJbmRpYQ==--YWVhZDFlY2QzMGQ2N2U0YTZmODU--

Salve e feche o arquivo .3. Na linha de comando, digite o seguinte comando. Substitua [email protected] pelo seu

endereço de e-mail e [email protected] pelo endereço do destinatário.

95

Page 103: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

sendmail -f [email protected] [email protected] < mime-email.txt

Se o comando for executado com êxito, ele será encerrado sem fornecer nenhuma saída.4. Verifique o e-mail na sua caixa de entrada. Se a mensagem não tiver sido entregue, verifique o log de

mensagens do seu sistema.

Integração do Amazon SES com Sendmail

O Sendmail foi lançado no início dos anos 1980 e vem ganhando continuamente melhorias. É um agentede transferência de mensagens (MTA) flexível e configurável com uma grande comunidade de usuários.O Sendmail foi adquirido pela Proofpoint em 2013, mas a Proofpoint continua oferecendo uma versão decódigo aberto do Sendmail. Você pode fazer download da versão de código aberto do Sendmail no site daProofpoint ou por meio dos gerenciadores de pacote da maioria das distribuições do Linux.

As instruções nesta seção mostram como configurar o Sendmail para enviar e-mails por meio do AmazonSES. Este procedimento foi testado em um servidor que executa o Ubuntu 18.04.2 LTS.

Note

Sendmail é um aplicativo de terceiros e não foi desenvolvido nem tem suporte da Amazon WebServices. Os procedimentos nesta seção são fornecidos somente para fins informativos e estãosujeitos a alterações sem aviso prévio.

Pré-requisitos

Antes de concluir o procedimento desta seção, você deverá concluir as seguintes etapas:

• Instalar o pacote do Sendmail no servidor.

Note

Dependendo da distribuição do sistema operacional que você usa, talvez também sejanecessário instalar os seguintes pacotes: sendmail-cf, m4 e cyrus-sasl-plain.

• Verificar uma identidade para usar como seu endereço de remetente. Para obter mais informações,consulte Verificar endereços de e-mail no Amazon SES (p. 47).

Se sua conta ainda estiver na área restrita do Amazon SES, você também deverá verificar os endereçospara os quais enviará e-mails. Para obter mais informações, consulte Sair da sandbox do AmazonSES (p. 73).

Se estiver usando o Amazon SES para enviar e-mails de uma instância do Amazon EC2, você tambémdeverá concluir as seguintes etapas:

• Se você estiver usando o Amazon SES para enviar e-mails de uma instância do Amazon EC2, talvezseja necessário atribuir um endereço IP elástico à sua instância do Amazon EC2 para que os provedoresque recebem e-mail aceitem seu e-mail. Para obter mais informações, consulte Endereços IP elásticosdo Amazon EC2.

• Se estiver usando o Amazon SES para enviar e-mails de uma instância do Amazon EC2, você deverápreencher o formulário Solicitação para remover limitações de envio de e-mail. Solicitar essa alteraçãoremove as restrições que o Amazon EC2 aplica à porta 25 por padrão.

Configurar o Sendmail

Conclua as etapas nesta seção para configurar o Sendmail para enviar e-mail usando o Amazon SES.

96

Page 104: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Important

O procedimento descrito nesta seção pressupõe que você deseja usar o Amazon SES na regiãoOeste dos EUA (Oregon) da AWS. Se você quiser usar uma região diferente, substitua todas asinstâncias de email-smtp.us-west-2.amazonaws.com neste procedimento pelo endpoint SMTP daregião desejada. Para obter uma lista de URLs de endpoint SMTP para as regiões da AWS ondeo Amazon SES está disponível, consulte .Amazon Simple Email Service (Amazon SES) na AWSGeneral Reference.

Para configurar o Sendmail

1. Em um editor de arquivo, abra o arquivo /etc/mail/authinfo. Se o arquivo não existir, crie-o.

Adicione a linha a seguir a /etc/mail/authinfo:

AuthInfo:email-smtp.us-west-2.amazonaws.com "U:root" "I:smtpUsername" "P:smtpPassword" "M:PLAIN"

No exemplo anterior, faça as seguintes alterações:

• Substitua email-smtp.us-west-2.amazonaws.com pelo endpoint SMTP do Amazon SES a serusado.

• Substitua smtpUsername pelo seu nome de usuário SMTP do Amazon SES.• Substitua smtpPassword por sua senha SMTP do Amazon SES.

Note

Seu nome de usuário e senha SMTP são diferentes do seu ID de chave de acesso e dachave de acesso secreta da AWS. Para obter mais informações sobre como obter o nomede usuário e a senha SMTP, consulte Obtenção das suas credenciais SMTP do AmazonSES (p. 81).

Quando terminar, salve authinfo.2. Na linha de comando, digite o comando a seguir para gerar o arquivo /etc/mail/authinfo.db:

sudo sh -c 'makemap hash /etc/mail/authinfo.db < /etc/mail/authinfo'

3. Na linha de comando, digite o comando a seguir para adicionar o suporte à retransmissão para oendpoint SMTP do Amazon SES.

sudo sh -c 'echo "Connect:email-smtp.us-west-2.amazonaws.com RELAY" >> /etc/mail/access'

No comando anterior, substitua email-smtp.us-west-2.amazonaws.com pelo endereço doendpoint SMTP do Amazon SES a ser usado.

4. Na linha de comando, digite o comando a seguir para gerar novamente /etc/mail/access.db:

sudo sh -c 'makemap hash /etc/mail/access.db < /etc/mail/access'

5. Na linha de comando, digite o comando a seguir para criar backups dos arquivos sendmail.cf esendmail.mc:

sudo sh -c 'cp /etc/mail/sendmail.cf /etc/mail/sendmail_cf.backup && cp /etc/mail/sendmail.mc /etc/mail/sendmail_mc.backup'

97

Page 105: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

6. Adicione as seguintes linhas ao arquivo /etc/mail/sendmail.mc antes de qualquer definição doMAILER().

define(`SMART_HOST', `email-smtp.us-west-2.amazonaws.com')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 25')dnldefine(`confAUTH_MECHANISMS', `LOGIN PLAIN')dnlFEATURE(`authinfo', `hash -o /etc/mail/authinfo.db')dnlMASQUERADE_AS(`example.com')dnlFEATURE(masquerade_envelope)dnlFEATURE(masquerade_entire_domain)dnl

No texto anterior, faça o seguinte:

• Substitua email-smtp.us-west-2.amazonaws.com pelo endpoint SMTP do Amazon SES a serusado.

• Substitua example.com pelo domínio do qual você está enviando e-mails.

Ao concluir, salve o arquivo.7. Na linha de comando, digite o comando a seguir para tornar sendmail.cf gravável:

sudo chmod 666 /etc/mail/sendmail.cf

8. Na linha de comando, digite o comando a seguir para gerar novamente sendmail.cf:

sudo sh -c 'm4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf'

Note

Se você encontrar erros como "Comando não encontrado" e "Este arquivo ou diretório nãoexiste", verifique se os pacotes m4 e sendmail-cf estão instalados em seu sistema.

9. Na linha de comando, digite o comando a seguir para redefinir as permissões de sendmail.cf comosomente leitura:

sudo chmod 644 /etc/mail/sendmail.cf

10. Na linha de comando, digite o comando a seguir para reiniciar o Sendmail:

sudo /etc/init.d/sendmail restart

11. Conclua as etapas a seguir para enviar um e-mail de teste:

a. Na linha de comando, insira o seguinte comando:

/usr/sbin/sendmail -vf [email protected] [email protected]

Substitua [email protected] pelo endereço de e-mail do remetente. [email protected] pelo endereço do destinatário. Quando terminar, pressione Enter.

b. Insira o conteúdo de mensagem a seguir. Pressione Enter ao final de cada linha.

From: [email protected]: [email protected]: Amazon SES test email

This is a test message sent from Amazon SES using Sendmail.

98

Page 106: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Quando terminar de inserir o conteúdo do e-mail, pressione Ctrl+D para enviá-lo.12. Verifique o cliente de e-mail do destinatário para o e-mail. Se você não encontrar o e-mail, verifique a

pasta de spam. Se você ainda não conseguir localizar o e-mail, verifique o log do Sendmail no servidorde e-mail. O log está normalmente localizado em /var/log/mail.log.

Integração do Amazon SES com o Microsoft Exchange

Você pode configurar o Microsoft Exchange para enviar e-mail por meio do Amazon SES. Osprocedimentos a seguir mostram como integrar o Microsoft Exchange com o Amazon SES usando a GUIdo Microsoft Exchange ou Windows PowerShell.

Note

Microsoft Exchange é um aplicativo de terceiros e não foi desenvolvido nem tem suporte daAmazon Web Services. Os procedimentos nesta seção são fornecidos somente para finsinformativos e estão sujeitos a alterações sem aviso prévio.

Essas instruções foram gravadas usando o Microsoft Exchange 2013.

Important

Siga apenas um dos procedimentos a seguir (GUI do Microsoft Exchange ou WindowsPowerShell). Se você seguir os dois procedimentos, receberá uma mensagem de erro informandoque há dois conectores de envio com o mesmo nome.

Para integrar o Microsoft Exchange com o Amazon SES usando a GUI do Microsoft Exchange

1. Vá para a central de administração do Microsoft Exchange (geralmente https://<CASServerName>/ecp) e faça login como um usuário que faz parte do grupo de administradores do Exchange.

2. No menu à esquerda, selecione mail flow.

99

Page 107: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

3. Escolha send connectors.

4. Escolha o sinal de adição.5. Insira um nome para o conector de envio (por exemplo, SES).6. Em Type, selecione Internet.

100

Page 108: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

7. Escolha Next.8. Selecione Route mail through smart hosts.

101

Page 109: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

9. Escolha o sinal de adição e, em seguida, insira o endpoint do Amazon SES que você usará (porexemplo, email-smtp.us-west-2.amazonaws.com). Para obter uma lista de URLs de endpoint paraas regiões da AWS onde o Amazon SES está disponível, consulte Amazon Simple Email Service(Amazon SES) em AWS General Reference.

10. Escolha Salvar. O endpoint que você inseriu aparecerá na caixa SMART HOST.11. Escolha Next.12. Selecione Basic authentication, em seguida Offer basic authentication only after starting TLS e digite

seu nome de usuário e sua senha de SMTP do Amazon SES.

Important

Seu nome de usuário e senha SMTP não são iguais ao seu ID de chave de acesso e à chavede acesso secreta da AWS. Não tente usar suas credenciais da AWS para se autenticar noendpoint SMTP. Para obter mais informações sobre credenciais, consulte Uso de credenciaiscom o Amazon SES (p. 398).

13. Escolha Next.14. Escolha o sinal de adição.15. Verifique se Type é SMTP, FQDN é * e Cost é 1.

102

Page 110: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

16. Escolha Save e, em seguida, Next.17. Escolha o sinal de adição.18. Selecione todos os servidores de transporte que você gostaria de aplicar a essa regra e escolha

Add. Quando você tiver adicionado todos os servidores que deseja enviar e-mails pelo Amazon SES,escolha ok.

103

Page 111: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

19. Verifique se os servidores foram adicionados e, em seguida, escolha finish.

Você agora deve ver um conector de envio para o Amazon SES com o status ativado. Todas asmensagens de saída atravessarão o Amazon SES.

Para integrar o Microsoft Exchange com o Amazon SES usando o Windows PowerShell

1. Abra o Exchange Management Shell e digite $creds = Get-Credential. Será exibida a caixa dediálogo Windows PowerShell Credential Request.

2. Na caixa de diálogo, insira o nome de usuário e a senha do SMTP do Amazon SES e escolha OK.

Important

Seu nome de usuário e senha SMTP não são iguais ao seu ID de chave de acesso e à chavede acesso secreta da AWS. Não tente usar suas credenciais da AWS para se autenticar noendpoint SMTP. Para obter mais informações sobre credenciais, consulte Uso de credenciaiscom o Amazon SES (p. 398).

104

Page 112: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

3. No prompt de comando, digite a seguinte linha, substituindo ENDPOINT por um endpoint SMTP doAmazon SES (por exemplo, email-smtp.us-west-2.amazonaws.com). Para obter uma lista de URLsde endpoint para as regiões da AWS onde o Amazon SES está disponível, consulte Amazon SimpleEmail Service (Amazon SES) em AWS General Reference.

New-SendConnector -Name "SES" -AddressSpaces "*;1" -SmartHosts"ENDPOINT" -SmartHostAuthMechanism BasicAuthRequireTLS -Usage Internet -AuthenticationCredential $creds

A linha de comando agora deve exibir um conector de envio para o Amazon SES com um statusativado. Todas as mensagens de saída atravessarão o Amazon SES.

Integração do Amazon SES com IIS SMTP do Microsoft Windows Server

Você pode configurar o servidor IIS SMTP do Microsoft Windows Server para enviar e-mails pelo AmazonSES. Essas instruções foram gravadas usando o Microsoft Windows Server 2012 em uma instância doAmazon EC2. Você pode usar a mesma configuração no Microsoft Windows Server 2008 e no MicrosoftWindows Server 2008 R2.

Note

Windows Server é um aplicativo de terceiros e não foi desenvolvido nem tem suporte da AmazonWeb Services. Os procedimentos nesta seção são fornecidos somente para fins informativos eestão sujeitos a alterações sem aviso prévio.

Para integrar o servidor IIS SMTP do Microsoft Windows Server com o Amazon SES

1. Primeiro, configure o Microsoft Windows Server 2012 usando as instruções a seguir.

a. No console de gerenciamento do Amazon EC2, inicie uma nova instância do Amazon EC2Microsoft Windows Server 2012 Base.

b. Conecte-se à instância e faça login usando a Área de Trabalho Remota, seguindo as instruçõesem Conceitos básicos das instâncias do Windows do Amazon EC2.

c. Inicie o Server Manager Dashboard.d. Instale a função Web Server. Inclua IIS 6 Management Compatibility Tools (uma opção abaixo da

caixa de seleção Web Server).e. Instale o recurso SMTP Server.

2. Em seguida, configure o serviço IIS SMTP usando as instruções a seguir.

a. Volte para Server Manager Dashboard.b. No menu Tools, escolha Internet Information Services (IIS) 6.0 Manager.c. Clique com o botão direito em SMTP Virtual Server #1 e selecione Properties.d. Na guia Access, em Relay Restrictions, escolha Relay.e. Na caixa de diálogo Relay Restrictions, escolha Add.f. Em Single Computer, insira 127.0.0.1 para o endereço IP. Você agora concedeu acesso para este

servidor transmitir e-mail ao Amazon SES por meio do serviço SMTP IIS.

Neste procedimento, consideramos que seus e-mails são gerados neste servidor. Se o aplicativoque gera o e-mail for executado em um servidor separado, será necessário conceder o acesso detransmissão para esse servidor no IIS SMTP.

105

Page 113: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Note

Para ampliar a transmissão SMTP para sub-redes privadas, para Relay Restriction,use Single Computer 127.0.0.1 e Group of Computers 172.1.1.0 - 255.255.255.0 (naseção de máscara de rede). Para Connection, use Single Computer 127.0.0.1 e Group ofComputers 172.1.1.0 - 255.255.255.0 (na seção de máscara de rede).

3. Por fim, configure o servidor para enviar e-mails pelo Amazon SES usando as instruções a seguir.

a. Volte para a caixa de diálogo SMTP Virtual Server #1 Properties e selecione a guia Delivery.b. Na guia Delivery, escolha Outbound Security.c. Selecione Basic Authentication e, em seguida, insira seu nome de usuário e senha SMTP

do Amazon SES. Você pode obter essas credenciais do console do Amazon SES usando oprocedimento em Obtenção das suas credenciais SMTP do Amazon SES (p. 81).

Important

Seu nome de usuário e senha SMTP não são iguais ao seu ID de chave de acesso eà chave de acesso secreta da AWS. Não tente usar suas credenciais da AWS para seautenticar no endpoint SMTP. Para obter mais informações sobre credenciais, consulteUso de credenciais com o Amazon SES (p. 398).

d. Verifique se TLS encryption está selecionada.e. Volte para a guia Delivery.f. Escolha Outbound Connections.g. Na caixa de diálogo Outbound Connections, verifique se a porta é 25 ou 587.h. Escolha Advanced.i. Para o nome de Smart host, insira o endpoint do Amazon SES que você usará (por exemplo,

email-smtp.us-west-2.amazonaws.com). Para obter uma lista de URLs de endpoint para asregiões da AWS onde o Amazon SES está disponível, consulte Amazon Simple Email Service(Amazon SES) em AWS General Reference.

j. Volte para Server Manager Dashboard.k. No Server Manager Dashboard, clique com o botão direito sobre SMTP Virtual Server #1 e

reinicie o serviço para pegar a nova configuração.l. Envie um e-mail por meio deste servidor. Você pode examinar os cabeçalhos de mensagem para

confirmar que ele foi entregue pelo Amazon SES.

Integração do Amazon SES com o EximExim é um Mail Transfer Agent (MTA) altamente flexível e configurável. Para saber mais sobre o Exim,acesse o site do Exim.

Note

Exim é um aplicativo de terceiros e não foi desenvolvido nem tem suporte da Amazon WebServices. Os procedimentos nesta seção são fornecidos somente para fins informativos e estãosujeitos a alterações sem aviso prévio.

Como configurar o Exim para enviar e-mail pelo Amazon SES

1. Em um editor de textos, abra o arquivo /etc/exim.conf.local. Se o arquivo não existir, copie omodelo de /etc/exim4/exim4.conf.template.

2. Mo /etc/exim.conf.local, faça as seguintes alterações:

a. Na seção routers, após a linha begin routers, adicione o seguinte:

send_via_ses:

106

Page 114: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

driver = manualroutedomains = ! +local_domainstransport = ses_smtproute_list = * email-smtp.us-west-2.amazonaws.com;

No código anterior, substitua email-smtp.us-west-2.amazonaws.com pelo endpoint deSMTP que você deseja usar para enviar a mensagem. Para obter mais informações, consulteRegiões e o Amazon SES (p. 441).

b. Na seção transports, após a linha begin transports, adicione o seguinte:

ses_smtp:driver = smtpport = 587hosts_require_auth = *hosts_require_tls = *

c. Na seção authenticators, após a linha begin authenticators, adicione o seguinte:

ses_login:driver = plaintextpublic_name = LOGINclient_send = : USERNAME : PASSWORD

No código anterior, substitua USERNAME pelo seu nome de usuário de SMTP e PASSWORD pelasua senha de SMTP.

Important

Suas credenciais de SMTP não são iguais ao ID da chave de acesso e à chave deacesso secreta da AWS. Para obter mais informações sobre como obter as credenciaisde SMTP, consulte Obtenção das suas credenciais SMTP do Amazon SES (p. 81).

3. Salvar /etc/exim.conf.local.4. Quando terminar de atualizar a configuração, digite o comando a seguir para reiniciar o Exim.

sudo /etc/init.d/exim4 restart

Note

Esse comando pode ser diferente dependendo do sistema operacional usado.5. Na linha de comando, conclua as seguintes etapas para enviar uma mensagem de teste:

a. Digite o comando

exim -v [email protected]

Substitua [email protected] pelo endereço para o qual você deseja enviar amensagem.

b. Insira o seguinte, pressionando Enter no final de cada linha:

From: [email protected]: Test messageThis is a test.

.

107

Page 115: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

No comando anterior, substitua [email protected] pelo endereço de e-mail do qual vocêdeseja enviar a mensagem.

Quando você pressionar Enter após o ponto final (.), o Exim começará a conversa com o servidorSMTP. Se a conexão permanecer aberta depois que a mensagem for enviada, pressione Ctrl+Dpara fechá-la.

Tip

Se a mensagem não for entregue, verifique os erros no log de e-mails do seu sistema. Olog de e-mails do Exim geralmente está localizado em /var/log/exim4/mainlog.

Testar o envio de e-mails usando a linha de comandoÉ possível interagir com a interface SMTP do Amazon SES a partir da linha de comando do sistemaoperacional. Os métodos descritos nesta seção foram elaborados para testar a conexão com o endpointSMTP do Amazon SES, validar as credenciais SMTP e solucionar problemas de conexão. Essesprocedimentos usam ferramentas e bibliotecas que estão incluídas nos sistemas operacionais maiscomuns.

Para obter informações adicionais sobre como solucionar problemas de conexão SMTP, consulte AmazonSESProblemas de SMTP (p. 463).

Pré-requisitosAo conectar-se à interface SMTP do Amazon SES, é necessário fornecer um conjunto de credenciaisSMTP. Essas credenciais de SMTP são diferentes das suas credenciais padrão da AWS. Os dois tiposde credenciais não são intercambiáveis. Para obter mais informações sobre como obter as credenciais deSMTP, consulte the section called “Obtenção das suas credenciais SMTP” (p. 81).

Como testar sua conexão com a interface SMTP do Amazon SESÉ possível usar a linha de comando para testar sua conexão com a interface SMTP do Amazon SES semautenticar ou enviar nenhuma mensagem. Esse procedimento é útil para solucionar problemas básicos deconectividade.

Esta seção inclui procedimentos para testar sua conexão usando tanto o OpenSSL (que está incluídona maioria das distribuições Linux, macOS e Unix e também está disponível para Windows) como oPowerShell (que está incluído nas versões mais recentes do Windows e Windows Server).

Linux, macOS, or Unix

Há duas maneiras de se conectar à interface SMTP do Amazon SES com OpenSSL: usando SSLexplícito na porta 587 ou usando SSL implícito na porta 465.

Como se conectar à interface SMTP usando SSL explícito

• Na linha de comando, insira o seguinte comando para se conectar ao servidor SMTP do AmazonSES:

openssl s_client -crlf -quiet -starttls smtp -connect email-smtp.us-west-2.amazonaws.com:587

No comando anterior, substitua email-smtp.us-west-2.amazonaws.com pelo URL doendpoint SMTP do Amazon SES para sua região da AWS. Para obter mais informações, consulteRegiões (p. 441).

Se a conexão for bem-sucedida, você verá um resultado semelhante a este:

108

Page 116: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

depth=2 C = US, O = Amazon, CN = Amazon Root CA 1verify return:1depth=1 C = US, O = Amazon, OU = Server CA 1B, CN = Amazonverify return:1depth=0 CN = email-smtp.us-west-2.amazonaws.comverify return:1250 Ok

A conexão se fecha automaticamente após cerca de 10 segundos de inatividade.

Como alternativa, é possível usar SSL implícito para se conectar à interface SMTP pela porta 465.

Como conectar-se à interface SMTP usando SSL implícito

• Na linha de comando, insira o seguinte comando para se conectar ao servidor SMTP do AmazonSES:

openssl s_client -crlf -quiet -connect email-smtp.us-west-2.amazonaws.com:465

No comando anterior, substitua email-smtp.us-west-2.amazonaws.com pelo URL doendpoint SMTP do Amazon SES para sua região da AWS. Para obter mais informações, consulteRegiões (p. 441).

Se a conexão for bem-sucedida, você verá um resultado semelhante a este:

depth=2 C = US, O = Amazon, CN = Amazon Root CA 1verify return:1depth=1 C = US, O = Amazon, OU = Server CA 1B, CN = Amazonverify return:1depth=0 CN = email-smtp.us-west-2.amazonaws.comverify return:1220 email-smtp.amazonaws.com ESMTP SimpleEmailService-d-VCSHDP1YZ A1b2C3d4E5f6G7h8I9j0

A conexão se fecha automaticamente após cerca de 10 segundos de inatividade.

PowerShell

É possível usar o cmdlet Test-NetConnection no PowerShell para se conectar ao servidor SMTP doAmazon SES.

Note

O cmdlet Test-NetConnection pode determinar se o computador pode se conectarao endpoint SMTP do Amazon SES No entanto, isso não testa se o computador podeestabelecer uma conexão SSL implícita ou explícita com o endpoint SMTP. Para testar umaconexão SSL, é possível instalar o OpenSSL para Windows ou concluir o procedimento noUsar a linha de comando para enviar e-mail pela interface SMTP do Amazon SES (p. 110)para enviar um e-mail de teste.

Como conectar-se à interface SMTP usando o cmdlet Test-NetConnection

• No PowerShell, insira o seguinte comando para se conectar ao servidor SMTP do Amazon SES:

Test-NetConnection -Port 587 -ComputerName email-smtp.us-west-2.amazonaws.com

109

Page 117: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

No comando anterior, substitua email-smtp.us-west-2.amazonaws.com pelo URL doendpoint SMTP do Amazon SES para a região da AWS e substitua 587 pelo número daporta. Para obter mais informações sobre endpoints regionais no Amazon SES, consulteRegiões (p. 441).

Se a conexão foi bem-sucedida, é exibida uma saída semelhante a este exemplo:

ComputerName : email-smtp.us-west-2.amazonaws.comRemoteAddress : 198.51.100.126RemotePort : 587InterfaceAlias : EthernetSourceAddress : 203.0.113.46TcpTestSucceeded : True

Usar a linha de comando para enviar e-mail pela interface SMTP do Amazon SES

Também é possível usar a linha de comando para enviar mensagens pela interface SMTP do AmazonSES. Esse procedimento é útil para testar credenciais SMTP e para testar a capacidade de destinatáriosespecíficos receberem mensagens enviadas usando o Amazon SES.

Linux, macOS, or Unix

Quando um remetente de e-mail se conecta a um servidor SMTP, o cliente envia um conjunto padrãode solicitações e o servidor responde a cada solicitação com uma resposta padrão. Esta série desolicitações e respostas é chamada de conversa SMTP. Quando você se conecta ao servidor SMTPdo Amazon SES usando o OpenSSL, o servidor espera que ocorra uma conversa SMTP.

Ao usar o OpenSSL para se conectar à interface SMTP, é necessário codificar suas credenciais SMTPusando a codificação em base64. Esta seção inclui procedimentos para a codificação das credenciaisusando base64.

Para enviar um e-mail da linha de comando usando a interface SMTP

1. Na linha de comando, insira o seguinte comando para codificar seu nome de usuário de SMTP,substituindo SMTPUsername pelo seu nome de usuário de SMTP:

echo -n "SMTPUsername" | openssl enc -base64

Anote o resultado de saída desse comando.2. Na linha de comando, insira o seguinte comando para codificar a senha de SMTP, substituindo

SMTPPassword por sua senha de SMTP:

echo -n "SMTPPassword" | openssl enc -base64

Anote o resultado de saída desse comando.3. Em um editor de texto, crie um novo arquivo. Cole o seguinte código no arquivo:

EHLO example.comAUTH LOGINBase64EncodedSMTPUserNameBase64EncodedSMTPPasswordMAIL FROM: [email protected] TO: [email protected]: ConfigSet

110

Page 118: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

From: Sender Name <[email protected]>To: [email protected]: Amazon SES SMTP Test

This message was sent using the Amazon SES SMTP interface..QUIT

4. Faça as seguintes alterações no arquivo que você criou na etapa anterior:

• Substitua example.com pelo seu domínio de envio.• Substitua Base64EncodedSMTPUserName pelo seu nome de usuário SMTP codificado com

base64.• Substitua Base64EncodedSMTPPassword pela sua senha SMTP codificada com base64.• Substitua [email protected] pelo endereço de e-mail que você está usando como

remetente. Essa identidade deve ser verificada.• Substitua [email protected] pelo endereço de e-mail do destinatário. Se sua conta do

Amazon SES ainda estiver na sandbox, este endereço deverá ser verificado.• Substitua ConfigSet pelo nome do conjunto de configurações que você deseja usar ao enviar

esse e-mail.

Ao concluir, salve o arquivo como input.txt.5. Na linha de comando, escolha uma das seguintes opções:

• Para enviar usando SSL explícito pela porta 587 – insira o seguinte comando:

openssl s_client -crlf -quiet -starttls smtp -connect email-smtp.us-west-2.amazonaws.com:587 < input.txt

• Para enviar usando SSL implícito pela porta 465 – Insira o seguinte comando:

openssl s_client -crlf -quiet -connect email-smtp.us-west-2.amazonaws.com:465 < input.txt

Note

Substitua email-smtp.us-west-2.amazonaws.com pela URL do endpoint de SMTPdo Amazon SES para a sua região da AWS. Para obter mais informações, consulteRegiões (p. 441).

Se a mensagem tiver sido aceita pelo Amazon SES, você verá uma saída semelhante ao seguinteexemplo:

250 Ok 01010160d7de98d8-21e57d9a-JZho-416c-bbe1-8ebaAexample-000000

A sequência de números e texto que se segue a 250 Ok é o ID de mensagem do e-mail.

Note

A conexão é fechada automaticamente após cerca de 10 segundos de inatividade.

PowerShell

É possível usar a classe Net.Mail.SmtpClient para enviar e-mail usando SSL explícito na porta 587.111

Page 119: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Note

A classe Net.Mail.SmtpClient está oficialmente obsoleta e a Microsoft recomenda o usode bibliotecas de terceiros. Este código destina-se somente para fins de teste e não deve serusado para cargas de trabalho de produção.

Como enviar um e-mail pelo PowerShell usando SSL explícito

1. Em um editor de texto, crie um novo arquivo. Cole o seguinte código no arquivo:

$Subject = "Test email sent from Amazon SES"$Body = "This message was sent from Amazon SES using PowerShell."

$EmailFrom = "[email protected]"$EmailTo = "[email protected]"

$SMTPServer = "email-smtp.us-west-2.amazonaws.com"$SMTPPort = 587$Credentials = [Net.NetworkCredential](Get-Credential)

$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, $SMTPPort)$SMTPClient.EnableSsl = $true$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($SmtpUser, $SmtpPass);$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($Credentials.Username, $Credentials.Password);

try { Write-Output "Sending message..." $SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body) Write-Output "Message sent."}catch { Write-Output "An error occurred:" Write-Error $_}

Ao concluir, salve o arquivo como SendEmail.ps1.2. Faça as seguintes alterações no arquivo que você criou na etapa anterior:

• Substitua [email protected] pelo endereço de e-mail do qual você deseja enviar amensagem.

• Substitua [email protected] pelo endereço de e-mail para o qual você deseja enviara mensagem.

• Substitua email-smtp.us-west-2.amazonaws.com pela URL do endpoint de SMTP doAmazon SES para a sua região da AWS. Para obter mais informações, consulte Regiões e oAmazon SES (p. 441).

3. No PowerShell, insira o seguinte comando:

& "path\to\SendEmail.ps1"

No comando anterior, substitua path\to\SendEmail.ps1 pelo caminho para o arquivo criadona Etapa 1.

Quando solicitado, insira o nome de usuário e senha do SMTP.

112

Page 120: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da interface SMTP

Como alternativa, é possível usar a classe System.Web.Mail.SmtpMail para enviar e-mail usando SSLimplícito na porta 465.

Note

A classe System.Web.Mail.SmtpMail está oficialmente obsoleta e a Microsoft recomendao uso de bibliotecas de terceiros. Este código destina-se somente para fins de teste e nãodeve ser usado para cargas de trabalho de produção.

Como enviar um e-mail pelo PowerShell usando SSL implícito

1. Em um editor de texto, crie um novo arquivo. Cole o seguinte código no arquivo:

[System.Reflection.Assembly]::LoadWithPartialName("System.Web") > $null$Subject = "Test email sent from Amazon SES"$Body = "This message was sent from Amazon SES using PowerShell."

$EmailFrom = "[email protected]"$EmailTo = "[email protected]"

$SMTPServer = "email-smtp.us-west-2.amazonaws.com"$SMTPPort = 465$Credentials = [Net.NetworkCredential](Get-Credential)

$mail = New-Object System.Web.Mail.MailMessage$mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", $SMTPServer)$mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", $SMTPPort)$mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", $true)$mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", $Credentials.UserName)$mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", $Credentials.Password)$mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout", $timeout / 1000)$mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", 2)$mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", 1)

$mail.From = $EmailFrom$mail.To = $EmailTo$mail.Subject = $Subject$mail.Body = $Body

try{ Write-Output "Sending message..." [System.Web.Mail.SmtpMail]::Send($mail) Write-Output "Message sent."}catch{ Write-Output "An error occurred:" Write-Error $_}

Ao concluir, salve o arquivo como SendEmail.ps1.2. Faça as seguintes alterações no arquivo que você criou na etapa anterior:

• Substitua [email protected] pelo endereço de e-mail do qual você deseja enviar amensagem.

113

Page 121: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da API

• Substitua [email protected] pelo endereço de e-mail para o qual você deseja enviara mensagem.

• Substitua email-smtp.us-west-2.amazonaws.com pela URL do endpoint de SMTP doAmazon SES para a sua região da AWS. Para obter mais informações, consulte Regiões e oAmazon SES (p. 441).

3. No PowerShell, insira o seguinte comando:

& "path\to\SendEmail.ps1"

No comando anterior, substitua path\to\SendEmail.ps1 pelo caminho para o arquivo criadona Etapa 1.

Quando solicitado, insira o nome de usuário e senha do SMTP.

Uso do API do Amazon SES para enviar e-mailPara enviar e-mails de produção pelo Amazon SES, você pode usar a interface SMTP (Simple MailTransfer Protocol) ou a API do Amazon SES. Para obter mais informações sobre a interface SMTP,consulte Uso da interface SMTP do Amazon SES para enviar e-mail (p. 80). Esta seção descreve comoenviar e-mails usando a API.

A API do Amazon SES tem uma interface de consulta sobre HTTPS. Quando envia um e-mail usando aAPI, você pode fornecer informações sobre o conteúdo do e-mail e fazer com que o Amazon SES monteo e-mail para você. Alternativamente, você mesmo pode montar o e-mail para que tenha controle totalsobre o conteúdo da mensagem. Para obter mais informações sobre a API, consulte Amazon SimpleEmail Service API Reference. Para obter uma lista de URLs de endpoint para as regiões da AWS onde oAmazon SES está disponível, consulte Amazon Simple Email Service (Amazon SES) em AWS GeneralReference.

Você pode chamar a API das seguintes maneiras:

• Fazer solicitações e respostas de consulta — Este é o método mais avançado, porque você estáchamando a API diretamente. Para obter informações sobre como fazer solicitações e respostas deconsulta, consulte Amazon SESAPI de consulta (p. 401).

• Use um AWS SDK — os SDKs da AWS facilitam o acesso a APIs de vários serviços da AWS, como oAmazon SES. Quando você usa um SDK, ele se encarrega de tarefas como autenticação, assinatura desolicitações, lógica de novas tentativas, manipulação de erros, bem como de outras funções de baixonível, para que possa se concentrar na criação de aplicativos que conquistem seus clientes.

• Usar uma interface da linha de comando — A AWS Command Line Interface é a ferramenta da linhade comando para o Amazon SES. Oferecemos também o AWS Tools para Windows PowerShell paraaqueles que usam script no ambiente do PowerShell.

Não importa se você acessa a API do Amazon SES diretamente ou por via indireta, por meio de um SDKda AWS, da AWS Command Line Interface ou do AWS Tools para Windows PowerShell: a API do AmazonSES fornece duas maneiras diferentes para você enviar um e-mail, dependendo de quanto controle vocêdeseja ter sobre a composição da mensagem de e-mail:

• Formatado — O Amazon SES compõe e envia uma mensagem de e-mail formatada corretamente.Você precisa apenas fornecer os endereços "From:" e "To:", um assunto e um corpo da mensagem. OAmazon SES cuida de todo o restante. Para obter mais informações, consulte Envio de e-mail formatadousando a API do Amazon SES (p. 115).

• Bruto — Você compõe manualmente e envia uma mensagem de e-mail, especificando seus próprioscabeçalhos de e-mail e tipos de MIME. Se você for experiente na formatação do seu próprio e-mail,

114

Page 122: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da API

a interface bruta dará a você mais controle sobre a composição da mensagem. Para obter maisinformações, consulte Envio de e-mail bruto usando a API do Amazon SES (p. 115).

Tópicos nesta seção:• Envio de e-mail formatado usando a API do Amazon SES (p. 115)• Envio de e-mail bruto usando a API do Amazon SES (p. 115)

Envio de e-mail formatado usando a API do Amazon SESVocê pode enviar um e-mail formatado usando o Console de gerenciamento da AWS ou chamando a APIdo Amazon SES diretamente por meio de um aplicativo, ou indiretamente por meio de um SDK da AWS,da AWS Command Line Interface ou do AWS Tools para Windows PowerShell.

A API do Amazon SES fornece a ação SendEmail, que permite redigir e enviar um e-mail formatado.SendEmail exige um endereço De:, endereço Para:, assunto da mensagem e corpo da mensagem —texto, HTML ou ambos. Para obter uma descrição completa de SendEmail, consulte Amazon SimpleEmail Service API Reference.

Note

A string do endereço de e-mail deve ter o formato ASCII de 7 bits. Se você deseja enviar para oude endereços de e-mail que contêm caracteres Unicode na parte de domínio de um endereço,você deve codificar o domínio usando Punycode. Para obter mais informações, consulte RFC3492.

Para obter um exemplo de como redigir uma mensagem formatada usando o AWS SDK for Java ou AWSSDK para .NET, consulte Enviar um e-mail usando o AWS SDK for Java (p. 34) ou Enviar um e-mailusando o AWS SDK para .NET (p. 31), respectivamente.

Para obter dicas sobre como aumentar a velocidade de envio de e-mail ao fazer várias chamadas paraSendEmail, consulte Como aumentar a taxa de transferência com o Amazon SES (p. 462).

Envio de e-mail bruto usando a API do Amazon SESVocê pode usar a operação SendRawEmail do Amazon SES para enviar mensagens altamentepersonalizadas para seus destinatários.

Esta seção inclui procedimentos para construir e enviar e-mails brutos usando a API do Amazon SES.

Sobre campos do cabeçalho do e-mail

O SMTP (Simple Mail Transfer Protocol) especifica como as mensagens de e-mail devem ser enviadasao definir o envelope de e-mail e alguns de seus parâmetros, mas não se preocupa com o conteúdoda mensagem. Em vez disso, o Internet Message Format (RFC 5322) define como a mensagem seráconstruída.

Com a especificação do Internet Message Format, todas as mensagens de e-mail consistem em umcabeçalho e um corpo. O cabeçalho consiste em metadados de mensagem e o corpo contém a mensagemem si. Para obter mais informações sobre cabeçalhos e corpos de e-mail, consulte Formato de e-mail eAmazon SES (p. 14).

Uso de MIME

O protocolo SMTP foi originalmente projetado para enviar mensagens de e-mail que continham apenascaracteres ASCII de 7 bits. Essa especificação torna o SMTP insuficiente para codificações de texto

115

Page 123: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da API

não ASCII (como Unicode), conteúdo binário ou anexos. O padrão MIME (Multipurpose Internet MailExtensions) foi desenvolvido para possibilitar o envio de vários outros tipos de conteúdo usando SMTP.

O padrão MIME funciona ao dividir o corpo da mensagem em várias partes e especificar o que seráfeito com cada parte. Por exemplo, uma parte do corpo da mensagem do e-mail pode ser texto simples,enquanto outra pode ser HTML. Além disso, o MIME permite que mensagens de e-mail contenham um oumais anexos. Os destinatários da mensagem podem visualizar os anexos de dentro de seus clientes de e-mail ou podem salvar os anexos.

O cabeçalho e o conteúdo da mensagem são separados por uma linha em branco. Cada parte do e-mail éseparada por um limite, uma string de caracteres que indica o início e o fim de cada parte.

A mensagem dividida no exemplo a seguir contém uma parte em texto e uma parte em HTML. Ela tambémcontém um anexo.

From: "Sender Name" <[email protected]>To: [email protected]: Customer service contact infoContent-Type: multipart/mixed; boundary="a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a"

--a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1aContent-Type: multipart/alternative; boundary="sub_a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a"

--sub_a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1aContent-Type: text/plain; charset=iso-8859-1Content-Transfer-Encoding: quoted-printable

Please see the attached file for a list of customers to contact.

--sub_a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1aContent-Type: text/html; charset=iso-8859-1Content-Transfer-Encoding: quoted-printable

<html><head></head><body><h1>Hello!</h1><p>Please see the attached file for a list of customers to contact.</p></body></html>

--sub_a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a--

--a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1aContent-Type: text/plain; name="customers.txt"Content-Description: customers.txtContent-Disposition: attachment;filename="customers.txt"; creation-date="Sat, 05 Aug 2017 19:35:36 GMT";Content-Transfer-Encoding: base64

SUQsRmlyc3ROYW1lLExhc3ROYW1lLENvdW50cnkKMzQ4LEpvaG4sU3RpbGVzLENhbmFkYQo5MjM4OSxKaWUsTGl1LENoaW5hCjczNCxTaGlybGV5LFJvZHJpZ3VleixVbml0ZWQgU3RhdGVzCjI4OTMsQW5heWEsSXllbmdhcixJbmRpYQ==

--a3f166a86b56ff6c37755292d690675717ea3cd9de81228ec2b76ed4a15d6d1a--

O tipo de conteúdo para a mensagem é multipart/mixed, o que indica que a mensagem tem váriaspartes (neste exemplo, um corpo e um anexo) e o cliente do recebimento deve lidar com cada parteseparadamente. Aninhada dentro da seção do corpo está uma segunda parte que usa o tipo de conteúdomultipart/alternative. Esse tipo de conteúdo indica que cada parte contém versões alternativasdo mesmo conteúdo (neste caso, uma versão em texto e uma versão HTML). Se o cliente de e-mail do

116

Page 124: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da API

destinatário puder exibir o conteúdo HTML, ele mostrará a versão HTML do corpo da mensagem. Se ocliente de e-mail do destinatário não puder exibir o conteúdo HTML, ele mostrará a versão de texto semformatação do corpo da mensagem. As duas versões da mensagem também contêm um anexo (nestecaso, um arquivo de texto que contém alguns nomes de clientes).

Quando você aninha uma parte de MIME dentro de outra parte, como neste exemplo, a parte aninhadadeve usar um parâmetro boundary diferente do parâmetro boundary na parte pai. Esses limites devemser strings de caracteres exclusivas. Para definir um limite entre as partes MIME, digite dois hifens (--)seguidos pela string de limite. No final de uma parte MIME, coloque dois hifens no início e no final da stringdo limite.

Codificação MIME

Para manter a compatibilidade com sistemas mais antigos, o Amazon SES respeita a limitação ASCII de7 bits do SMTP, conforme definido na RFC 2821. Se você deseja enviar conteúdo que contém caracteresnão ASCII, você deve codificar os caracteres em um formato que usa caracteres ASCII de 7 bits.

Endereços de e-mail

Para codificar um endereço de e-mail usado no envelope da mensagem, use a codificação Punycode.

Por exemplo, para enviar um email para 张伟@example.com, use a codificação Punycode na parte localdo endereço (a parte antes do sinal @). O endereço codificado resultante é [email protected].

Note

Essa regra se aplica somente aos endereços de e-mail que você especifica no envelope damensagem, não nos cabeçalhos das mensagens. Quando você usa a API SendRawEmail, osendereços especificados nos parâmetros Source e Destinations definem o remetente e osdestinatários do envelope, respectivamente.

Para obter mais informações sobre a codificação Punycode, consulte a RFC 3492.

Cabeçalhos de e-mail

Para codificar um cabeçalho de mensagem, use a sintaxe de palavras codificadas por MIME. A sintaxe depalavras codificadas por MIME usa o seguinte formato:

=?charset?encoding?encoded-text?=

O valor de encoding pode ser Q ou B. Se o valor da codificação for Q, o valor encoded-text deveráusar a codificação Q. Se o valor da codificação for B, o valor de encoded-text deverá usar a codificaçãobase64.

Por exemplo, se você deseja usar a string "Як ти поживаєш?" na linha de assunto do e-mail, você poderáusar uma das seguintes codificações:

• Codificação Q

=?utf-8?Q?=D0=AF=D0=BA_=D1=82=D0=B8_=D0=BF=D0=BE=D0=B6=D0=B8=D0=B2=D0=B0=D1=94=D1=88=3F?=

• Codificação base64

=?utf-8?B?0K/QuiDRgtC4INC/0L7QttC40LLQsNGU0Yg/?=

Para obter mais informações sobre a codificação Q, consulte a RFC 2047. Para obter mais informaçõessobre a codificação base64, consulte a RFC 2045.

117

Page 125: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da API

Corpo da mensagem

Para codificar o corpo de uma mensagem, você pode usar a codificação imprimível citada ou a codificaçãobase64. Em seguida, use o cabeçalho Content-Transfer-Encoding para indicar qual esquema decodificação você usou.

Por exemplo, suponha que o corpo da mensagem contém o seguinte texto:

१९७२ मे रे टॉमलंिसन ने पहला ई-मेल संेदश भेजा | रे टॉमलंिसन ने ही स्रव्परथम @ चि्नह का चयन किया और इ्नही को ईेमल काआवि्षकारक माना जाता है

Se você escolher codificar esse texto usando a codificação base64, primeiro especifique o seguintecabeçalho:

Content-Transfer-Encoding: base64

Em seguida, na seção do corpo do e-mail, inclua o texto codificado em base64:

4KWn4KWv4KWt4KWoIOCkruClhyDgpLDgpYcg4KSf4KWJ4KSu4KSy4KS/4KSC4KS44KSoIOCkqOClhyDgpKrgpLngpLLgpL4g4KSILeCkruClh+CksiDgpLjgpILgpKbgpYfgpLYg4KSt4KWH4KSc4KS+IHwg4KSw4KWHIOCkn+ClieCkruCksuCkv+CkguCkuOCkqCDgpKjgpYcg4KS54KWAIOCkuOCksOCljeCkteCkquCljeCksOCkpeCkriBAIOCkmuCkv+CkqOCljeCkuSDgpJXgpL4g4KSa4KSv4KSoIOCkleCkv+Ckr+CkviDgpJTgpLAg4KSH4KSo4KWN4KS54KWAIOCkleCliyDgpIjgpK7gpYfgpLIg4KSV4KS+IOCkhuCkteCkv+Ckt+CljeCkleCkvuCksOCklSDgpK7gpL7gpKjgpL4g4KSc4KS+4KSk4KS+IOCkueCliAo=

Note

Em alguns casos, você pode usar a Content-Transfer-Encoding de 8 bits em mensagensenviadas usando o Amazon SES. No entanto, se o Amazon SES tiver de fazer quaisqueralterações nas suas mensagens (por exemplo, quando você usa o rastreamento de abertura eclique (p. 493)), o conteúdo codificado de 8 bits pode não aparecer corretamente quando chegarnas caixas de entrada dos destinatários. Por esse motivo, você deve sempre codificar o conteúdoque não seja ASCII de 7 bits.

Anexos de arquivo

Para anexar um arquivo a um email, você precisa codificar o anexo usando a codificação base64.Normalmente, os anexos são colocados em partes dedicadas da mensagem MIME, que incluem osseguintes cabeçalhos:

• Content-Type: o tipo de arquivo do anexo. Veja a seguir exemplos de declarações comuns de Content-Type MIME:• Arquivo de texto sem formatação: Content-Type: text/plain; name="sample.txt"• Documento do Microsoft Word: Content-Type: application/msword;name="document.docx"

• Imagem JPG: Content-Type: image/jpeg; name="photo.jpeg"• Content-Disposition: especifica como o cliente de e-mail do destinatário deve lidar com o conteúdo. Para

anexos, esse valor é Content-Disposition: attachment.• Content-Transfer-Encoding: o esquema usado para codificar o anexo. Para anexos de arquivo, esse

valor é quase sempre base64.

O Amazon SES aceita a maioria dos tipos de arquivos comuns. Para obter uma lista de tipos de arquivoque o Amazon SES não aceita, consulte Apêndice: tipos de anexo sem suporte (p. 500).

118

Page 126: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da API

Envio de e-mail bruto usando a API do Amazon SES

A API do Amazon SES fornece a ação SendRawEmail, que permite compor e enviar uma mensagem dee-mail no formato que você especificar. Para obter uma descrição completa de SendRawEmail, consulteAmazon Simple Email Service API Reference.

Note

Para obter dicas sobre como aumentar a velocidade de envio de e-mail ao fazer várias chamadaspara SendRawEmail, consulte Como aumentar a taxa de transferência com o AmazonSES (p. 462).

O corpo da mensagem deve conter uma mensagem de e-mail bruto corretamente formatada, com acodificação adequada dos campos de cabeçalho e do corpo da mensagem. Embora seja possível construira mensagem bruta manualmente dentro de um aplicativo, é muito mais fácil usar as bibliotecas de e-mailexistentes.

Java

O seguinte exemplo de código mostra como usar a biblioteca JavaMail e o AWS SDK for Java pararedigir e enviar um e-mail bruto.

package com.amazonaws.samples;

import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.PrintStream;import java.nio.ByteBuffer;import java.util.Properties;

// JavaMail libraries. Download the JavaMail API // from https://javaee.github.io/javamail/import javax.activation.DataHandler;import javax.activation.DataSource;import javax.activation.FileDataSource;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.Session;import javax.mail.internet.AddressException;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeBodyPart;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeMultipart;

// AWS SDK libraries. Download the AWS SDK for Java // from https://aws.amazon.com/sdk-for-javaimport com.amazonaws.regions.Regions;import com.amazonaws.services.simpleemail.AmazonSimpleEmailService;import com.amazonaws.services.simpleemail.AmazonSimpleEmailServiceClientBuilder;import com.amazonaws.services.simpleemail.model.RawMessage;import com.amazonaws.services.simpleemail.model.SendRawEmailRequest;

public class AmazonSESSample {

// Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. private static String SENDER = "Sender Name <[email protected]>";

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. private static String RECIPIENT = "[email protected]";

119

Page 127: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da API

// Specify a configuration set. If you do not want to use a configuration // set, comment the following variable, and the // ConfigurationSetName=CONFIGURATION_SET argument below. private static String CONFIGURATION_SET = "ConfigSet";

// The subject line for the email. private static String SUBJECT = "Customer service contact info";

// The full path to the file that will be attached to the email. // If you're using Windows, escape backslashes as shown in this variable. private static String ATTACHMENT = "C:\\Users\\sender\\customers-to-contact.xlsx";

// The email body for recipients with non-HTML email clients. private static String BODY_TEXT = "Hello,\r\n" + "Please see the attached file for a list " + "of customers to contact.";

// The HTML body of the email. private static String BODY_HTML = "<html>" + "<head></head>" + "<body>" + "<h1>Hello!</h1>" + "<p>Please see the attached file for a " + "list of customers to contact.</p>" + "</body>" + "</html>";

public static void main(String[] args) throws AddressException, MessagingException, IOException { Session session = Session.getDefaultInstance(new Properties()); // Create a new MimeMessage object. MimeMessage message = new MimeMessage(session); // Add subject, from and to lines. message.setSubject(SUBJECT, "UTF-8"); message.setFrom(new InternetAddress(SENDER)); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(RECIPIENT));

// Create a multipart/alternative child container. MimeMultipart msg_body = new MimeMultipart("alternative"); // Create a wrapper for the HTML and text parts. MimeBodyPart wrap = new MimeBodyPart(); // Define the text part. MimeBodyPart textPart = new MimeBodyPart(); textPart.setContent(BODY_TEXT, "text/plain; charset=UTF-8"); // Define the HTML part. MimeBodyPart htmlPart = new MimeBodyPart(); htmlPart.setContent(BODY_HTML,"text/html; charset=UTF-8"); // Add the text and HTML parts to the child container. msg_body.addBodyPart(textPart); msg_body.addBodyPart(htmlPart); // Add the child container to the wrapper object. wrap.setContent(msg_body); // Create a multipart/mixed parent container. MimeMultipart msg = new MimeMultipart("mixed"); // Add the parent container to the message.

120

Page 128: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da API

message.setContent(msg); // Add the multipart/alternative part to the message. msg.addBodyPart(wrap); // Define the attachment MimeBodyPart att = new MimeBodyPart(); DataSource fds = new FileDataSource(ATTACHMENT); att.setDataHandler(new DataHandler(fds)); att.setFileName(fds.getName()); // Add the attachment to the message. msg.addBodyPart(att);

// Try to send the email. try { System.out.println("Attempting to send an email through Amazon SES " +"using the AWS SDK for Java...");

// Instantiate an Amazon SES client, which will make the service // call with the supplied AWS credentials. AmazonSimpleEmailService client = AmazonSimpleEmailServiceClientBuilder.standard() // Replace US_WEST_2 with the AWS Region you're using for // Amazon SES. .withRegion(Regions.US_WEST_2).build(); // Print the raw email content on the console PrintStream out = System.out; message.writeTo(out);

// Send the email. ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); message.writeTo(outputStream); RawMessage rawMessage = new RawMessage(ByteBuffer.wrap(outputStream.toByteArray()));

SendRawEmailRequest rawEmailRequest = new SendRawEmailRequest(rawMessage) .withConfigurationSetName(CONFIGURATION_SET); client.sendRawEmail(rawEmailRequest); System.out.println("Email sent!"); // Display an error if something goes wrong. } catch (Exception ex) { System.out.println("Email Failed"); System.err.println("Error message: " + ex.getMessage()); ex.printStackTrace(); } }}

Python

O código de exemplo a seguir mostra como usar os pacotes Python email.mime e o AWS SDK forPython (Boto) para compor e enviar um e-mail bruto.

import osimport boto3from botocore.exceptions import ClientErrorfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextfrom email.mime.application import MIMEApplication

# Replace [email protected] with your "From" address.

121

Page 129: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso da API

# This address must be verified with Amazon SES.SENDER = "Sender Name <[email protected]>"

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.RECIPIENT = "[email protected]"

# Specify a configuration set. If you do not want to use a configuration# set, comment the following variable, and the # ConfigurationSetName=CONFIGURATION_SET argument below.CONFIGURATION_SET = "ConfigSet"

# If necessary, replace us-west-2 with the AWS Region you're using for Amazon SES.AWS_REGION = "us-west-2"

# The subject line for the email.SUBJECT = "Customer service contact info"

# The full path to the file that will be attached to the email.ATTACHMENT = "path/to/customers-to-contact.xlsx"

# The email body for recipients with non-HTML email clients.BODY_TEXT = "Hello,\r\nPlease see the attached file for a list of customers to contact."

# The HTML body of the email.BODY_HTML = """\<html><head></head><body><h1>Hello!</h1><p>Please see the attached file for a list of customers to contact.</p></body></html>"""

# The character encoding for the email.CHARSET = "utf-8"

# Create a new SES resource and specify a region.client = boto3.client('ses',region_name=AWS_REGION)

# Create a multipart/mixed parent container.msg = MIMEMultipart('mixed')# Add subject, from and to lines.msg['Subject'] = SUBJECT msg['From'] = SENDER msg['To'] = RECIPIENT

# Create a multipart/alternative child container.msg_body = MIMEMultipart('alternative')

# Encode the text and HTML content and set the character encoding. This step is# necessary if you're sending a message with characters outside the ASCII range.textpart = MIMEText(BODY_TEXT.encode(CHARSET), 'plain', CHARSET)htmlpart = MIMEText(BODY_HTML.encode(CHARSET), 'html', CHARSET)

# Add the text and HTML parts to the child container.msg_body.attach(textpart)msg_body.attach(htmlpart)

# Define the attachment part and encode it using MIMEApplication.att = MIMEApplication(open(ATTACHMENT, 'rb').read())

# Add a header to tell the email client to treat this part as an attachment,# and to give the attachment a name.

122

Page 130: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mails personalizados

att.add_header('Content-Disposition','attachment',filename=os.path.basename(ATTACHMENT))

# Attach the multipart/alternative child container to the multipart/mixed# parent container.msg.attach(msg_body)

# Add the attachment to the parent container.msg.attach(att)#print(msg)try: #Provide the contents of the email. response = client.send_raw_email( Source=SENDER, Destinations=[ RECIPIENT ], RawMessage={ 'Data':msg.as_string(), }, ConfigurationSetName=CONFIGURATION_SET )# Display an error if something goes wrong. except ClientError as e: print(e.response['Error']['Message'])else: print("Email sent! Message ID:"), print(response['MessageId'])

Envio de e-mails personalizados usando a API doAmazon SESVocê pode usar a operação de API CreateTemplate para criar modelos de e-mail. Esses modelosincluem uma linha de assunto e as partes em texto e HTML do corpo de e-mail. As seções de assunto ecorpo também podem conter valores exclusivos e personalizados para cada destinatário.

Há alguns limites e outras considerações ao usar esses recursos:

• Você pode criar até 10.000 modelos de e-mail para cada conta do Amazon SES.• Cada modelo pode ter até 500 KB de tamanho, incluindo as partes em texto e as partes em HTML.• Você pode incluir um número ilimitado de variáveis de substituição em cada modelo.• Você pode enviar e-mails para até 50 destinos em cada chamada para a operaçãoSendBulkTemplatedEmail. Um destino inclui uma lista de destinatários, bem como destinatáriosCC e BCC. Observe que o número de destinos com os quais você pode entrar em contato em umaúnica chamada para a API pode ser limitado pela taxa máxima de envios da sua conta. Para obter maisinformações, consulte Gerenciar as cotas de envio do Amazon SES (p. 148).

Esta seção inclui procedimentos para a criação de modelos de e-mail e para o envio de e-mailspersonalizados.

Parte 1: Configurar notificações de eventos de falha derenderizaçãoSe você enviar um e-mail que contenha conteúdo de personalização inválido, o Amazon SES poderáaceitar a mensagem, mas não poderá entregá-la. Por esse motivo, se você planeja enviar e-mails

123

Page 131: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mails personalizados

personalizados, configure o Amazon SES para enviar notificações de eventos de Falha de renderizaçãoatravés do Amazon SNS. Ao receber uma notificação de evento de Falha de renderização, você podeidentificar qual mensagem continha o conteúdo inválido, corrigir os problemas e enviar a mensagemnovamente.

O procedimento nesta seção é opcional, mas altamente recomendado.

Para configurar notificações de eventos de Falha de renderização

1. Criar um tópico do Amazon SNS. Para obter os procedimentos, consulte Criar um tópico no Guia dodesenvolvedor do Amazon Simple Notification Service.

2. Inscreva-se no tópico do Amazon SNS Por exemplo, se você quiser receber notificações de Falha derenderização por e-mail, inscreva um endpoint de e-mail (ou seja, seu endereço de e-mail) no tópico.

Para obter os procedimentos, consulte Inscrever-se em um tópico no Guia do desenvolvedor doAmazon Simple Notification Service.

3. Execute os procedimentos em the section called “Configurar um destino do Amazon SNS” (p. 290)para configurar seus conjuntos de configurações para publicar eventos de Falha de renderização noseu tópico do Amazon SNS.

Parte 2: Criar um modelo de e-mailAs instruções nesta seção pressupõem que você esteja usando a AWS CLI e que a configurou parainteragir com sua conta da AWS. Para obter mais informações sobre a instalação e a configuração daAWS CLI, consulte o Guia do usuário da AWS Command Line Interface.

Para criar o modelo

1. Em um editor de texto, crie um novo arquivo. Cole o seguinte código no arquivo.

{ "Template": { "TemplateName": "MyTemplate", "SubjectPart": "Greetings, {{name}}!", "HtmlPart": "<h1>Hello {{name}},</h1><p>Your favorite animal is {{favoriteanimal}}.</p>", "TextPart": "Dear {{name}},\r\nYour favorite animal is {{favoriteanimal}}." }}

Esse código contém as seguintes propriedades:

• TemplateName – O nome do modelo. Quando você enviar o e-mail, consulte este nome.• SubjectPart – A linha de assunto do e-mail. Essa propriedade pode conter tags de substituição.

Essas tags usam o seguinte formato: {{tagname}}. Quando você envia o e-mail, pode especificarum valor para tagname de cada destino.

O exemplo anterior inclui duas tags: {{name}} e {{favoriteanimal}}.• HtmlPart – O corpo HTML do e-mail. Essa propriedade pode conter tags de substituição.• TextPart – O corpo de texto do e-mail. Os destinatários cujos clientes de e-mail não exibem e-mail

HTML veem esta versão do e-mail. Essa propriedade pode conter tags de substituição.2. Personalize o exemplo anterior de acordo com as suas necessidades e salve o arquivo como

mytemplate.json.3. Na linha de comando, digite o comando a seguir para criar um novo modelo usando a operação de

API CreateTemplate: aws ses create-template --cli-input-json file://mytemplate.json

124

Page 132: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mails personalizados

Parte 3: Envio de e-mails personalizadosDepois de criar um modelo de e-mail, você poderá usá-lo para enviar e-mails. Há duas operaçõesda API que você pode usar para enviar e-mails usando modelos: SendTemplatedEmail eSendBulkTemplatedEmail. A operação SendTemplatedEmail é útil para enviar um e-mailpersonalizado a um único destino (uma coleção de destinatários "To", "CC" e "BCC" que receberá omesmo e-mail). A operação SendBulkTemplatedEmail é útil para envio de e-mails exclusivos a váriosdestinos em uma única chamada para a API do Amazon SES. Esta seção traz exemplos de como usar aAWS CLI para enviar e-mails usando as duas operações.

Envio de e-mail em modelo a um único destino

Você pode usar a operação SendTemplatedEmail para enviar um e-mail para um único destino. Todosos destinatários no objeto Destination receberão o mesmo e-mail.

Para enviar um e-mail em modelo a um único destino

1. Em um editor de texto, crie um novo arquivo. Cole o seguinte código no arquivo.

{ "Source": "[email protected]", "Template": "MyTemplate", "ConfigurationSetName": "ConfigSet", "Destination": { "ToAddresses": [ "[email protected]" ] }, "TemplateData": "{ \"name\":\"Alejandro\", \"favoriteanimal\": \"alligator\" }"}

Esse código contém as seguintes propriedades:

• Source – O endereço de e-mail do remetente.• Template – O nome do modelo a ser aplicado ao e-mail.• ConfigurationSetName – O nome do conjunto de configurações para usar ao enviar o e-mail de

verificação.

Note

Recomendamos usar um conjunto de configurações que esteja configurado para publicareventos de Falha de renderização no Amazon SNS. Para obter mais informações, consultethe section called “Parte 1: Configurar notificações” (p. 123).

• Destination – Os endereços do destinatário. Você pode incluir vários endereços "To", "CC" e "BCC".Quando você usa a operação SendTemplatedEmail, todos os destinatários recebem o mesmo e-mail.

• TemplateData – Um objeto JSON que contém pares de chave-valor. As chaves correspondem àsvariáveis do modelo (por exemplo, {{name}}). Os valores representam o conteúdo que substitui asvariáveis no e-mail.

2. Altere os valores no código acima para preencher suas necessidades e, a seguir, salve o arquivocomo myemail.json.

3. Na linha de comando, digite o seguinte comando para enviar o e-mail: aws ses send-templated-email--cli-input-json file://myemail.json

125

Page 133: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mails personalizados

Envio de e-mail em modelo a vários destinos

Você pode usar a operação SendBulkTemplatedEmail para enviar um e-mail a vários destinos emuma única chamada para a API. O Amazon SES envia um e-mail exclusivo para os destinatários em cadaobjeto Destination.

Para enviar um e-mail de modelo a vários destinos

1. Em um editor de texto, crie um novo arquivo. Cole o seguinte código no arquivo.

{ "Source":"[email protected]", "Template":"MyTemplate", "ConfigurationSetName": "ConfigSet", "Destinations":[ { "Destination":{ "ToAddresses":[ "[email protected]" ] }, "ReplacementTemplateData":"{ \"name\":\"Anaya\", \"favoriteanimal\":\"angelfish\" }" }, { "Destination":{ "ToAddresses":[ "[email protected]" ] }, "ReplacementTemplateData":"{ \"name\":\"Liu\", \"favoriteanimal\":\"lion\" }" }, { "Destination":{ "ToAddresses":[ "[email protected]" ] }, "ReplacementTemplateData":"{ \"name\":\"Shirley\", \"favoriteanimal\":\"shark\" }" }, { "Destination":{ "ToAddresses":[ "[email protected]" ] }, "ReplacementTemplateData":"{}" } ], "DefaultTemplateData":"{ \"name\":\"friend\", \"favoriteanimal\":\"unknown\" }"}

Esse código contém as seguintes propriedades:

• Source – O endereço de e-mail do remetente.• Template – O nome do modelo a ser aplicado ao e-mail.• ConfigurationSetName – O nome do conjunto de configurações para usar ao enviar o e-mail de

verificação.

126

Page 134: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mails personalizados

Note

Recomendamos usar um conjunto de configurações que esteja configurado para publicareventos de Falha de renderização no Amazon SNS. Para obter mais informações, consultethe section called “Parte 1: Configurar notificações” (p. 123).

• Destinations – Uma matriz que contém um ou mais destinos.• Destination – Os endereços do destinatário. Você pode incluir vários endereços "To", "CC" e

"BCC". Quando você usa a operação SendBulkTemplatedEmail, todos os destinatários dentrodo mesmo objeto Destination recebem o mesmo e-mail.

• ReplacementTemplateData – Um objeto JSON que contém pares de chave-valor. As chavescorrespondem às variáveis do modelo (por exemplo, {{name}}). Os valores representam oconteúdo que substitui as variáveis no e-mail.

• DefaultTemplateData – Um objeto JSON que contém pares de chave-valor. As chavescorrespondem às variáveis do modelo (por exemplo, {{name}}). Os valores representam oconteúdo que substitui as variáveis no e-mail. Este objeto contém dados de fallback. Se um objetoDestination contiver um objeto JSON vazio na propriedade ReplacementTemplateData, osvalores da propriedade DefaultTemplateData serão usados.

2. Altere os valores no código acima para preencher suas necessidades e, a seguir, salve o arquivocomo mybulkemail.json.

3. Na linha de comando, digite o seguinte comando para enviar o e-mail em massa: aws ses send-bulk-templated-email --cli-input-json file://mybulkemail.json

Personalização de e-mail avançadaO recurso de modelo no Amazon SES é baseado no sistema de modelos Handlebars. Você pode usar oHandlebars para criar modelos que incluam recursos avançados, como atributos aninhados, iteração dematriz, instruções condicionais básicas e a criação de parciais em linha. Esta seção fornece exemplosdesses recursos.

O Handlebars inclui recursos adicionais além dos documentados nesta seção. Para obter maisinformações, consulte Auxiliares integrados em handlebarsjs.com.

Tópicos• Análise de atributos aninhados (p. 127)• Iteração por meio de listas (p. 128)• Uso de instruções condicionais básicas (p. 130)• Criação de parciais em linha (p. 131)

Análise de atributos aninhados

O Handlebars inclui suporte para caminhos aninhados, o que torna fácil organizar complexos dados docliente e, em seguida, consultá-los em seus modelos de e-mail.

Por exemplo, você pode organizar os dados dos destinatários em diversas categorias gerais. Em cadauma dessas categorias, você pode incluir informações detalhadas. O código de exemplo a seguir mostraum exemplo dessa estrutura para um único destinatário:

{ "meta":{ "userId":"51806220607" }, "contact":{

127

Page 135: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mails personalizados

"firstName":"Anaya", "lastName":"Iyengar", "city":"Bengaluru", "country":"India", "postalCode":"560052" }, "subscription":[ { "interest":"Sports" }, { "interest":"Travel" }, { "interest":"Cooking" } ]}

Em seus modelos de e-mail, você pode consultar atributos aninhados ao fornecer o nome do atributopai, seguido por um ponto (.) e pelo nome do atributo para os quais você deseja incluir o valor. Porexemplo, se você usar a estrutura de dados mostrada no exemplo anterior e desejar incluir o nomede cada destinatário no modelo de e-mail, inclua o seguinte texto em seu modelo de e-mail: Hello{{Contact.FirstName}}!

O Handlebars pode analisar caminhos aninhados em vários níveis de profundidade, o que significa quevocê tem flexibilidade para escolher como estruturar os dados de seu modelo.

Iteração por meio de listas

A função auxiliar each faz a iteração por meio de itens em uma matriz. O código a seguir é um exemplo deum modelo de e-mail que usa a função auxiliar each para criar uma lista detalhada dos interesses de cadadestinatário.

{ "Template": { "TemplateName": "Preferences", "SubjectPart": "Subscription Preferences for {{contact.firstName}} {{contact.lastName}}", "HtmlPart": "<h1>Your Preferences</h1> <p>You have indicated that you are interested in receiving information about the following subjects:</p> <ul> {{#each subscription}} <li>{{interest}}</li> {{/each}} </ul> <p>You can change these settings at any time by visiting the <a href=https://www.example.com/prefererences/i.aspx?id={{meta.userId}}> Preference Center</a>.</p>", "TextPart": "Your Preferences\n\nYou have indicated that you are interested in receiving information about the following subjects:\n {{#each subscription}} - {{interest}}\n {{/each}} \nYou can change these settings at any time by visiting the Preference Center at https://www.example.com/prefererences/i.aspx?id={{meta.userId}}" }}

128

Page 136: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mails personalizados

Important

No código de exemplo anterior, os valores dos atributos HtmlPart e TextPart incluem quebrasde linha para facilitar a leitura do exemplo. O arquivo JSON para seu modelo não pode conterquebras de linha dentro desses valores. Se você copiou e colou esse exemplo em seu próprioarquivo JSON, antes de prosseguir, remova as quebras de linha e os espaços extras das seçõesHtmlPart e TextPart.

Depois de criar o modelo, você pode usar a operação SendTemplatedEmail ouSendBulkTemplatedEmail para enviar e-mails para destinatários usando esse modelo. Desde que cadadestinatário tenha, pelo menos, um valor no objeto Interests, eles receberão um e-mail que inclua umalista detalhada de seus interesses. O exemplo a seguir mostra um arquivo JSON que pode ser usado paraenviar e-mails para vários destinatários usando o modelo anterior:

{ "Source":"Sender Name <[email protected]>", "Template":"Preferences", "Destinations":[ { "Destination":{ "ToAddresses":[ "[email protected]" ] }, "ReplacementTemplateData":"{\"meta\":{\"userId\":\"51806220607\"},\"contact\":{\"firstName\":\"Anaya\",\"lastName\":\"Iyengar\"},\"subscription\":[{\"interest\":\"Sports\"},{\"interest\":\"Travel\"},{\"interest\":\"Cooking\"}]}" }, { "Destination":{ "ToAddresses":[ "[email protected]" ] }, "ReplacementTemplateData":"{\"meta\":{\"userId\":\"1981624758263\"},\"contact\":{\"firstName\":\"Shirley\",\"lastName\":\"Rodriguez\"},\"subscription\":[{\"interest\":\"Technology\"},{\"interest\":\"Politics\"}]}" } ], "DefaultTemplateData":"{\"meta\":{\"userId\":\"\"},\"contact\":{\"firstName\":\"Friend\",\"lastName\":\"\"},\"subscription\":[]}"}

Quando você enviar um e-mail para os destinatários listados no exemplo anterior usando a operaçãoSendBulkTemplatedEmail, eles receberão uma mensagem que se parece com o exemplo mostrado naimagem a seguir:

129

Page 137: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mails personalizados

Uso de instruções condicionais básicasEsta seção se baseia no exemplo descrito na seção anterior. O exemplo na seção anterior usa o auxiliareach para fazer a iteração por meio de uma lista de interesses. No entanto, os destinatários para os quaisnenhum interesse está especificado recebem um e-mail que contém uma lista vazia. Ao usar o auxiliar{{if}}, você poderá formatar o e-mail de forma diferente se um determinado atributo estiver presente nosdados do modelo. O código a seguir usará o auxiliar {{if}} para exibir a lista com marcadores na seçãoanterior se a matriz Subscription contiver todos os valores. Se a matriz estiver vazia, outro bloco detexto será exibido.

{ "Template": { "TemplateName": "Preferences2", "SubjectPart": "Subscription Preferences for {{contact.firstName}} {{contact.lastName}}", "HtmlPart": "<h1>Your Preferences</h1> <p>Dear {{contact.firstName}},</p> {{#if subscription}} <p>You have indicated that you are interested in receiving information about the following subjects:</p> <ul> {{#each subscription}} <li>{{interest}}</li> {{/each}} </ul> <p>You can change these settings at any time by visiting the <a href=https://www.example.com/prefererences/i.aspx?id={{meta.userId}}> Preference Center</a>.</p> {{else}} <p>Please update your subscription preferences by visiting the <a href=https://www.example.com/prefererences/i.aspx?id={{meta.userId}}> Preference Center</a>. {{/if}}", "TextPart": "Your Preferences\n\nDear {{contact.firstName}},\n\n {{#if subscription}} You have indicated that you are interested in receiving information about the following subjects:\n {{#each subscription}} - {{interest}}\n {{/each}} \nYou can change these settings at any time by visiting the Preference Center at https://www.example.com/prefererences/i.aspx?id={{meta.userId}}. {{else}} Please update your subscription preferences by visiting the Preference Center at https://www.example.com/prefererences/i.aspx?id={{meta.userId}}. {{/if}}" }}

Important

No código de exemplo anterior, os valores dos atributos HtmlPart e TextPart incluem quebrasde linha para facilitar a leitura do exemplo. O arquivo JSON para seu modelo não pode conterquebras de linha dentro desses valores. Se você copiou e colou esse exemplo em seu próprioarquivo JSON, antes de prosseguir, remova as quebras de linha e os espaços extras das seçõesHtmlPart e TextPart.

O exemplo a seguir mostra um arquivo JSON que pode ser usado para enviar e-mails para váriosdestinatários usando o modelo anterior:

130

Page 138: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mails personalizados

{ "Source":"Sender Name <[email protected]>", "Template":"Preferences2", "Destinations":[ { "Destination":{ "ToAddresses":[ "[email protected]" ] }, "ReplacementTemplateData":"{\"meta\":{\"userId\":\"51806220607\"},\"contact\":{\"firstName\":\"Anaya\",\"lastName\":\"Iyengar\"},\"subscription\":[{\"interest\":\"Sports\"},{\"interest\":\"Cooking\"}]}" }, { "Destination":{ "ToAddresses":[ "[email protected]" ] }, "ReplacementTemplateData":"{\"meta\":{\"userId\":\"1981624758263\"},\"contact\":{\"firstName\":\"Shirley\",\"lastName\":\"Rodriguez\"}}" } ], "DefaultTemplateData":"{\"meta\":{\"userId\":\"\"},\"contact\":{\"firstName\":\"Friend\",\"lastName\":\"\"},\"subscription\":[]}"}

Neste exemplo, o destinatário cujos dados do modelo incluíam uma lista de interesses recebe o mesmo e-mail como o exemplo mostrado na seção anterior. No entanto, o destinatário cujos dados do modelo nãoincluíam interesses recebe um e-mail que se parece com o exemplo mostrado na imagem a seguir:

Criação de parciais em linha

Você pode usar parciais em linha para simplificar os modelos que incluem strings repetidas. Porexemplo, é possível criar um parcial em linha que inclua o nome do destinatário e, se estiver disponível, osobrenome, adicionando o seguinte código ao início de seu modelo:

{{#* inline \"fullName\"}}{{firstName}}{{#if lastName}} {{lastName}}{{/if}}{{/inline}}\n

Note

O caractere de nova linha (\n) é necessário para separar o bloco {{inline}} do conteúdo emseu modelo. A nova linha não é renderizada na saída final.

Depois de criar a parcial fullName, você pode incluí-la em qualquer lugar em seu modelo colocandoantes do nome da parcial um sinal de maior que (>) seguido por um espaço, como no exemplo a seguir:{{> fullName}}. As parciais em linha não são transferidas entre partes do e-mail. Por exemplo, se vocêdesejar usar a parcial em linha no HTML e na versão de texto do e-mail, defina-a nas seções HtmlPart eTextPart.

Você também pode usar parciais em linha ao fazer a iteração por meio de matrizes. Você pode usar oseguinte código para criar um modelo que use a parcial em linha fullName. Neste exemplo, a parcial emlinha se aplica ao nome do destinatário e a uma variedade de outros nomes:

131

Page 139: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail

{ "Template": { "TemplateName": "Preferences3", "SubjectPart": "{{firstName}}'s Subscription Preferences", "HtmlPart": "{{#* inline \"fullName\"}} {{firstName}}{{#if lastName}} {{lastName}}{{/if}} {{/inline~}}\n <h1>Hello {{> fullName}}!</h1> <p>You have listed the following people as your friends:</p> <ul> {{#each friends}} <li>{{> fullName}}</li> {{/each}}</ul>", "TextPart": "{{#* inline \"fullName\"}} {{firstName}}{{#if lastName}} {{lastName}}{{/if}} {{/inline~}}\n Hello {{> fullName}}! You have listed the following people as your friends:\n {{#each friends}} - {{> fullName}}\n {{/each}}" }}

Important

No código de exemplo anterior, os valores dos atributos HtmlPart e TextPart incluem quebrasde linha para facilitar a leitura do exemplo. O arquivo JSON para seu modelo não pode conterquebras de linha dentro desses valores. Se você copiou e colou esse exemplo em seu próprioarquivo JSON, remova as quebras de linha e os espaços extras dessas seções.

Autenticação de e-mail no Amazon SESO Amazon Simple Email Service (Amazon SES) usa o Simple Mail Transfer Protocol (SMTP) para enviare-mail. Como o SMTP não fornece autenticação por si só, spammers podem enviar mensagens de e-mailque alegam ser de outra pessoa e, ao mesmo tempo, ocultar sua real origem. Por falsificar cabeçalhosde e-mail e fazer spoofing de endereços IP de origem, os spammers podem enganar os destinatários apensar que as mensagens de e-mail que estão recebendo são autênticas.

A maioria dos ISPs que encaminham tráfego de e-mail tomam medidas para avaliar se o e-mail é legítimo.Uma medida que os ISPs tomam é determinar se um e-mail é autenticado. A autenticação exige que osremetentes verifiquem se eles são os proprietários da conta da qual estão enviando os e-mails. Em algunscasos, os ISPs recusam-se a encaminhar e-mail que não é autenticado. Para garantir a melhor capacidadede entrega, recomendamos a autenticação de e-mails.

As seções a seguir descrevem dois mecanismos de autenticação que os ISPs usam — Sender PolicyFramework (SPF) e DomainKeys Identified Mail (DKIM) — e fornecem instruções de como usar essespadrões com Amazon SES.

• Para saber mais sobre SPF, que fornece uma maneira de rastreamento de uma mensagem de e-mailde volta para o sistema de que foi enviada, consulte Autenticação de e-mail com SPF no AmazonSES (p. 133).

• Para saber mais sobre DKIM, um padrão que permite que você assine suas mensagens de e-mail paramostrar aos ISPs que suas mensagens são legítimas e não foram modificadas em trânsito, consulteAutenticação de e-mail com DKIM no Amazon SES (p. 134).

• Para saber como estar em conformidade com Domain-based Message Authentication, Reporting andConformance (DMARC), que conta com SPF e DKIM, consulte Conformidade com DMARC UsandoAmazon SES (p. 146).

132

Page 140: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com SPF

Autenticação de e-mail com SPF no Amazon SESA Sender Policy Framework (SPF) é um padrão de validação de e-mails criado para evitar a falsificação dee-mails. Os proprietários de domínio usam a SPF para informar aos provedores de e-mail quais servidorestêm permissão para enviar e-mails de seus domínios. A SPF está definida na RFC 7208.

Para configurar a SPF, publique uma lista de servidores de e-mail autorizados na configuração do DNSdo seu domínio. Quando um provedor de e-mail recebe uma mensagem do seu domínio, ele verifica osregistros DNS do seu domínio para garantir que o e-mail foi enviado de um servidor autorizado.

Quando você envia e-mails pelo Amazon SES, as mensagens enviadas passam por uma verificação daSPF por padrão. O Amazon SES especifica um domínio MAIL FROM para cada mensagem que é umsubdomínio de amazonses.com, e o servidor de e-mail de envio da mensagem se alinha a esse domínio.

Opcionalmente, você pode publicar seu próprio registro SPF. Ao publicar um registro SPF, seu e-mailpode estar em conformidade com Domain-based Message Authentication, Reporting and Conformance(DMARC — Autenticação, relatórios e conformidade de mensagens baseados em domínio) Para obtermais informações, consulte Conformidade com DMARC (p. 146).

Adição de um registro SPFPara publicar um registro SPF, é necessário adicionar um novo registro à configuração do DNS do seudomínio. Os procedimentos para atualizar os registros DNS de um domínio variam de acordo com qualDNS ou provedor de hospedagem na web você usa.

A tabela a seguir inclui links para a documentação de vários provedores comuns. Essa lista não éabrangente e a inclusão nela não é um endosso ou recomendação de produtos ou serviços de nenhumaempresa. Se o provedor não estiver listado na tabela, provavelmente ainda será possível publicar umregistro SPF.

Provedor de DNS/hospedagem Link da documentação

Amazon Route 53 Criar registros usando o console do Amazon Route53

GoDaddy Adicionar um registro SPF (link externo)

Dreamhost Como posso adicionar um registro SPF? (linkexterno)

Cloudflare Gerenciar registros DNS no CloudFlare (linkexterno)

HostGator Registros SPF (link externo)

Namecheap Como adicionar registros TXT/SPF/DKIM/DMARCpara o meu domínio? (link externo)

Names.co.uk Alterar configurações de DNS dos domínios (linkexterno)

Wix Adicionar ou atualizar registros SPF em sua contado Wix (link externo)

Se o seu domínio não tiver um registro SPF, publique um registro TXT com os valores a seguir. O nome doregistro pode estar em branco ou @, dependendo do seu serviço DNS.

133

Page 141: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

"v=spf1 include:amazonses.com ~all"

Se o seu domínio já tiver um registro SPF, você poderá adicionar a seguinte instrução:include:amazonses.com

Autenticação de e-mail com DKIM no Amazon SESDomainKeys Identified Mail (DKIM) é um padrão que permite que os remetentes assinem suas mensagensde e-mail com uma chave criptográfica. Então, os provedores de e-mail usam essas assinaturas paraverificar se as mensagens não foram modificadas por terceiros enquanto estavam em trânsito.

Uma mensagem de e-mail enviada usando DKIM inclui um campo de cabeçalho DKIM-Signature quecontém uma representação da mensagem assinada de forma criptográfica. Um provedor que recebe amensagem pode usar uma chave pública, que é publicada no registro DNS do remetente, para decodificara assinatura. Então, os provedores de e-mail usam essas informações para determinar se as mensagenssão autênticas.

As assinaturas DKIM são opcionais. Você pode decidir assinar seu e-mail usando uma assinatura DKIMpara aumentar a capacidade de entrega com os provedores de e-mail em conformidade com o DKIM. OAmazon SES fornece duas opções para assinar suas mensagens usando uma assinatura DKIM:

• Para configurar uma identidade de envio (como um domínio ou um endereço de e-mail) para que oAmazon SES adicione automaticamente uma assinatura DKIM a todas as mensagens enviadas a partirdessa identidade, consulte Easy DKIM no Amazon SES (p. 134).

• Para usar seu próprio par de chaves pública e privada para a autenticação DKIM, consulte Forneça seupróprio token de autenticação DKIM no Amazon SES (p. 142).

• Para adicionar sua própria assinatura DKIM ao e-mail enviado usando a API SendRawEmail, consulteAssinatura DKIM manual no Amazon SES (p. 146).

Easy DKIM no Amazon SESAo configurar o Easy DKIM para uma identidade, o Amazon SES adiciona automaticamente uma chaveDKIM de 1024 bits a cada e-mail enviado a partir dessa identidade. Você pode configurar o Easy DKIMusando o console do Amazon SES ou a API.

Note

Para configurar o Easy DKIM, é necessário modificar as configurações de DNS do seudomínio. Se você usa o Route 53 como seu provedor de DNS, o Amazon SES pode criarautomaticamente os registros apropriados para você. Se você usa outro provedor de DNS,consulte a documentação do provedor para saber mais sobre como alterar as configurações deDNS do seu domínio.

Quando o Easy DKIM for configurado com êxito, você poderá começar a enviar e-mails do domíniohabilitado para DKIM, mesmo se não tiver concluído os procedimentos em Como verificar um domínio como Amazon SES (p. 60).

Considerações sobre o Easy DKIMAo usar o Easy DKIM para autenticar seu e-mail, as seguintes regras serão aplicadas:

• Você só precisa configurar o Easy DKIM para o domínio que usa no seu endereço "From". Você nãoprecisa configurar o Easy DKIM para domínios que usados em endereços "Return-Path" ou "Reply-to".

• O Amazon SES está disponível em diversas regiões da AWS. Se você usa mais de uma região da AWSpara enviar e-mails, é necessário concluir o processo de configuração do Easy DKIM em cada umadessas regiões para garantir que todos os seus e-mails sejam assinados por DKIM.

134

Page 142: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

• Ao verificar um domínio, as configurações do Easy DKIM também serão aplicadas a todos ossubdomínios desse domínio, a menos que você configure o Easy DKIM para subdomínios específicos.

• Se você configurar o Easy DKIM para um domínio pai, um subdomínio e um endereço de e-mail, oAmazon SES aplicará as configurações do Easy DKIM das seguintes formas:• As configurações do DKIM para um subdomínio substituem as configurações para o domínio pai.• As configurações do DKIM para um endereço de e-mail substituem as configurações para o

subdomínio (se aplicável) e o domínio pai.

Este tópico contém as seguintes seções:• Configurar o Easy DKIM para um domínio (p. 135)• Configurar o Easy DKIM para um endereço de e-mail (p. 137)• Gerenciar o Easy DKIM (p. 138)

Configurar o Easy DKIM para um domínio

O procedimento nesta seção mostra como configurar o Easy DKIM para um domínio. Se você configuraro Easy DKIM para um domínio, poderá começar a enviar e-mails desse domínio, mesmo que não tenhaconcluído o procedimento para verificar um domínio (p. 59).

Para configurar o Easy DKIM para um domínio

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. No painel de navegação, em Identity Management, escolha Domains.3. Na lista de domínios, selecione o domínio para a qual você quer configurar o Easy DKIM.

Note

Se você ainda não iniciou o processo de verificação para o domínio, consulte osprocedimentos em Como verificar um domínio com o Amazon SES (p. 60).

4. Em DKIM, selecione Generate DKIM Settings (Gerar configurações do DKIM).5. Copie os três registros CNAME que aparecem nesta seção. Se preferir, você pode selecionar

Download Record Set as CSV (Fazer download do conjunto de registros como CSV) para salvar umacópia dos registros em seu computador.

A imagem a seguir mostra um exemplo da seção DKIM.

135

Page 143: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

6. Adicione os registros CNAME à configuração de DNS do seu domínio. Para atualizar os registros DNSpara o seu domínio:

• Se você usa o Route 53 como seu provedor de DNS – Se você usa o Route 53 na mesma contausada para enviar e-mails usando o Amazon SES, selecione Use Route 53 (Usar o Route 53) paraatualizar automaticamente as configurações de DNS do seu domínio. Caso contrário, conclua osprocedimentos mostrados em Editar registros no Guia do desenvolvedor do Amazon Route 53.

• Se você usa outro provedor de DNS – Provedores diferentes têm procedimentos diferentes paraatualizar registros de DNS. A tabela a seguir lista links para a documentação de vários provedorescomuns. Essa lista não é exaustiva e a inclusão nela não é um endosso ou recomendação deprodutos ou serviços de nenhuma empresa. Se o seu provedor não estiver listado na tabela,provavelmente você poderá usar o domínio com o Amazon SES.

Provedor de DNS/hospedagem Link da documentação

GoDaddy Adicionar um registro CNAME (link externo)

Dreamhost Como adicionar registros DNS personalizados?(link externo)

136

Page 144: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

Provedor de DNS/hospedagem Link da documentação

Cloudflare Como adicionar um registro CNAME? (linkexterno)

HostGator Gerenciar registros DNS com HostGator/eNom(link externo)

Namecheap Como adicionar registros TXT/SPF/DKIM/DMARC para o meu domínio? (link externo)

Names.co.uk Alterar configurações de DNS dos domínios(link externo)

Wix Como adicionar ou atualizar registros CNAMEna sua conta do Wix (link externo)

Note

Um pequeno número de provedores de DNS não permitem que você inclua sublinhados (_)em nomes de registro. No entanto, o sublinhado no nome do registro DKIM é necessário.Se o seu provedor de DNS não permitir que você insira um sublinhado no nome doregistro, entre em contato com a equipe de suporte ao cliente do provedor para obterassistência.

• Se você não tiver certeza de quem é seu provedor de DNS – Consulte o administrador do sistemapara obter mais informações.

Geralmente, o Amazon SES detecta alterações em sua configuração de DNS em 72 horas.

Configurar o Easy DKIM para um endereço de e-mail

O procedimento descrito nesta seção mostra como configurar o Easy DKIM para um endereço de e-mailespecífico já verificado com o Amazon SES. Só é possível configurar o Easy DKIM para endereços de e-mail que pertencem a domínios que você já possui, pois será necessário alterar as configurações de DNSpara o domínio a fim de configurar o Easy DKIM para um endereço de e-mail.

Important

Você não pode configurar o Easy DKIM para endereços de e-mail em domínios que você nãopossui. Por exemplo, você não pode configurar o Easy DKIM para um endereço gmail.com ouhotmail.com.

Se você já configurar o Easy DKIM para o domínio ao qual o endereço de e-mail pertence, não seránecessário configurar o Easy DKIM para o endereço de e-mail. Ao configurar o Easy DKIM para umdomínio, o Amazon SES autentica automaticamente todos os e-mails de todos os endereços nessedomínio. As configurações do DKIM para um endereço de e-mail específico automaticamente substituemas configurações para o domínio ao qual o endereço pertence.

Para configurar o Easy DKIM para um endereço de e-mail

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. No painel de navegação, em Identity Management, escolha Email Addresses.3. Na lista de endereços de e-mail, selecione o endereço para a qual você quer configurar o Easy DKIM.4. Em DKIM, selecione Generate DKIM Settings (Gerar configurações do DKIM).

137

Page 145: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

5. Copie os três registros CNAME que aparecem nesta seção. Se preferir, você pode selecionarDownload Record Set as CSV (Fazer download do conjunto de registros como CSV) para salvar umacópia dos registros em seu computador.

6. Adicione os registros CNAME à configuração de DNS do seu domínio. Para atualizar os registros DNSpara o seu domínio:

• Se você usa o Route 53 como seu provedor de DNS – Conclua os procedimentos mostrados emEditar registros no Guia do desenvolvedor do Amazon Route 53.

• Se você usa outro provedor de DNS – Provedores diferentes têm procedimentos diferentes paraatualizar registros de DNS. Consulte a documentação fornecida por seu provedor de DNS paraobter mais informações.

Note

Um pequeno número de provedores de DNS não permitem que você inclua sublinhados (_)em nomes de registro. No entanto, o sublinhado no nome do registro DKIM é necessário.Se o seu provedor de DNS não permitir que você insira um sublinhado no nome doregistro, entre em contato com a equipe de suporte ao cliente do provedor para obterassistência.

• Se você não tiver certeza de quem é seu provedor de DNS – Consulte o administrador do sistemapara obter mais informações.

Geralmente, o Amazon SES detecta alterações em sua configuração de DNS em 72 horas.

Gerenciar o Easy DKIM

Há duas maneiras de gerenciar as configurações do Easy DKIM para suas identidades: usando o consoledo Amazon SES baseado na web, ou usando a API do Amazon SES. Você pode usar qualquer um dessesmétodos para obter os registros DKIM para uma identidade, ou para habilitar ou desabilitar o Easy DKIMpara uma identidade.

Obter registros do Easy DKIM para uma identidade

Você pode obter registros do Easy DKIM para seu domínio ou endereço de e-mail a qualquer momentousando o console do Amazon SES.

Para obter registros do Easy DKIM para uma identidade usando o console

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, em Identity Management (Gerenciamento de identidades), selecione o tipode identidade para a qual você deseja obter registros do Easy DKIM.

3. Na lista de identidades, selecione a identidade para a qual você quer obter registros do Easy DKIM.4. Na seção DKIM, copie os três registros CNAME. A imagem a seguir mostra um exemplo da seção

DKIM.

138

Page 146: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

Você também pode obter os registros CNAME para uma identidade usando a API do Amazon SES. Ummétodo comum de interagir com a API é usar a AWS CLI.

Para obter registros do Easy DKIM para uma identidade usando a AWS CLI

1. Na linha de comando, digite o seguinte comando:

aws ses get-identity-dkim-attributes --identities "example.com"

No exemplo anterior, substitua exemplo.com pela identidade para a qual você deseja obter registrosdo Easy DKIM. Você pode especificar um endereço de e-mail ou um domínio.

2. A saída desse comando contém uma seção DkimTokens, conforme mostrado no exemplo a seguir:

{ "DkimAttributes": { "example.com": { "DkimEnabled": true, "DkimVerificationStatus": "Success", "DkimTokens": [ "hirjd4exampled5477y22yd23ettobi", "v3rnz522czcl46quexamplek3efo5o6x",

139

Page 147: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

"y4examplexbhyhnsjcmtvzotfvqjmdqoj" ] } }}

Você pode usar os tokens para criar os registros CNAME que adiciona às configurações de DNS doseu domínio. Para criar os registros CNAME, use o seguinte modelo:

token1._domainkey.example.com CNAME token1.dkim.amazonses.comtoken2._domainkey.example.com CNAME token2.dkim.amazonses.comtoken3._domainkey.example.com CNAME token3.dkim.amazonses.com

Substitua cada instância de token1 pelo primeiro token da lista que você recebeu ao executar ocomando get-identity-dkim-attributes do AWS SES, substitua todas as instâncias detoken2 pelo segundo token da lista, e substitua todas as instâncias de token3 pelo terceiro token dalista.

Por exemplo, aplicar esse modelo para os tokens mostrados no exemplo anterior produzirá osseguintes registros:

hirjd4exampled5477y22yd23ettobi._domainkey.example.com CNAME hirjd4exampled5477y22yd23ettobi.dkim.amazonses.comv3rnz522czcl46quexamplek3efo5o6x._domainkey.example.com CNAME v3rnz522czcl46quexamplek3efo5o6x.dkim.amazonses.comy4examplexbhyhnsjcmtvzotfvqjmdqoj._domainkey.example.com CNAME y4examplexbhyhnsjcmtvzotfvqjmdqoj.dkim.amazonses.com

Desabilitar o Easy DKIM para uma identidade

Você pode desabilitar rapidamente a autenticação DKIM para uma identidade usando o console doAmazon SES.

Para desabilitar o Easy DKIM para uma identidade

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, em Identity Management (Gerenciamento de identidades), selecione o tipode identidade para a qual você deseja desabilitar o Easy DKIM.

3. Na lista de identidades, selecione a identidade para a qual você quer desabilitar o Easy DKIM.4. Na seção DKIM, ao lado de DKIM: enabled (DKIM: habilitado), selecione disable (desabilitar),

conforme mostrado na imagem a seguir.

140

Page 148: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

Você também pode desabilitar o Easy DKIM para uma identidade usando a API do Amazon SES. Ummétodo comum de interagir com a API é usar a AWS CLI.

Para desabilitar o Easy DKIM para uma identidade usando a AWS CLI.

• Na linha de comando, digite o seguinte comando:

aws ses set-identity-dkim-enabled --identity example.com --no-dkim-enabled

No exemplo anterior, substitua exemplo.com pela identidade para a qual você deseja desabilitar oEasy DKIM. Você pode especificar um endereço de e-mail ou um domínio.

Habilitar o Easy DKIM para uma identidade

Se você tiver desabilitado o Easy DKIM para uma identidade, poderá habilitá-lo novamente usando oconsole do Amazon SES.

Para habilitar o Easy DKIM para uma identidade

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, em Identity Management (Gerenciamento de identidades), selecione o tipode identidade para a qual você deseja habilitar o Easy DKIM.

3. Na lista de identidades, selecione a identidade para a qual você quer habilitar o Easy DKIM.4. Na seção DKIM, ao lado de DKIM: disabled (DKIM: desabilitado), selecione enable (habilitar),

conforme mostrado na imagem a seguir.

Você também pode habilitar o Easy DKIM para uma identidade usando a API do Amazon SES. Um métodocomum de interagir com a API é usar a AWS CLI.

Para habilitar o Easy DKIM para uma identidade usando a AWS CLI.

• Na linha de comando, digite o seguinte comando:

aws ses set-identity-dkim-enabled --identity example.com --dkim-enabled

No exemplo anterior, substitua exemplo.com pela identidade para a qual você deseja habilitar o EasyDKIM. Você pode especificar um endereço de e-mail ou um domínio.

141

Page 149: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

Forneça seu próprio token de autenticação DKIM no AmazonSESComo alternativa ao uso do Easy DKIM (p. 134), você poderá configurar a autenticação DKIM usandoseu próprio par de chaves pública e privada. Este processo é conhecido como Bring Your Own DKIM(BYODKIM).

Com o BYODKIM, você pode usar um único registro DNS para configurar a autenticação DKIM dos seusdomínios, diferentemente do Easy DKIM, que exige a publicação de três registros DNS separados. Alémdisso, usar o BYODKIM permite mudar as chaves DKIM dos seus domínios quantas vezes você quiser.

Tópicos nesta seção:• Passo 1: Como criar o par de chaves (p. 142)• Passo 2: Adicionar a chave pública à configuração DNS do seu domínio (p. 142)• Passo 3: Configurar um domínio para usar o BYODKIM (p. 143)

Passo 1: Como criar o par de chaves

Para usar o recurso Bring Your Own DKIM, primeiro é necessário criar um par de chaves.

A chave privada gerada deve utilizar a codificação RSA de 1024 bits. A chave privada tem que estar noformato PKCS #1.

Esta seção mostra como usar o comando openssl incorporado na maioria dos sistemas operacionaisLinux, macOS, or Unix para criar o par de chaves.

Note

Se você estiver usado um computador com Windows, poderá usar aplicativos de terceiros, comoo PuTTY, para gerar os pares de chaves RSA. Para obter informações e ver os procedimentosrelacionados à criação de um par de chaves em um computador com Windows, consulte Puttygen- Key Generator For Putty On Windows no site ssh.com.

Como criar o par de chaves com a linha de comando do Linux, macOS, or Unix

1. Na linha de comando, digite o comando a seguir para gerar a chave privada:

openssl genrsa -f4 -out private.key 1024

2. Na linha de comando, digite o comando a seguir para gerar a chave pública:

openssl rsa -in private.key -outform PEM -pubout -out public.key

Passo 2: Adicionar a chave pública à configuração DNS do seu domínio

Agora que você criou um par de chaves, é necessário adicionar a chave pública à configuração DNS doseu domínio como um registro TXT.

Como adicionar a chave pública à configuração DNS do seu domínio

1. Faça login no console de gerenciamento do seu provedor hospedagem ou DNS.2. Como adicionar um novo registro de texto à configuração de DNS do seu domínio O registro deve ter

o seguinte formato:

142

Page 150: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

Nome Type Valor

selector._domainkey.example.comTXT p=yourPublicKey

No exemplo anterior, faça as seguintes alterações:

• Substitua selector por um nome exclusivo que identificará a chave.• Substitua example.com pelo seu domínio.• Substitua yourPublicKey pela chave pública que você criou anteriormente.

Note

Você deve excluir a primeira e a última linha (-----BEGIN PUBLIC KEY----- e -----END PUBLIC KEY-----, respectivamente) da chave pública gerada. Remover tambémas quebras de linha da chave pública gerada. O valor resultante será uma cadeia decaracteres sem espaços ou quebras de linha.

Diferentes provedores têm procedimentos diferentes para atualizar os registros DNS. A tabela aseguir lista links para a documentação de vários provedores comuns. Essa lista não é abrangente e ainclusão nela não é um endosso ou recomendação de produtos ou serviços de nenhuma empresa.

Provedor de DNS/hospedagem Link da documentação

Amazon Route 53 Como editar registros no Guia do desenvolvedordo Amazon Route 53

GoDaddy Adicionar um registro TXT (link externo)

Dreamhost Como adicionar registros DNS personalizados?(link externo)

Cloudflare Gerenciar registros DNS no CloudFlare (linkexterno)

HostGator Gerenciar registros DNS com HostGator/eNom(link externo)

Namecheap Como adicionar registros TXT/SPF/DKIM/DMARC para o meu domínio? (link externo)

Names.co.uk Alterar configurações de DNS dos domínios (linkexterno)

Wix Adicionar ou atualizar registros TXT em suaconta do Wix (link externo)

Passo 3: Configurar um domínio para usar o BYODKIM

Você pode configurar o BYODKIM para novos domínios (ou seja, domínios que você não usaatualmente para enviar e-mails pelo Amazon SES) e domínios existentes (ou seja, domínios quevocê já configurou para usar com o Amazon SES). Para configurar um novo domínio, use a operaçãoCreateEmailIdentity na API do Amazon SES. Para configurar um domínio existente, use a operaçãoPutEmailIdentityDkimSigningAttributes.

143

Page 151: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

Esta seção inclui os procedimentos para configurar domínios novos e existentes usando a AWS CLI. Antesde concluir os procedimentos nesta seção, primeiro é necessário instalar e configurar a AWS CLI. Paramais informações, consulte o Guia do usuário do AWS Command Line Interface.

Opção 1: Criar uma nova identidade de domínio que usa o BYODKIM

Esta seção contém um procedimento para criar uma nova identidade de domínio que usa o BYODKIM.Uma nova identidade de domínio é um domínio que você não configurou anteriormente para enviar e-mailscom o Amazon SES.

Se você quiser configurar um domínio existente para usar o BYODKIM, siga as instruções em Opção 2:Configurar uma identidade de domínio existente (p. 144).

Para criar a identidade

1. No editor de texto, cole o código a seguir:

{ "EmailIdentity":"example.com", "DkimSigningAttributes":{ "DomainSigningPrivateKey":"privateKey", "DomainSigningSelector":"selector" }}

No exemplo anterior, faça as seguintes alterações:

• Substitua example.com pelo domínio que você deseja criar.• Substitua privateKey pela sua chave privada.• Substitua selector pelo seletor exclusivo que você especificou na criação do registro TXT durante

a configuração do DNS para seu domínio.

Ao concluir, salve o arquivo como create-identity.json.2. Na linha de comando, insira o seguinte comando:

aws sesv2 create-email-identity --cli-input-json file://path/to/create-identity.json

No comando anterior, substitua path/to/create-identity.json pelo caminho completo doarquivo que você criou na etapa anterior.

Opção 2: Configurar uma identidade de domínio existente

Esta seção contém um procedimento para atualizar uma identidade de domínio existente para usar oBYODKIM. Uma identidade de domínio existente é um domínio que você já configurou para enviar e-mailscom o Amazon SES.

Como atualizar a identidade do domínio

1. No editor de texto, cole o código a seguir:

{ "SigningAttributes":{ "DomainSigningPrivateKey":"privateKey", "DomainSigningSelector":"selector" }, "SigningAttributesOrigin":"EXTERNAL"

144

Page 152: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação de e-mail com DKIM

}

No exemplo anterior, faça as seguintes alterações:

• Substitua privateKey pela sua chave privada.• Substitua selector pelo seletor exclusivo que você especificou na criação do registro TXT durante

a configuração do DNS para seu domínio.

Ao concluir, salve o arquivo como update-identity.json.2. Na linha de comando, insira o seguinte comando:

aws sesv2 put-email-identity-dkim-signing-attributes --email-identity example.com --cli-input-json file://path/to/update-identity.json

No comando anterior, faça as seguintes alterações:

• Substitua path/to/update-identity.json pelo caminho completo do arquivo criado na etapaanterior.

• Substitua example.com pelo domínio que você deseja atualizar.

Verificar o status DKIM de um domínio que usa o BYODKIM

Depois de configurar um domínio para usar o BYODKIM, você pode usar a operação GetEmailIdentity paraconfirmar se o DKIM está configurado corretamente.

Para verificar o status DKIM de um domínio

• Na linha de comando, insira o seguinte comando:

aws sesv2 get-email-identity --email-identity example.com

No comando anterior, substitua example.com pelo seu domínio.

Esse comando retorna um objeto JSON com uma seção semelhante ao exemplo a seguir.

{ ... "DkimAttributes": { "SigningAttributesOrigin": "EXTERNAL", "SigningEnabled": true, "Status": "SUCCESS", "Tokens": [ ] }, ...}

O BYODKIM estará configurado corretamente para o domínio se todas as opções a seguir foremverdadeiras:

• O valor da propriedade SigningAttributesOrigin é EXTERNAL.• O valor de SigningEnabled é true.• O valor de Status é SUCCESS.

145

Page 153: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConformidade com DMARC

Assinatura DKIM manual no Amazon SESSe preferir, em vez de usar o Easy DKIM, você poderá adicionar manualmente as assinaturas DKIMàs suas mensagens e enviá-las usando o Amazon SES. Se você optar por assinar manualmente suasmensagens, primeiro será necessário criar uma assinatura DKIM. Depois de criar a mensagem e aassinatura DKIM, você poderá usar a API SendRawEmail para enviá-la.

Se você decidir assinar seu e-mail manualmente, considere os seguintes fatores:

• Cada mensagem enviada usando o Amazon SES contém um cabeçalho DKIM que faz referência a umdomínio de assinatura de amazonses.com (ou seja, contém a seguinte string: d=amazonses.com). Sevocê assinar suas mensagens manualmente, elas deverão incluir dois cabeçalhos DKIM: um para seudomínio, e um para amazonses.com.

• O Amazon SES não valida assinaturas DKIM adicionadas manualmente às suas mensagens. Se houvererros com a assinatura DKIM em uma mensagem, ela poderá ser rejeitada por provedores de e-mail.

• Ao assinar suas mensagens, você deverá usar um tamanho de bit de pelo menos 1024 bits.• Não assine os seguintes campos: Message-ID, Data, Return-Path, Bounces-To.

Note

Se você usar um cliente de e-mail para enviar e-mail usando a interface SMTP do AmazonSES, o cliente poderá realizar a assinatura DKIM de suas mensagens automaticamente. Algunsclientes podem assinar alguns desses campos. Consulte a documentação do seu cliente de e-mail para ver quais campos são assinados por padrão.

Conformidade com DMARC Usando Amazon SESAutenticação de mensagens com base em Domain-based Message Authentication, Reporting andConformance (DMARC) é um protocolo de autenticação de e-mail que usa Sender Policy Framework(SPF) e DomainKeys Identified Mail (DKIM) para detectar e-mail falsificação. Para estar em conformidadecom o DMARC, as mensagens devem ser autenticadas por meio de SPF, DKIM ou ambos.

Este tópico contém informações que o ajudarão a configurar o Amazon SES para que os e-mails enviadosestejam em conformidade com SPF e DKIM. Ao estarem em conformidade com um desses sistemas deautenticação, seus e-mails estarão em conformidade com o DMARC. Para obter mais informações sobreespecificação DMARC, consulte http://www.dmarc.org.

Configuração da política DMARC no domínioPara configurar a DMARC, é necessário modificar as configurações de DNS do seu domínio. Asconfigurações de DNS do seu domínio devem incluir um registro TXT que especifica as configuraçõesDMARC do domínio. Os procedimentos para adicionar registros TXT à configuração de DNS dependemde qual DNS ou provedor de hospedagem você usa. Se você usa o Route 53, consulte Trabalhar comregistros no Guia do desenvolvedor do Amazon Route 53. Se você usar outro provedor, consulte adocumentação de configuração de DNS do seu provedor.

O nome do registro TXT criado deve ser _dmarc.example.com, onde example.com é o seu domínio. Ovalor do registro TXT contém a política DMARC que se aplica ao seu domínio. Veja a seguir um exemplode um registro TXT que contém uma política DMARC:

Nome Type Valor

_dmarc.example.com TXT "v=DMARC1;p=quarantine;pct=25;rua=mailto:[email protected]"

146

Page 154: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConformidade com DMARC

Em outras palavras, essa política informa os provedores de e-mail para fazer o seguinte:

• Procurar todos os e-mails com um domínio "From" de example.com que não envia autenticação DKIMou SPF.

• Colocar em quarentena 25% dos e-mails com falha de autenticação, enviando-os para a pasta de Spam(também é possível não realizar nenhuma ação usando p=none ou rejeitar mensagens definitivasusando p=reject).

• Enviar relatórios sobre todos os e-mails com falha de autenticação falhou em um resumo (ou seja, umrelatório que agrega os dados de um determinado período, em vez de enviar relatórios individuais paracada evento). Os provedores de e-mail normalmente enviam esses relatórios agregados uma vez pordia, embora essas políticas variem de provedor para provedor.

Para saber mais sobre como configurar a DMARC para seu domínio, consulte a Visão geral no siteDMARC.

Para obter todas as especificações do sistema DMARC, consulte RFC 7489 no site do IETF. A seção 6.3deste documento contém uma lista completa de tags que podem ser usadas para configurar a políticaDMARC para o seu domínio.

Conformidade com o DMARC por meio de SPFPara um e-mail estar em conformidade com o DMARC com base em SPF, as condições a seguir deverãoser cumpridas:

• O e-mail deve passar uma verificação de SPF.• O domínio no endereço From do cabeçalho do e-mail deve estar alinhado com o domínio MAIL

FROM que o servidor de envio de e-mail especifica para o servidor de e-mail recebedor. Se a políticaDMARC do domínio par SPF especifica alinhamento estrito, os domínios "De" e MAIL FROM devemcorresponder exatamente. Se a política DMARC do domínio para SPF especifica alinhamento flexível, odomínio MAIL FROM pode ser um subdomínio do domínio no cabeçalho De.

Para cumprir esses requisitos, execute as seguintes etapas:

• Configure um domínio MAIL FROM personalizado executando os procedimentos em the section called“Configurar um domínio MAIL FROM personalizado” (p. 66).

• Verifique se o seu domínio de envio usa uma política flexível para SPF. Se você não tiver alterado oalinhamento da política do seu domínio, ele usará uma política flexível por padrão.

Note

Você pode determinar o alinhamento do DMARC de seu domínio para SPF digitando o seguintecomando na linha de comando, substituindo example.com pelo seu domínio:

nslookup -type=TXT _dmarc.example.com

Na saída do comando, em Resposta não autorizada, procure um registro que comece comv=DMARC1. Se esse registro incluir a string aspf=r, ou se a string aspf não estiver presente,seu domínio usará o alinhamento flexível para SPF. Se o registro incluir a string aspf=s, seudomínio usará o alinhamento estrito para SPF. O administrador do sistema precisará removeressa tag do registro TXT DMARC na configuração do DNS do seu domínio.Você também pode usar a ferramenta de pesquisa DMARC baseada na web, como o DMARCInspector do site dmarcian ou a ferramenta DMARC Check do site Proofpoint para determinar oalinhamento de políticas do seu domínio para o SPF.

147

Page 155: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciar as cotas de envio

Conformidade com o DMARC por meio de DKIMPara um e-mail estar em conformidade com o DMARC com base em DKIM, as condições a seguir deverãoser cumpridas:

• A mensagem deve ter uma assinatura DKIM válida.• O endereço From no cabeçalho do e-mail deve estar alinhado com o domínio d= na assinatura do DKIM.

Se a política DMARC do domínio especificar alinhamento estrito para DKIM, esses domínios deverãocorresponder exatamente. Se a política DMARC do domínio especificar alinhamento flexível para DKIM,o domínio d= poderá ser um subdomínio do domínio De.

Para cumprir esses requisitos, execute as seguintes etapas:

• Configure o Easy DKIM executando os procedimentos em the section called “Easy DKIM” (p. 134).Quando você usar o Easy DKIM, o Amazon SES assinará automaticamente seus e-mails.

Note

Em vez de usar o Easy DKIM, também é possível assinar manualmente suasmensagens (p. 146). No entanto, você deve ter muito cuidado se optar por fazê-lo, porque oAmazon SES não validará a assinatura do DKIM que você criar. Por esse motivo, é altamenterecomendável usar o Easy DKIM.

• Verifique se o seu domínio de envio usa uma política flexível para DKIM. Se você não tiver alterado oalinhamento da política do seu domínio, ele usará uma política flexível por padrão.

Note

Você pode determinar o alinhamento do DMARC de seu domínio para DKIM digitando oseguinte comando na linha de comando, substituindo example.com pelo seu domínio:

nslookup -type=TXT _dmarc.example.com

Na saída do comando, em Resposta não autorizada, procure um registro que comece comv=DMARC1. Se esse registro incluir a string adkim=r, ou se a string adkim não estiverpresente, seu domínio usará o alinhamento flexível para DKIM. Se o registro incluir a stringadkim=s, seu domínio usará o alinhamento estrito para DKIM. O administrador do sistemaprecisará remover essa tag do registro TXT DMARC na configuração do DNS do seu domínio.Você também pode usar a ferramenta de pesquisa DMARC baseada na web, como o DMARCInspector do site dmarcian ou a ferramenta DMARC Check do site Proofpoint para determinar oalinhamento de políticas do seu domínio para o DKIM.

Gerenciar as cotas de envio do Amazon SESSua conta do Amazon SES tem um conjunto de cotas de envio para regular o número de mensagensde e-mail que você pode enviar e a taxa na qual pode enviá-las. As cotas de envio beneficiam todosos clientes do Amazon SES porque ajudam a manter a relação de confiança entre o Amazon SES e osprovedores de e-mail. As cotas de envio ajudam você a acelerar gradualmente suas atividades de envio ea diminuir a probabilidade de os provedores de e-mail bloquearem seus e-mails devido a picos repentinose inesperados no volume ou na taxa de envio de e-mails.

As seguintes cotas se aplicam ao envio de e-mail pelo Amazon SES:

• Máximo de envio diário — o número máximo de e-mails que você pode enviar em um período de 24horas. Essa cota é calculada com base num período de tempo contínuo. Toda vez que você tenta enviarum e-mail, o Amazon SES determina o número de e-mails que você enviou nas 24 horas anteriores.

148

Page 156: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorMonitorar as cotas de envio

Desde que o número total de e-mails que você enviou nas últimas 24 horas seja menor que essemáximo diário, a solicitação de envio será aceita e o e-mail será enviado.

Se o envio de uma mensagem exceder o máximo diário da conta, a chamada para o Amazon SES serárejeitada.

• Taxa máxima de envio — o número máximo de e-mails que o Amazon SES pode aceitar da suaconta por segundo. Você pode exceder essa cota por intermitências curtas, mas não por um períodoprolongado.

Note

A taxa de aceitação do Amazon SES das suas mensagens pode ser inferior à taxa máxima deenvio da sua conta.

As cotas de envio do Amazon SES são separadas para cada região da AWS. Para obter informaçõessobre como usar o Amazon SES em várias regiões da AWS, consulte Regiões e o Amazon SES (p. 441).

Quando sua conta está na sandbox do Amazon SES, você pode enviar somente 200 mensagens porperíodo de 24 horas e sua taxa máxima de envio é de uma mensagem por segundo. Ao enviar umasolicitação para que sua conta seja removida da sandbox, você também poderá solicitar que suas cotassejam aumentadas ao mesmo tempo. Para obter informações sobre como solicitar a remoção de sua contada sandbox, consulte Sair da sandbox do Amazon SES (p. 73).

Quando sua conta tiver sido removida da sandbox, você poderá solicitar aumentos de cota adicionais aqualquer momento criando um novo caso no AWS Support Center. Para obter mais informações, consulteAumentar suas cotas de envio do Amazon SES (p. 150).

Note

As cotas de envio são baseadas em destinatários, e não em mensagens. Por exemplo, ume-mail com 10 destinatários conta como 10 para sua cota. No entanto, não recomendamosque você envie um e-mail para vários destinatários em uma única chamada para a operaçãode API SendEmail, porque se houver falha na chamada, todos os e-mails serão rejeitados.Recomendamos que você chame SendEmail uma vez para cada destinatário.

• Para aumentar suas cotas de envio, consulte Aumentar suas cotas de envio do Amazon SES (p. 150).• Para obter informações sobre os erros que seu aplicativo recebe quando você atinge as cotas de envio,

consulte Erros relacionados a cotas de envio em sua conta do Amazon SES (p. 153).• Para monitorar suas cotas de envio usando o console do Amazon SES ou a API do Amazon SES,

consulte Monitorar as cotas de envio do Amazon SES (p. 149).

Monitorar as cotas de envio do Amazon SESVocê pode monitorar as cotas de envio usando o console do Amazon SES ou a API do Amazon SES, sejachamando a interface de consulta (HTTPS) diretamente ou, indiretamente, por meio de um AWS SDK, daAWS Command Line Interface ou do AWS Tools para Windows PowerShell.

Important

Recomendamos que você verifique frequentemente suas estatísticas de envio para garantir quenão esteja se aproximando das cotas de envio. Se estiver se aproximando das cotas de envio,consulte Aumentar suas cotas de envio do Amazon SES (p. 150) para obter informações sobrecomo aumentá-las. Não espere até atingir as cotas de envio para aumentá-las.

Monitorar as cotas de envio usando o console do Amazon SESO procedimento a seguir mostra como visualizar as cotas de envio usando o console do Amazon SES.

149

Page 157: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAumentar suas cotas de envio

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, escolha Sending Statistics. As cotas de envio são mostradas em YourAmazon SES Sending Limits (Seus limites de envio do Amazon SES).

3. Para atualizar a exibição, escolha Refresh.

Monitorar as cotas de envio usando a API do Amazon SESA API do Amazon SES fornece a ação GetSendQuota, que retorna as cotas de envio. Quando vocêchama ação GetSendQuota, recebe as seguintes informações:

• Número de e-mails enviados nas últimas 24 horas• Cota de envio para o período atual de 24 horas• Taxa máxima de envio

Note

Para obter uma descrição de GetSendQuota, consulte Amazon Simple Email Service APIReference.

Aumentar suas cotas de envio do Amazon SESQuando sua conta estiver fora da sandbox e você estiver enviando e-mails de produção de alta qualidade,poderemos automaticamente aumentar as cotas de envio da conta. Muitas vezes, aumentamos essascotas automaticamente antes de você realmente precisar que elas sejam aumentadas.

Para se qualificar para aumentos automáticos de taxa, todas as seguintes afirmações devem serverdadeiras:

• Você envia conteúdo de alta qualidade que seus destinatários desejam receber – Envie conteúdo que osdestinatários desejam e esperam receber. Não envie e-mails para clientes que não vão abrir seu e-mail.

• Você envia conteúdo de produção real – O envio de mensagens de teste para endereços de e-mailfalsos pode ter um efeito negativo nas suas taxas de devolução e reclamação. Além disso, o envio demensagens apenas para destinatários internos dificulta identificar se você está enviando conteúdo queos clientes desejam receber. No entanto, quando você envia mensagens de produção para destinatáriosnão internos, podemos avaliar com precisão suas práticas de envio de e-mails.

150

Page 158: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAumentar suas cotas de envio

• Você utiliza quase toda a cota atual de envio – para se qualificar para um aumento de cota automático, ovolume de e-mail diário deve se aproximar regularmente do máximo diário para a conta, sem excedê-la.

• Você tem baixas taxas de devolução e reclamação – minimize a quantidade de devoluções ereclamações recebidas. Ter uma grande quantidade de devoluções e reclamações pode afetarnegativamente as cotas de envio.

Se as cotas de envio atuais não forem adequadas para suas necessidades e não foram aumentadasautomaticamente, você poderá solicitar um aumento. Para obter informações sobre como solicitarum aumento de cota de envio, consulte Abrir um caso para aumentar as cotas de envio do AmazonSES (p. 151).

Abrir um caso para aumentar as cotas de envio do Amazon SESPara se inscrever para cotas de envio maiores para o Amazon SES, abra um caso no Support Centerseguindo estas etapas:

Para solicitar cotas de envio maiores

1. Faça login no Console de gerenciamento da AWS em https://console.aws.amazon.com/.2. No menu Support (Suporte), escolha Support Center, conforme mostrado na imagem a seguir.

3. Na guia My support cases (Minhas solicitações de suporte), escolha Create case (Criar solicitação).4. Em Create case (Criar solicitação), selecione Service limit increase (Aumento de limite de serviço).5. Em Case classification (Classificação de caso), preencha as seguintes seções:

• Em Limit type (Tipo de limite), escolha SES Service Limits (Limites de serviço do SES).• Para Mail Type (Tipo de e-mail), escolha o tipo de e-mail que você planeja enviar. Se mais de um

valor se aplica, escolha a opção que se aplica à maioria dos e-mails que você pretende enviar.• Para Website URL (URL do site), digite a URL de seu site. O fornecimento dessas informações nos

ajuda a compreender melhor o tipo de conteúdo que você planeja enviar.

151

Page 159: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAumentar suas cotas de envio

• Em My email sending complies with the AWS Service Terms and AUP (Meu envio de emails écompatível com os Termos de serviço e a AUP da &AWS;), selecione a opção que se aplica ao seucaso de uso.

• Em Eu só envio para destinatários que tenham solicitado meus e-mails especificamente, escolha aopção que se aplica ao seu caso de uso.

• Em Tenho um processo para lidar com devoluções e reclamações, escolha a opção que se aplicaao seu caso de uso.

6. Em Requests (Solicitações), preencha as seguintes seções:

• Em Region (Região), escolha a região da AWS a qual sua solicitação se aplica.• Em Limit (Limite), escolha o tipo de aumento de cota que você deseja solicitar. Você pode escolher

entre as seguintes opções:• Desired Maximum Send Quota (Cota máxima de envio desejada) – Escolha esta opção se você

deseja solicitar um aumento na quantidade de e-mails que sua conta pode enviar a cada períodode 24 horas na região selecionada.

Desired Maximum Send Rate (Taxa máxima de envio desejada) – Escolha esta opção se vocêdeseja solicitar um aumento na quantidade de e-mails que sua conta pode enviar a cada segundona região selecionada.

• Em New limit value (Novo valor do limite), insira a cota que você deseja aumentar. Apenas solicite aquantidade que você julga ser necessária. Lembre-se de que não é garantido que você vá receber aquantidade solicitada.

Note

Se você deseja solicitar um aumento de cota de envio e um aumento de taxa de envio, ou sevocê deseja solicitar um aumento da cota de envio em uma região da AWS diferente, escolhaAdd another request (Adicionar outra solicitação). Então, repita esta etapa.

7. Em Case Description (Descrição do caso), para Use case description (Descrição de caso de uso),descreva como você planeja usar o Amazon SES para enviar e-mails. Para ajudar-nos a processarsua solicitação, responda às seguintes perguntas:

• Como você planeja criar ou adquirir sua lista de endereçamento?• Como você planeja lidar com devoluções e reclamações?• Como os destinatários podem cancelar o recebimento de e-mails?• Como você escolheu a nova taxa de envio ou cota de envio que especificou nesta solicitação?

Se houver informações adicionais que devem ser consideradas ao avaliar seu caso, forneça-astambém nesta seção.

8. Em Contact options (Opções de contato), para Preferred contact language (Preferência de idioma decontato), escolha se você deseja receber comunicações para esse caso em inglês ou japonês.

9. Quando terminar, escolha Submit (Enviar).

A equipe do AWS Support fornece uma resposta inicial à sua solicitação em 24 horas.

Para evitar que nossos sistemas sejam usados para enviar conteúdo indesejado ou malicioso,consideramos cuidadosamente cada solicitação. Se for possível, atenderemos à sua solicitação dentrodesse período de 24 horas. No entanto, se precisarmos obter informações adicionais sobre você, o tempode resolução poderá ser mais longo.

Se o seu caso de uso não estiver alinhado com nossas políticas, talvez não seja possível atender à suasolicitação.

152

Page 160: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorErros de cota de envio

Erros relacionados a cotas de envio em sua conta doAmazon SESSe tentar enviar um e-mail depois que atingir sua cota de envio diária (a quantidade máxima de e-mailsque você pode enviar no período de 24 horas) ou sua taxa máxima de envio (o número máximo demensagens que você pode enviar por segundo), o Amazon SES descartará as mensagens e não tentaráenviá-las. O Amazon SES também fornece uma mensagem de erro que explica o problema. A maneiracomo o Amazon SES gera essa mensagem de erro depende de como você tentou enviar o e-mail. Essetópico inclui informações sobre as mensagens que você recebe por meio da API do Amazon SES e pormeio da interface SMTP.

Para conhecer uma técnica que você pode utilizar quando atingir sua taxa máxima de envio, consulte Como lidar com um erro "Limitação – taxa máxima de envio excedida" no Blog de sistema de mensagens eobjetivos da AWS.

Atingir limites de envio com a API do Amazon SESSe tentar enviar um e-mail usando a API do Amazon SES (ou um SDK da AWS), mas já tiver excedido oslimites de envio de sua conta, a API gerará um erro ThrottlingException. A mensagem de erro incluiuma das seguintes mensagens:

• Daily message quota exceeded

• Maximum sending rate exceeded

Se você se deparar com um erro de limitação, deverá programar seu aplicativo para aguardar um intervalode no máximo 10 minutos e, em seguida, tentar novamente a solicitação de envio.

Atingir limites de envio com SMTPSe tentar enviar um e-mail usando a interface SMTP do Amazon SES, mas já tiver excedido os limites deenvio de sua conta, o cliente SMTP poderá exibir um dos seguintes erros:

• 454 Throttling failure: Maximum sending rate exceeded

• 454 Throttling failure: Daily message quota exceeded

Diferentes clientes SMTP lidam com esses erros de maneira diferente.

Uso de autorização de envio com o Amazon SESVocê pode configurar o Amazon SES para autorizar outros usuários a enviar e-mails de endereços oudomínios que você possui (identidades) usando suas próprias contas do Amazon SES. Esse recurso,chamado de autorização de envio, permite que você mantenha controle sobre suas identidades, de modoque possa alterar ou revogar permissões a qualquer momento. Por exemplo, se você for proprietáriode empresa, poderá usar a autorização de envio para permitir que um terceiro (como uma empresa demarketing por e-mail) envie e-mails de um domínio que você possua.

Se você deseja autorizar alguém a enviar e-mails em seu nome, você é um proprietário de identidade. Sevocê for um proprietário de identidade, recomendamos que leia as seguintes seções:

• Visão geral da autorização de envio (p. 154)• Políticas de autorização de envio (p. 156)

153

Page 161: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVisão geral da autorização de envio

• Exemplos de política de autorização de envio (p. 161)• Tarefas do proprietário da identidade (p. 165)

Se você foi autorizado a enviar e-mails em nome de outra pessoa, você é um remetente delegado. Se vocêfor um remetente delegado, recomendamos que leia as seguintes seções:

• Visão geral da autorização de envio (p. 154)• Tarefas do remetente delegado (p. 171)

Note

Você também pode controlar o acesso ao Amazon SES usando políticas do IAM. As políticas doIAM restringem o que os usuários individuais do IAM podem fazer, enquanto o envio de políticasde autorização restringe a forma como as 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 como usar as políticas do IAM com o Amazon SES, consulteControle do acesso ao Amazon SES (p. 388).

Visão geral da autorização de envio do Amazon SESEste tópico fornece uma visão geral do processo de autorização de envio e explica como os recursos deenvio de e-mails do Amazon SES, como notificações e cotas de envio, funcionam com a autorização deenvio.

Esta seção usa os seguintes termos:

• Identidade – endereço de e-mail ou domínio que os usuários do Amazon SES usam para enviar e-mail.• Proprietário de identidade – usuário do Amazon SES que verificou a propriedade de um endereço de e-

mail ou domínio usando os procedimentos descritos em Verificar identidades (p. 47).• Remetente delegado – entidade que está autorizada a enviar e-mails de uma identidade da qual ele não

é proprietário. Uma conta da AWS, um usuário do AWS Identity and Access Management (IAM) ou umserviço da AWS pode ter essa autoridade entre contas.

• Política de autorização de envio – documento que você anexa a uma identidade para especificar quempode enviar para essa identidade e em que condições.

• Nome de recurso da Amazon (ARN) – maneira padronizada de identificar exclusivamente um recursoda AWS em todos os serviços da AWS. No caso de autorização de envio, o recurso é a identidadeque o proprietário de identidade deseja que o remetente delegado use. Um exemplo de um ARN éarn:aws:ses:us-west-2:123456789012:identity/example.com.

Processo de autorização de envioA autorização de envio é baseada em políticas de autorização de envio. Se você desejar ativar umremetente delegado para enviar em seu nome, crie uma política de autorização de envio e associea política à sua identidade usando o console do Amazon SES ou a API do Amazon SES. Quando oremetente delegado tenta enviar um e-mail por meio do Amazon SES em seu nome, o remetente delegadopassa o ARN de sua identidade na solicitação ou no cabeçalho do e-mail.

Quando o Amazon SES recebe a solicitação para enviar o e-mail, ele verifica a política da sua identidade(se estiver presente) para determinar se você autorizou o remetente delegado a enviar no nome daidentidade. Se o remetente delegado estiver autorizado, o Amazon SES aceitará o e-mail; caso contrário, oAmazon SES retornará uma mensagem de erro.

O diagrama a seguir mostra a relação de alto nível entre os conceitos de autorização de envio:

154

Page 162: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVisão geral da autorização de envio

O processo de autorização de envio consiste nas seguintes etapas:

1. O proprietário da identidade verifica uma identidade com o Amazon SES usando o console do AmazonSES ou a API do Amazon SES. Para obter informações sobre o processo de verificação, consulteVerificar identidades (p. 47).

2. O remetente delegado oferece ao proprietário da identidade o ID da conta da AWS, o ARN do usuáriodo IAM ou o nome de serviço da AWS da entidade que fará o envio.

3. O proprietário da identidade cria uma política de autorização de envio e anexa a política à identidadeusando o console do Amazon SES ou a API do Amazon SES.

4. O proprietário da identidade fornece ao remetente delegado o ARN da identidade, para que o remetentedelegado possa fornecer o ARN ao Amazon SES no momento do envio do e-mail.

5. O remetente delegado configura notificações de devolução e de reclamação. O proprietário daidentidade também pode configurar notificações de comentários de e-mail para eventos de devoluçãoe de reclamação. Tanto o proprietário da identidade como o remetente delegado também podemconfigurar a publicação de eventos (p. 282) para capturar dados do evento de envio.

Note

Se o proprietário da identidade desabilitar as notificações de eventos de envio, o remetentedelegado deverá configurar a publicação de eventos para publicar eventos de devolução ede reclamação em um tópico do Amazon SNS ou em um fluxo do Kinesis Data Firehose.O remetente também deve aplicar o conjunto de configurações que contém a regra depublicação a cada e-mail que envia. Se nem o proprietário da identidade nem o remetentedelegado configurar um método de envio de notificações para eventos de devolução e dereclamação, o Amazon SES enviará notificações de eventos por e-mail automaticamente aoendereço no campo Return-Path (Caminho de retorno) do e-mail (ou ao endereço no campoSource (Origem), se você não tiver especificado um endereço de Return-Path), mesmo que oproprietário da identidade tenha desabilitado o encaminhamento de comentários de e-mail.

6. O remetente delegado tenta enviar um e-mail por meio do Amazon SES em nome do proprietário daidentidade passando o ARN da identidade do proprietário na solicitação ou no cabeçalho do e-mail.O remetente delegado pode enviar o e-mail usando a interface SMTP do Amazon SES ou a API doAmazon SES. Ao receber a solicitação, o Amazon SES examina as políticas que estão anexadas àidentidade, e aceitará o e-mail se o remetente delegado estiver autorizado a usar o endereço "From" e oendereço "Return Path"; do contrário, o Amazon SES retorna um erro e não aceita a mensagem.

7. Se o proprietário da identidade precisar cancelar a autorização do remetente delegado, o proprietário daidentidade editará a política de autorização de envio ou excluirá completamente a política. O proprietário

155

Page 163: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPolíticas de autorização de envio

da identidade poderá executar qualquer uma das ações usando o console do Amazon SES ou a API doAmazon SES.

Para obter mais informações sobre como o proprietário da identidade ou remetente delegado realizaessas tarefas, consulte Tarefas do proprietário da identidade (p. 165) ou Tarefas do remetentedelegado (p. 171), respectivamente.

Atribuição de recursos de envio de e-mailÉ importante compreender a função do remetente delegado e do proprietário da identidade com relaçãoaos recursos de envio de e-mail do Amazon SES, como a cota de envio diário, devoluções e reclamações,assinaturas DKIM, encaminhamento de comentários e assim por diante. A atribuição é a seguinte:

• Cotas de envio – o e-mail enviado das identidades do proprietário da identidade conta em relação àscotas de envio do remetente delegado.

• Devoluções e reclamações – os eventos de devolução e reclamação são registrados na conta doremetente delegado no Amazon SES e, dessa forma, podem afetar a reputação do remetente delegado.

• Assinatura do DKIM – se o proprietário da identidade tiver habilitado a assinatura do Easy DKIM parauma identidade, todos os e-mails enviados dessa identidade serão assinados pelo DKIM, incluindo os e-mails enviados por um remetente delegado. Somente o proprietário da identidade pode controlar se ose-mails são assinados pelo DKIM.

• Notificações – o proprietário da identidade e o remetente delegado podem configurar notificaçõespara devoluções e reclamações. O proprietário da identidade de e-mail pode também habilitar oencaminhamento de feedback por e-mail. Para obter informações sobre configuração de notificações,consulte Monitoramento da atividade de envio do Amazon SES (p. 252).

• Verificação – os proprietários de identidade são responsáveis por seguir o procedimento em Verificaridentidades (p. 47) para verificar se eles são proprietários dos endereços de e-mail e domínios queestão autorizando os remetentes delegados a usar. Os remetentes delegados não precisam verificar osendereços de e-mail ou domínios especificamente para autorização de envio.

• Regiões da AWS – o remetente delegado deve enviar os e-mails da região da AWS na qual a identidadedo proprietário da identidade é verificada. A política de autorização de envio que dá permissão aoremetente delegado deve ser anexada à identidade nessa região.

• Faturamento – todas as mensagens enviadas da conta do remetente delegado, incluindo e-mails queo remetente delegado envia usando endereços do proprietário da identidade, são faturadas para oremetente delegado.

Políticas de autorização de envio do Amazon SESPara habilitar uma outra conta da AWS, um usuário do Identity Access and Management (IAM) ouum serviço da AWS para enviar e-mail por meio do Amazon SES em seu nome, crie uma política deautorização de envio, que é um documento JSON que você anexa a uma identidade que possui. A políticalista explicitamente quem você permite que envie para essa identidade e em que condições. Com exceçãode você e das entidades às quais concedeu permissões explicitamente nas políticas, todos os demaisremetentes são negados. Uma identidade pode ter nenhuma política, uma política ou várias políticasanexadas a ela. Você também pode ter uma política com várias instruções para alcançar o efeito de váriaspolíticas.

As políticas podem ser simples ou podem ser configuradas para oferecer controle detalhado. Porexemplo, se você for proprietário de example.com, poderá criar uma política simples que conceda aoID 123456789012 da AWS permissão para enviar por esse domínio. Uma política mais detalhada podeespecificar que o ID 123456789012 da AWS pode enviar e-mails apenas de [email protected] e apenasem um período especificado.

156

Page 164: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPolíticas de autorização de envio

As políticas de autorização de envio do Amazon SES se aplicam somente às APIs de envio de e-mail(SendEmail, SendRawEmail, SendTemplatedEmail e SendBulkTemplatedEmail). Elas nãopermitem que um usuário acesse sua conta da AWS de nenhum outro modo.

Estrutura da políticaCada política de autorização de envio é um documento JSON que está anexado a uma identidade. Cadapolítica inclui as seções a seguir:

• Informações da política na parte superior do documento.• Uma ou mais declarações individuais, cada uma descrevendo um conjunto de permissões.

O exemplo de política a seguir concede ao ID da conta da AWS 123456789012 permissão para enviar apartir do domínio verificado example.com.

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

Você pode encontrar mais exemplos de política de autorização de envio em Exemplos de política deautorização de envio (p. 161).

Elementos da políticaEsta seção descreve os elementos contidos nas políticas de autorização de envio. Primeiro, descrevemoselementos que se aplicam a toda a política e, em seguida, descrevemos os elementos que se aplicamsomente à instrução em que estão incluídos. Seguimos com uma discussão sobre como adicionarcondições às instruções.

Para obter informações específicas sobre a sintaxe dos elementos, consulte Gramática da linguagem depolítica do IAM no Guia do usuário do IAM.

Informações da política

Há dois elementos que se aplicam à política como um todo: Id e Version. A tabela a seguir forneceinformações sobre esses elementos.

157

Page 165: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPolíticas de autorização de envio

Nome Descrição Obrigatório Valores válidos

Id Identifica exclusivamente apolítica.

Não Qualquer string

Version Especifica a versão da linguagemde acesso da política.

Não Qualquer string. Como umamelhor prática, recomendamosincluir esse campo com um valorde "2012-10-17".

Instruções específicas da políticaAs políticas de autorização de envio requerem pelo menos uma instrução. Cada instrução pode incluir oselementos descritos na tabela a seguir.

Nome Descrição Obrigatório Valores válidos

Sid Identificaexclusivamente ainstrução.

Não Qualquer string.

Effect Especifica o resultadoque você deseja quea instrução da políticaretorne no momento daavaliação.

Sim "Permitir" ou "Negar".

Resource Especifica a identidadeà qual a políticase aplica. Este éo endereço de e-mail ou domínioque o proprietárioda identidade estáautorizando o remetentedelegado a usar.

Sim O Nome de recursoda Amazon (ARN) daidentidade do e-mail.

Principal Especifica a conta daAWS, o usuário do IAMou o serviço da AWSque recebe a permissãona instrução.

Sim Um ID de conta daAWS, ARN de usuáriodo IAM ou serviço daAWS válidos. Os IDsde conta da AWS e osARNs de usuário doIAM são especificadosusando "AWS" (porexemplo, "AWS":["123456789012"]ou "AWS":["arn:aws:iam::123456789012:root"]).Os nomes deserviço da AWS sãoespecificados usando"Service" (porexemplo, "Service":["cognito-idp.amazonaws.com"]).

158

Page 166: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPolíticas de autorização de envio

Nome Descrição Obrigatório Valores válidosPara ver exemplosdo formato de ARNsde usuário do IAM,consulte AWS GeneralReference.

Action Especifica a ação deenvio de e-mail à qual ainstrução se aplica.

Sim "ses:SendEmail","ses:SendRawEmail","ses:SendTemplatedEmail","ses:SendBulkTemplatedEmail"

É possível especificaruma ou mais dessasoperações. Tambémé possível especificar"ses:Send*" paraabranger todas essasoperações. Se oremetente delegadoplaneja enviar e-mails usando ainterface SMTP, énecessário especificar"ses:SendRawEmail" ouusar "ses:Send*".

Condition Especifica quaisquerrestrições ou detalhessobre a permissão.

Não Consulte asinformações sobrecondições seguindoesta tabela.

Condições

Uma condição é qualquer restrição sobre a permissão na instrução. A parte da instrução que especifica ascondições pode ser a mais detalhada de todas as partes. Uma chave é a característica específica que é abase para a restrição de acesso, como a data e a hora da solicitação.

Você usa ambas as condições e as chaves em conjunto para expressar a restrição. Por exemplo, se vocêdeseja impedir que o remetente delegado faça solicitações para o Amazon SES em seu nome após 30 dejulho de 2019, use a condição chamada DateLessThan. Você usa a chave chamada aws:CurrentTimee a define para o valor 2019-07-30T00:00:00Z.

Você pode usar qualquer uma das chaves no âmbito da AWS listadas em Chaves disponíveis no Guia dousuário do IAM ou uma das seguintes chaves específicas do Amazon SES:

Chave de condição Descrição

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

ses:FromAddress Restringe o endereço "From".

ses:FromDisplayName Restringe o conteúdo da string que é usado comoo nome de exibição "From" (às vezes chamado de

159

Page 167: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPolíticas de autorização de envio

Chave de condição Descrição"amigável"). Por exemplo, o nome de exibição de "JohnDoe <[email protected]>" é John Doe.

ses:FeedbackAddress Restringe o endereço "Return Path", que é o endereçopara o qual devoluções e reclamações podem serenviadas a você por encaminhamento de feedback por e-mail. Para obter informações sobre reenvio de feedbackpor e-mail, consulte Notificações do Amazon SES via e-mail (p. 259).

Você pode usar as condições StringLike e StringEquals com as chaves do Amazon SES. Essascondições são para correspondência de strings maiúsculas e minúsculas. Para StringLike, os valorespodem incluir uma correspondência de vários caracteres curinga (*) ou uma correspondência de um únicocaractere curinga (?) em qualquer lugar da string. Por exemplo, a condição a seguir especifica que oremetente delegado só pode enviar a partir de um endereço "From" que começa com invoicing e terminacom example.com:

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

Também é possível usar a condição StringNotLike para impedir que remetentes delegadosenviem e-mails de determinados endereços de e-mail. Por exemplo, você pode não permitir o enviode [email protected], bem como endereços semelhantes, como "admin"@example.com, [email protected] ou [email protected], incluindo a seguinte condição em sua declaração depolítica:

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

Para obter mais informações sobre como especificar condições, consulte Elementos da política JSON doIAM: condição no Guia do usuário do IAM.

Requisitos de políticaAs políticas devem atender a todos os seguintes requisitos:

• Cada política deve incluir pelo menos uma instrução.• Cada política deve incluir pelo menos um elemento principal válido.• Cada política deve especificar um recurso, e esse recurso deve ser o ARN da identidade à qual a política

está anexada.• Os proprietários de identidade podem associar até 20 políticas a cada identidade exclusiva.• As políticas não podem exceder 4 kilobytes (KB) de tamanho.• Os nomes de política não podem exceder 64 caracteres. Além disso, eles só podem incluir caracteres

alfanuméricos, traços e sublinhados.

160

Page 168: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExemplos de política de autorização de envio

Exemplos de política de autorização de envio doAmazon SESA autorização de envio permite que você especifique as condições detalhadas sob as quais você permiteque remetentes delegados enviem em seu nome.

Os exemplos a seguir mostram como escrever políticas para controlar diferentes aspectos de envio:• Especificação do remetente delegado (p. 161)• Restringir o endereço "From". (p. 162)• Como restringir o momento em que o delegado pode enviar e-mail (p. 163)• Restrição da ação de envio de e-mail (p. 163)• Restringir o nome de exibição do remetente de e-mail (p. 164)• Uso de várias instruções (p. 165)

Especificação do remetente delegadoO principal, que é a entidade para a qual você está concedendo permissão, pode ser uma conta da AWS,um usuário do AWS Identity and Access Management (IAM) ou um serviço da AWS.

O exemplo a seguir mostra uma política simples que permite ao ID da AWS 123456789012 enviar e-mail da identidade verificada example.com (que pertence à conta da AWS 888888888888). A instruçãoCondition nesta política permite que apenas o delegado (ou seja, o ID da AWS 123456789012) enviee-mail do endereço marketing+.*@example.com, em que .* é qualquer string que o remetente desejeadicionar depois 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" } } } ]}

O seguinte exemplo de política concede permissão a dois usuários do IAM para enviar a partir deidentidade example.com. Os usuários do IAM são especificados pelo Nome de recurso da Amazon (ARN).

{ "Id":"ExampleAuthorizationPolicy",

161

Page 169: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExemplos de política de autorização de envio

"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" ] } ]}

O seguinte exemplo de política concede permissão ao Amazon Cognito para enviar a partir de identidadeexample.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" ] } ]}

Restringir o endereço "From".Se você usar um domínio verificado, poderá criar uma política que permita que apenas o remetentedelegado envie a partir de um endereço de e-mail especificado. Para restringir o endereço "From", vocêdefine uma condição na chave chamada ses:FromAddress. A política a seguir permite que o ID da contada AWS 123456789012 envie a partir da identidade example.com, mas apenas a partir do endereço de e-mail [email protected].

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

162

Page 170: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExemplos de política de autorização de envio

"123456789012" ] }, "Action":[ "SES:SendEmail", "SES:SendRawEmail" ], "Condition":{ "StringEquals":{ "ses:FromAddress":"[email protected]" } } } ]}

Como restringir o momento em que o delegado pode enviar e-mailVocê também pode configurar sua política de autorização de remetente para que um remetente delegadosó possa enviar e-mails em um momento específico do dia ou em um determinado intervalo de datas.Por exemplo, se pretende enviar uma campanha de e-mail durante o mês de setembro de 2018, use aseguinte política para restringir a capacidade do delegado para enviar e-mails somente durante esse mês.

{ "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":"2018-08-31T12:00Z" }, "DateLessThan":{ "aws:CurrentTime":"2018-10-01T12:00Z" } } } ]}

Restrição da ação de envio de e-mailHá duas ações que os remetentes podem usar para enviar um e-mail com o Amazon SES: SendEmail eSendRawEmail, dependendo da quantidade de controle que o remetente quer sobre o formato do e-mail.As políticas de autorização de envio permitem que você restrinja o remetente delegado a uma dessas duasações. No entanto, muitos proprietários de identidade deixam os detalhes das chamadas de envio de e-mail a cargo do remetente delegado habilitando as duas ações em suas políticas.

163

Page 171: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExemplos de política de autorização de envio

Note

Se você deseja permitir que o remetente delegado acesse o Amazon SES por meio da interfaceSMTP, escolha SendRawEmail no mínimo.

Se seu caso de uso envolve restringir a ação, você pode fazer isso incluindo apenas uma das ações emsua política de autorização de envio. O exemplo a seguir mostra como restringir a ação 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" ] } ]}

Restringir o nome de exibição do remetente de e-mailAlguns clientes de e-mail exibem o nome "amigável" do remetente do e-mail (se o cabeçalho de e-mail fornecer), em vez do endereço "From" real. Por exemplo, o nome de exibição de "John Doe<[email protected]>" é John Doe. Por exemplo, você pode enviar e-mails de [email protected],mas prefere que os destinatários vejam que o e-mail é proveniente de Marketing em vez [email protected]. A política a seguir permite que o ID da conta da AWS 123456789012 envie a partir daidentidade example.com, mas somente se o nome de exibição do endereço "From" incluir 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" } } } ]

164

Page 172: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do proprietário da identidade

}

Uso de várias instruçõesSua política de autorização de envio pode incluir várias instruções. O exemplo de política a seguir contémduas instruções. A primeira instrução autoriza duas contas da AWS a enviar de [email protected] que o endereço "From" e o endereço de feedback usem o domínio example.com. A segundainstrução autoriza um usuário do IAM a enviar e-mails de [email protected] desde que o e-mail dodestinatário esteja no domínio example.com.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"AuthorizeAWS", "Effect":"Allow", "Resource":"arn:aws:ses:us-east-1:999999999999:identity/[email protected]", "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/[email protected]", "Principal":{ "AWS":"arn:aws:iam::333333333333:user/Jane" }, "Action":[ "SES:SendEmail", "SES:SendRawEmail" ], "Condition":{ "ForAllValues:StringLike":{ "ses:Recipients":"*@example.com" } } } ]}

Tarefas do proprietário da identidade para autorizaçãode envio do Amazon SESEsta seção descreve as etapas que os proprietários de identidade devem fazer ao configurar a autorizaçãode envio.

165

Page 173: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do proprietário da identidade

Tópicos• Verificação de uma identidade para autorização de envio do Amazon SES (p. 166)• Configuração de notificações de proprietário de identidade para autorização de envio do Amazon

SES (p. 166)• Obtenção de informações do remetente delegado para autorização de envio do Amazon

SES (p. 167)• Criação de uma política para autorização de envio do Amazon SES (p. 167)• Fornecimento das informações de identidade para autorização de envio do Amazon SES ao remetente

delegado (p. 170)• Gerenciamento de políticas para autorização de envio do Amazon SES (p. 170)

Verificação de uma identidade para autorização de envio doAmazon SESA primeira etapa para configurar a autorização de envio é comprovar que você possui o endereço de e-mail ou o domínio que o remetente delegado usará para enviar o e-mail. O procedimento de verificação édescrito em Verificar identidades (p. 47).

Você pode confirmar que um endereço de e-mail ou domínio foi verificado ao conferir o status naseção Gerenciamento de identidades do console do Amazon SES ou usando a operação da APIGetIdentityVerificationAttributes.

Para que você ou o remetente delegado possam enviar e-mails para endereços de e-mail não verificados,é necessário enviar uma solicitação para que sua conta seja removida do sandbox do Amazon SES. Paraobter mais informações, consulte Sair da sandbox do Amazon SES (p. 73).

Important

As contas da AWS de ambos, o proprietário da identidade e o remetente delegado, devem serremovidas do sandbox para que qualquer uma das contas possa enviar e-mails para endereçosnão verificados.

Configuração de notificações de proprietário de identidade paraautorização de envio do Amazon SESSe você autorizar um remetente delegado a enviar e-mails em seu nome, o Amazon SES contará todasas devoluções e reclamações que esses e-mails gerarem em relação aos limites de devolução e dereclamação do remetente delegado em vez dos seus. No entanto, se suas identidades de envio acabaremem listas negras antispam de terceiros como resultado de mensagens enviadas por um remetentedelegado, a reputação de suas identidades poderá ser danificada. Por esse motivo, se você for umproprietário de identidade, deverá configurar o encaminhamento de comentários de e-mail para suasidentidades. Para obter mais informações, consulte Notificações do Amazon SES via e-mail (p. 259).

Os remetentes delegados podem configurar suas próprias notificações de devolução e de reclamaçãopara as identidades que você autorizou que eles usem. Eles também podem configurar a publicação deeventos (p. 282) para enviar notificações quando ocorrerem eventos de devolução ou de reclamação. Seo proprietário da identidade desativar o encaminhamento de comentários, o remetente delegado deveráconfigurar a publicação de eventos para publicar eventos de devolução e de reclamação em um tópicodo Amazon SNS ou em um fluxo do Kinesis Data Firehose. Se nem o proprietário da identidade nemo remetente delegado configurar um método de envio de notificações para eventos de devolução e dereclamação, ou se o remetente não aplicar o conjunto de configurações que usa a regra de publicaçãode eventos, o Amazon SES enviará notificações de eventos por e-mail automaticamente ao endereço

166

Page 174: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do proprietário da identidade

no campo Return-Path (Caminho de retorno) do e-mail (ou ao endereço no campo Source (Origem),se você não tiver especificado um endereço de Return-Path), mesmo que você tenha desabilitado oencaminhamento de comentários de e-mail. Esse processo é ilustrado na imagem a seguir.

Obtenção de informações do remetente delegado paraautorização de envio do Amazon SESSua política de autorização de envio deve especificar pelo menos um principal, que é a entidade para aqual você está concedendo acesso. Para políticas de autorização de envio do Amazon SES, a principalpode ser uma conta da AWS, um usuário ao AWS Identity and Access Management (IAM) ou um serviçoda AWS.

O tipo de principal que você escolhe depende de sua preferência, mas se quiser o melhor controlegranular, peça para que o remetente delegado configure um usuário do IAM para que apenas umremetente delegado possa enviar para você em vez de qualquer usuário na conta da AWS do remetentedelegado. O remetente delegado pode encontrar informações sobre a configuração de um usuário do IAMem Criar um usuário do IAM em sua conta da AWS no Guia do usuário do IAM.

Depois que você decidiu que deseja conceder acesso a uma conta da AWS, um usuário do IAM ouum serviço da AWS, peça para o remetente delegado o ID da conta da AWS ou o Nome de recurso daAmazon (ARN) do usuário do IAM para que possa incluí-lo em sua política de autorização de envio.Você pode pedir para o remetente delegado obter as instruções para encontrar essas informações emFornecimento das informações para o proprietário da identidade (p. 172). Se o remetente delegadoestiver em um serviço da AWS, consulte a documentação do serviço para determinar o nome do serviço.

Criação de uma política para autorização de envio do AmazonSESPara autorizar um remetente delegado a enviar e-mails usando um endereço de e-mail ou domínio(uma identidade) de sua propriedade, crie uma política de autorização de envio e anexe essa política àidentidade. Uma identidade do pode ter zero, uma ou várias políticas. No entanto, uma única política sópode ser associada a uma única identidade.

Você pode criar uma política de autorização de envio das seguintes formas:

• Ao usar o Gerador de políticas – Você pode criar uma política simples usando o Gerador de políticas noconsole do Amazon SES. Além de especificar quem pode enviar os e-mails, você pode restringir o enviode e-mails com condições de acordo com a hora e o período em que os e-mails podem ser enviados,o endereço "From", o nome de exibição de "From", o endereço para o qual devoluções e reclamaçõessão enviadas, os endereços de destinatário e o IP de origem. Você também pode usar o Gerador depolíticas para criar a estrutura de uma política simples e, em seguida, personalizá-la mais tarde editandoa política.

• Ao criar uma política personalizada – Se você deseja incluir condições mais avançadas ou usar umserviço da AWS como o principal, é possível criar uma política personalizada e anexá-la à identidadeusando o console do Amazon SES ou a API do Amazon SES.

Este tópico descreve os dois métodos.

Note

As políticas de autorização de envio que você anexa a identidades de endereços de e-mail têmprecedência sobre as políticas que você anexa às identidades de domínio correspondentes. Porexemplo, se você criar uma política para example.com que não permita um remetente delegadoe criar uma política para [email protected] que permita o remetente delegado, o remetente

167

Page 175: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do proprietário da identidade

delegado poderá enviar e-mails de [email protected], mas não de qualquer outro endereçono domínio example.com.Se você criar uma política para example.com que permita um remetente delegado e criaruma política para [email protected] que não permita o remetente delegado, o remetentedelegado poderá enviar e-mails de qualquer endereço no domínio example.com, exceto [email protected].

Criar uma política usando o gerador de políticas

Você pode usar o Gerador de políticas para criar uma política de autorização simples usando o seguinteprocedimento.

Para criar uma política usando o Gerador de políticas

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, em Identity Management, escolha Domains ou Email Addresses.3. Na lista de identidades, escolha a identidade para a qual você quer criar uma política.4. No painel de detalhes, expanda Identity Policies, escolha Create Policy e Policy Generator.5. No assistente, crie uma declaração de política escolhendo valores para os seguintes campos.

Encontre informações sobre essas opções em Políticas de autorização de envio (p. 156).

• Efeito – Se você deseja conceder acesso, escolha Allow caso contrário, escolha Deny.• Principais – Insira o ID da conta da AWS de 12 dígitos ou o ARN de um usuário do IAM a quem

você está permitindo ou negando o acesso e, em seguida, escolha Add. Você pode adicionar maisprincipais repetindo esta etapa. Um exemplo de um ID de conta da AWS é 123456789012 e umexemplo do ARN de um usuário do IAM é arn:aws:iam::123456789012:user/John.

Note

O assistente do gerador de políticas atualmente não é compatível com os principais deserviço da AWS. Para adicionar um principal de serviço da AWS, você deverá criar umapolítica personalizada (p. 169) ou usar o gerador de políticas para adicionar um principalde conta da AWS ou usuário do IAM e, em seguida, editar (p. 170) a política.

• Ações – Escolha o acesso de envio de e-mails ao qual essa política se aplica. Normalmente,os proprietários de identidade escolhem as duas opções para oferecer ao remetente delegadoliberdade para escolher como implementar o envio de e-mail. Para obter mais informações, consulteInstruções específicas da política (p. 158).

6. (Opcional) Se você deseja adicionar restrições à política, escolha Add Conditions e, em seguida,escolha as seguintes informações:

• Chave – Esta é a característica que é a base da restrição de acesso. O Gerador de políticas permiteque você escolha uma chave específica do Amazon SES ou uma das chaves da AWS mais usadas(hora atual e IP de origem). Para obter mais detalhes, consulte Condições (p. 159). Se vocêdeseja especificar as chaves da AWS mais avançadas listadas em Chaves disponíveis, edite apolítica depois de criá-la.

• Condição – Este é o tipo de condição que você deseja especificar. Por exemplo, há condições destrings, condições numéricas, condições de data e hora, e assim por diante. Para ver uma lista dascondições, consulte Tipos de condição no Guia do usuário do IAM.

• Valor – Este é o valor que será testado em relação à condição. Para obter exemplos, consulte aspolíticas em Exemplos de política de autorização de envio (p. 161).

Depois de escolher a chave, condição e valor, escolha Add Condition. A condição aparece na listaConditions. Você pode remover as condições escolhendo Remove ao lado de uma condição na lista.Você pode adicionar outra condição escolhendo Add Conditions novamente.

168

Page 176: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do proprietário da identidade

7. Quando terminar de adicionar as condições, escolha Add Statement. A instrução aparece na listaStatements, em que você pode optar por editar ou remover. Você pode adicionar outras instruçõesrepetindo as etapas de 5 – 7.

8. Quando você terminar de adicionar as instruções, escolha Next.9. Na caixa de diálogo Edit Policy, revise sua política, edite-a, se necessário, e escolha Apply Policy.

Criação de uma política personalizada

Se você desejar criar uma política personalizada e anexá-la a uma identidade, tem as seguintes opções:

• Como usar a API do Amazon SES – Crie uma política em um editor de texto e, em seguida, anexe apolítica à identidade usando a API PutIdentityPolicy descrita no Amazon Simple Email Service APIReference.

• Como usar o console do Amazon SES – Crie uma política em um editor de texto e a anexe a umaidentidade colando-a no editor de políticas personalizadas no console do Amazon SES. O procedimentoa seguir descreve esse método.

169

Page 177: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do proprietário da identidade

Para criar uma política personalizada usando o editor de políticas personalizadas

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, em Identity Management, escolha Domains ou Email Addresses.3. Na lista de identidades, escolha a identidade para a qual você quer criar uma política.4. No painel de detalhes, expanda Identity Policies, escolha Create Policy e Custom Policy.5. No painel Edit Policy, cole o texto da política.6. Selecione Apply Policy.

Fornecimento das informações de identidade para autorização deenvio do Amazon SES ao remetente delegadoDepois de criar sua política de autorização de envio e anexá-la à sua identidade, você pode fornecer aoremetente delegado o Nome de recurso da Amazon (ARN) da identidade. O remetente delegado passará oARN para o Amazon SES na operação de envio de e-mail ou no cabeçalho do e-mail. Use o procedimentoa seguir para localizar o ARN de sua identidade.

Para encontrar o ARN de uma identidade

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, em Identity Management, escolha Domains ou Email Addresses.3. Na lista de identidades, escolha a identidade à qual você anexou a política de autorização de envio.4. Na parte superior do painel de detalhes, após Identity ARN, você verá o ARN da identidade. Ele será

semelhante a arn:aws:ses:us-east-1:123456789012:identity/[email protected]. Copie todo o ARN eentregue-o ao remetente delegado.

Gerenciamento de políticas para autorização de envio doAmazon SESAlém de criar e anexar políticas a identidades conforme explicado em Criar uma política (p. 167), vocêpode editar, remover, listar e recuperar as políticas de uma identidade, como descrito nas seguintesseções.

Note

Para revogar permissões, você pode editar uma política ou removê-la.

Editando uma política

A maneira mais fácil de criar uma política é usar o console do Amazon SES. Se você quiser usar a APIdo Amazon SES, use a operação GetIdentityPolicies para recuperar a política, edite a política usando umeditor de texto e, em seguida, use a operação PutIdentityPolicy para substituir a política mais antiga.

O procedimento a seguir mostra como editar uma política usando o console do Amazon SES.

Para editar uma política usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, em Identity Management, escolha Domains ou Email Addresses.

170

Page 178: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do remetente delegado

3. Na lista de identidades, escolha a identidade que está associada à política que você deseja editar.4. No painel de detalhes, expanda Identity Policies.5. Escolha Edit Policy ao lado da política que deseja editar.6. No painel Edit Policy, edite a política e escolha Apply Policy.7. Na caixa de diálogo Overwrite Existing Policy, escolha Overwrite.

Remoção de uma política

Para revogar permissões a qualquer momento, você pode simplesmente remover a política. Você poderemover uma política usando a operação da API DeleteIdentityPolicy ou pode usar o console do AmazonSES, conforme descrito no seguinte procedimento.

Important

Depois de remover uma política, não é possível recuperá-la. Recomendamos que você façabackup da política copiando e colando-a em um arquivo de texto antes de remover a política.

Para remover uma política usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, em Identity Management, escolha Domains ou Email Addresses.3. Na lista de identidades, escolha a identidade que está associada à política que você deseja remover.4. No painel de detalhes, expanda Identity Policies. Escolha Remove Policy ao lado da política que

deseja remover.5. Na caixa de diálogo Remove Policy, selecione Yes, Remove Policy.

Listagem e recuperação de políticas

Você pode listar as políticas que são anexadas a uma identidade usando a operação da APIListIdentityPolicies. Você também pode recuperar as políticas em si, usando a operação da APIGetIdentityPolicies.

Você também pode usar o console do Amazon SES para realizar ambas as tarefas, conforme descrito noseguinte procedimento.

Para relacionar e mostrar as políticas anexadas a uma identidade usando o console do AmazonSES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, em Identity Management, escolha Domains ou Email Addresses.3. Na lista de identidades, escolha a identidade para a qual você quer ver as políticas.4. No painel de detalhes, expanda Identity Policies.5. Escolha Show Policy ao lado da política que deseja ver.

Tarefas do remetente delegado para autorização deenvio do Amazon SESComo remetente delegado, você está enviando e-mails entre contas. Isso significa que você está enviandoe-mails em nome de uma identidade que não possui, mas está autorizado a usar. Embora você esteja

171

Page 179: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do remetente delegado

enviando em nome do proprietário da identidade, as devoluções e as reclamações contam nas suasmétricas de devolução e reclamação da sua conta da AWS, e o número de mensagens que você enviaconta na sua cota de envio. Você também é responsável por solicitar qualquer aumento de cota de envioque possa precisar para enviar e-mails do proprietário da identidade.

Como remetente delegado, você deve concluir as seguintes tarefas:

• Fornecimento das informações para o proprietário da identidade (p. 172)• Uso de notificações de remetente delegado (p. 172)• Envio de e-mails para o proprietário da identidade (p. 175)

Fornecimento das informações ao proprietário da identidade paraautorização de envio do Amazon SESComo remetente delegado, você deve fornecer ao proprietário da identidade seu ID da conta da AWS ouo Nome de recurso da Amazon (ARN) do usuário do AWS Identity and Access Management (IAM) queenviará o e-mail em nome do proprietário de identidade. Você pode encontrar essas informações usandoos seguintes procedimentos.

Para encontrar seu ID da conta da AWS

1. Faça login no Console de gerenciamento da AWS em https://console.aws.amazon.com.2. Na barra de navegação, escolha seu nome e Minha conta.3. Expanda Account Settings. Esta seção exibe o ID de sua conta da AWS.

Para encontrar o ARN de um usuário do IAM

1. Faça login no Console de gerenciamento da AWS e abra o console da IAM em https://console.aws.amazon.com/iam/.

2. No painel de navegação, escolha Usuários.3. Na lista de usuários, escolha o nome de usuário. A seção Summary exibe o ARN. O ARN é

semelhante ao exemplo a seguir: arn:aws:iam::123456789012:user/John.

Uso de notificações do remetente delegado para autorização deenvio do Amazon SESComo remetente delegado, as devoluções e as reclamações contam na sua métrica de devolução ereclamação, e não na do proprietário de identidade. Se as taxas de devolução ou de reclamação de suaconta forem muito altas, poderemos colocar sua conta em análise ou pausar a capacidade de sua contapara enviar e-mails. Por esse motivo, é importante que você configure notificações e tenha um processopara monitorá-las. Você também precisa ter um processo para remover endereços que foram devolvidosou reclamados de suas listas de correspondência.

Os remetentes delegados podem configurar o Amazon SES para enviar notificações quando ocorreremeventos de devolução e de reclamação. Os remetentes delegados também podem configurar a publicaçãode eventos (p. 282) para publicar notificações de devolução e de reclamação no Amazon SNS ou noKinesis Data Firehose.

Note

Se você configurar o Amazon SES para enviar notificações usando o Amazon SNS, você serácobrado pelas taxas padrão do Amazon SNS para as notificações que receber. Para obter maisinformações, consulte a página de definição de preço do Amazon SNS.

172

Page 180: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do remetente delegado

Tópicos• Definição de uma configuração de notificação de identidade entre contas do Amazon SES (p. 173)• Edição de uma configuração de notificação entre contas do Amazon SES (p. 173)• Visualização das notificações de identidade entre contas do Amazon SES (p. 174)• Remoção de uma configuração de notificação de identidade entre contas do Amazon SES (p. 174)

Definição de uma configuração de notificação de identidade entre contas doAmazon SES

Antes de configurar notificações, você precisa saber o Nome de recurso da Amazon (ARN) daidentidade que o proprietário de identidade autorizou você usar, e para os quais você deseja configurarnotificações. Por exemplo, o ARN da identidade [email protected] será similar a arn:aws:ses:us-east-1:123456789012:identity/[email protected]. Se o proprietário da identidade não tiver fornecido oARN da identidade, encaminhe-o para o procedimento em Fornecimento das informações de identidade aoremetente delegado (p. 170).

A maneira mais fácil de configurar notificações é usar o console do Amazon SES. Você também podeusar a operação de API SetIdentityNotificationTopic, passando o ARN da identidade como o parâmetroIdentity.

O procedimento a seguir mostra como configurar notificações usando o console do Amazon SES.

Para configurar notificações de devolução, reclamação ou entrega do Amazon SNS usando oconsole do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, escolha Cross-Account Notifications (Notificações entre contas).3. Escolha Add Notification Config.4. Na caixa de diálogo Add Notification Configuration (Adicionar configuração de notificação), em Identity

ARN (ARN da identidade), digite o ARN da identidade para a qual você deseja configurar notificações.A identidade não pode pertencer à conta com a qual você está conectado no momento.

5. Selecione os tópicos do Amazon SNS que você deseja usar para devoluções, reclamações ouentregas. Você também pode criar novos tópicos do Amazon SNS para essas notificações.

Important

Os tópicos do Amazon SNS que você usa para notificações do Amazon SES devem estar namesma região da AWS que você usa para enviar e-mails usando o Amazon SES.

Você pode optar por publicar notificações de devolução, reclamação e entrega no mesmo tópico doAmazon SNS ou em diferentes tópicos do Amazon SNS. Se você quiser usar um tópico do AmazonSNS que não possui, o proprietário desse tópico deve configurar uma política de acesso do AmazonSNS que permita que sua conta chame a ação SNS:Publish no tópico. Para obter informaçõessobre como controlar o acesso ao tópico do Amazon SNS com o uso de políticas do IAM, consulteGerenciamento do acesso aos seus tópicos do Amazon SNS.

6. Escolha Save Config para salvar sua configuração de notificação. Pode haver um breve intervaloantes que essas alterações entrem em vigor.

Edição de uma configuração de notificação entre contas do Amazon SES

A maneira mais fácil de editar configurações de notificação é usar o console do Amazon SES. Se vocêdesejar usar a API do Amazon SES, use a operação de API SetIdentityNotificationTopic e passe o ARN daidentidade como o parâmetro Identity.

173

Page 181: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do remetente delegado

O procedimento a seguir mostra como editar uma configuração de notificação entre contas usando oconsole do Amazon SES.

Para editar uma configuração de notificação entre contas usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Cross-Account Notifications.

As identidades entre contas para as quais você configurou notificações estão listadas no painel dedetalhes Notificações entre contas.

3. Escolha o ARN da identidade para a qual você deseja visualizar a configuração de notificação.4. Edite as configurações de notificação e escolha Save Config.

Visualização das notificações de identidade entre contas do Amazon SES

A maneira mais fácil de visualizar suas configurações de notificação é usar o console do Amazon SES.Você também pode usar a operação de API GetIdentityNotificationAttributes, passando o ARN daidentidade como o parâmetro Identity.

Note

As únicas identidades entre contas exibidas na lista de identidades entre contas são asidentidades para as quais você configurou as notificações usando o procedimento descrito emDefinição de uma configuração de notificação (p. 173).

Para visualizar suas configurações de notificação entre contas usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Cross-Account Notifications.

As identidades entre contas para as quais você configurou notificações estão listadas no painel dedetalhes Notificações entre contas.

3. Escolha o ARN de uma identidade.

A caixa de diálogo Editar notificação de configuração exibe as configurações da identidade.

Remoção de uma configuração de notificação de identidade entre contas doAmazon SES

A maneira mais fácil de remover uma configuração de notificação é usar o console do Amazon SES. Vocêtambém pode usar a operação de API SetIdentityNotificationTopic, passando o ARN da identidade como oparâmetro Identity e passando o valor nulo para o parâmetro SnsTopic. Para remover completamentea configuração de notificação, você deve executar esta operação para cada tipo de notificação (devolução,reclamação ou entrega) que foi definido.

Note

Quando você remover uma configuração de notificação, o Nome de recurso da Amazon (ARN)da identidade entre contas será removido da lista de Nomes de recursos da Amazon (ARNs)de identidade entre contas no console do Amazon SES. Isso não significa que você nãopossa continuar a fazer envios para essa identidade; apenas significa que você não está maisconfigurado para receber notificações de devolução, reclamação ou entrega. Se você desejarreativar notificações, repita o procedimento de configuração de notificação descrito em Definiçãode uma configuração de notificação (p. 173).

174

Page 182: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do remetente delegado

O procedimento a seguir mostra como remover uma configuração de notificação entre contas usando oconsole do Amazon SES.

Para remover uma configuração de notificação entre contas usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Cross-Account Notifications.

As identidades entre contas para as quais você configurou notificações estão listadas no painel dedetalhes Notificações entre contas.

3. Escolha a caixa à esquerda da identidade cruzada que você deseja remover e, em seguida, escolhaRemove.

4. Na caixa de diálogo Remove Cross-Account Notification Config, escolha Delete Notification config.

O Nome de recurso da Amazon (ARN) da identidade entre contas não aparece mais na lista deidentidade x entre contas. Isso não significa que você não possa enviar para a identidade, apenas quenão configurou mais notificações para ela.

Envio de e-mails para proprietário da identidade para autorizaçãode envio do Amazon SESComo remetente delegado, você envia e-mails da mesma forma que outros remetentes do Amazon SES,mas fornece o ARN da identidade que o proprietário de identidade autorizou você a usar. Quando vocêchama o Amazon SES para enviar o e-mail, o Amazon SES verifica se a identidade especificada tem umapolítica que autoriza o envio para ele.

Há várias formas de especificar o ARN da identidade quando você envia um e-mail. O método que vocêpode usar depende se o e-mail é enviado usando as operações de API do Amazon SES ou a interfaceSMTP do Amazon SES.

Important

Para que um e-mail seja enviado com êxito, é necessário se conectar ao endpoint do AmazonSES na região da AWS em que o proprietário da identidade a verificou.Além disso, as contas da AWS de ambos, o proprietário da identidade e o remetente delegado,devem ser removidas do sandbox para que qualquer uma delas possa enviar e-mails paraendereços não verificados. Para obter mais informações, consulte Sair da sandbox do AmazonSES (p. 73).

Uso da API Amazon SES

Assim como com qualquer remetente de e-mail do Amazon SES, se você acessar o Amazon SES pormeio da API do Amazon SES (diretamente por meio de HTTPS ou indiretamente por meio de um SDK daAWS), poderá escolher entre uma das duas ações de envio de e-mails: SendEmail e SendRawEmail. OAmazon Simple Email Service API Reference descreve os detalhes dessas APIs, mas fornecemos umavisão geral dos parâmetros de autorização de envio aqui.

SendRawEmail

Se você deseja usar SendRawEmail para poder controlar o formato de seus e-mails, você podeespecificar a identidade entre contas de uma de duas formas:

• Passe parâmetros opcionais para a API SendRawEmail. Os parâmetros necessário são descritos natabela a seguir:

175

Page 183: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do remetente delegado

Parâmetro Descrição

SourceArn O ARN da identidade associado à política de autorizaçãode envio que permite que você envie para o endereçode e-mail especificado no parâmetro Source deSendRawEmail.

Note

Se você só especificar o SourceArn, o AmazonSES definirá o endereço "From" (De) e osendereços "Return Path" (Caminho de retorno)para a identidade especificada em SourceArn.

FromArn O ARN da identidade associado à política de autorizaçãode envio que permite que você especifique um endereço"From" específico no cabeçalho do e-mail bruto.

ReturnPathArn O ARN da identidade associado à política de autorizaçãode envio que permite que você use o endereço dee-mail especificado no parâmetro ReturnPath deSendRawEmail.

• Inclua cabeçalhos X no e-mail. Cabeçalhos X são os cabeçalhos personalizados que você pode usaralém dos cabeçalhos de e-mail padrão (como os cabeçalhos De, Responder para ou Assunto). OAmazon SES reconhece três cabeçalhos X que você pode usar para especificar os parâmetros deautorização de envio:

Important

Não inclua esses cabeçalhos X na assinatura DKIM, pois eles são removidos pelo Amazon SESantes de enviar o e-mail.

Cabeçalho X Descrição

X-SES-SOURCE-ARN Corresponde a SourceArn.

X-SES-FROM-ARN Corresponde a FromArn.

X-SES-RETURN-PATH-ARN Corresponde a ReturnPathArn.

O Amazon SES remove todos os cabeçalhos X do e-mail antes de enviá-lo. Se você incluir váriasinstâncias de um cabeçalho X, o Amazon SES só usará a primeira instância.

O exemplo a seguir mostra um e-mail que inclui cabeçalhos X de autorização de envio:

X-SES-SOURCE-ARN: arn:aws:ses:us-west-2:123456789012:identity/example.comX-SES-FROM-ARN: arn:aws:ses:us-west-2:123456789012:identity/example.comX-SES-RETURN-PATH-ARN: arn:aws:ses:us-west-2:123456789012:identity/example.com

From: [email protected]: [email protected]: [email protected]: subjectContent-Type: multipart/alternative; boundary="----=_boundary"

------=_boundary

176

Page 184: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTarefas do remetente delegado

Content-Type: text/plain; charset=UTF-8Content-Transfer-Encoding: 7bit

body------=_boundaryContent-Type: text/html; charset=UTF-8Content-Transfer-Encoding: 7bit

body------=_boundary--

SendEmail

Se você usar a operação SendEmail, poderá especificar a identidade entre contas ao passar osparâmetros opcionais abaixo. Você não pode usar o método de cabeçalho X ao usar a operaçãoSendEmail.

Parâmetro Descrição

SourceArn O ARN da identidade associado à política de autorizaçãode envio que permite que você envie para o endereçode e-mail especificado no parâmetro Source deSendRawEmail.

ReturnPathArn O ARN da identidade associado à política de autorizaçãode envio que permite que você use o endereço dee-mail especificado no parâmetro ReturnPath deSendRawEmail.

O exemplo a seguir mostra como enviar um e-mail que inclua os atributos SourceArn e ReturnPathArnusando a operação SendEmail e o SDK for Python.

import boto3from botocore.exceptions import ClientError

# Create a new SES resource and specify a region.client = boto3.client('ses',region_name="us-west-2")

# Try to send the email.try: #Provide the contents of the email. response = client.send_email( Destination={ 'ToAddresses': [ '[email protected]', ], }, Message={ 'Body': { 'Html': { 'Charset': 'UTF-8', 'Data': 'This email was sent with Amazon SES.', }, }, 'Subject': { 'Charset': 'UTF-8', 'Data': 'Amazon SES Test', }, },

177

Page 185: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de endereços IP dedicados

SourceArn='arn:aws:ses:us-west-2:123456789012:identity/example.com', ReturnPathArn='arn:aws:ses:us-west-2:123456789012:identity/example.com', Source='[email protected]', ReturnPath='[email protected]' )# Display an error if something goes wrong. except ClientError as e: print(e.response['Error']['Message'])else: print("Email sent! Message ID:"), print(response['ResponseMetadata']['RequestId'])

Uso da interface SMTP do Amazon SES

Ao usar a interface SMTP do Amazon SES para envio entre contas, precisará incluir os cabeçalhos X-SES-SOURCE-ARN, X-SES-FROM-ARN e X-SES-RETURN-PATH-ARN em sua mensagem. Transmitaesses cabeçalhos depois que executar o comando DATA na conversa SMTP.

Uso de endereços IP dedicados com o AmazonSES

Quando você cria uma nova conta do Amazon SES, seus e-mails são enviados de endereços IPcompartilhados com outros usuários do Amazon SES. Por um valor mensal adicional, você pode alugarendereços IP dedicados, que são reservados para seu uso exclusivo. As duas opções oferecem benefíciose desvantagens exclusivos, que estão resumidos na tabela a seguir; clique em um item na coluna Benefitpara obter mais informações sobre esse benefício.

Benefício Endereços IP compartilhados Endereços IP dedicados

Pronto para uso semconfiguração adicional (p. 179)

Sim Não

Reputação gerenciada pelaAWS (p. 179)

Sim Não

Ideal para clientes compadrões de envio contínuos eprevisíveis (p. 179)

Sim Sim

Ideal para clientes compadrões de envio menosprevisíveis (p. 179)

Sim Não

Ideal para remetentes de altovolume (p. 179)

Sim Sim

Ideal para remetentes de baixovolume (p. 179)

Sim Não

Custos mensaisadicionais (p. 180)

Não Sim

Controle total sobre a reputaçãodo remetente (p. 180)

Não Sim

178

Page 186: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorFacilidade de configuração

Benefício Endereços IP compartilhados Endereços IP dedicados

Isolar reputação por tipo dee-mail, destinatário ou outrosfatores (p. 180)

Não Sim

Informa endereços IP conhecidosque nunca mudam (p. 180)

Não Sim

Important

Se você não pretende enviar grandes volumes de e-mails de forma regular e previsível, useendereços IP compartilhados. Se você usar endereços IP dedicados para enviar baixos volumesde e-mails, ou se seus padrões de envio forem altamente irregulares, poderão ocorrer problemasde capacidade de entrega.

Facilidade de configuraçãoSe você optar por usar endereços IP compartilhados, não será necessário realizar nenhuma configuraçãoadicional. Sua conta do Amazon SES estará pronta para enviar e-mails assim que você confirmar umendereço de e-mail e sair do sandbox.

Se você optar por alugar endereços IP dedicados, será necessário enviar uma solicitação (p. 180) e,opcionalmente, configurar grupos de IP dedicados (p. 185).

Reputação gerenciada pela AWSAs reputações de endereço IP, em grande parte, se baseiam em padrões de envio e volume passados.Um endereço IP que envia volumes consistentes de e-mails por um longo período geralmente tem boareputação.

Endereços IP compartilhados são usados por vários clientes do Amazon SES. Juntos, esses clientesenviam um grande volume de e-mails. A AWS gerencia cuidadosamente esse tráfego de saída paramaximizar as reputações dos endereços IP compartilhados.

Se você usar endereços IP dedicados, é sua responsabilidade manter sua reputação de remetente aoenviar volumes de e-mails consistentes e previsíveis.

Previsibilidade dos padrões de envioUm endereço IP com histórico consistente de envio de e-mails tem melhor reputação do que outro que, derepente, começa a enviar grandes volumes de e-mails sem histórico de envio anterior.

Se seus padrões de envio de e-mail forem irregulares,— ou seja, não seguirem um padrão previsível,—os endereços IP compartilhados provavelmente atenderão melhor às suas necessidades. Quando vocêusa endereços IP compartilhados, pode aumentar ou diminuir os padrões de envio de e-mails conforme asituação.

Se você usar endereços IP dedicados, precisará enviar certa quantidade de e-mails gradativamente,aumentando um pouco por dia. Esse processo de aquecimento de novos endereços IP é descrito emAquecimento de endereços IP dedicados (p. 183). Assim que seus endereços IP dedicados passarempelo aquecimento, você deverá manter um padrão de envio consistente.

Volume de e-mail enviadosOs endereços IP dedicados são mais adequados para clientes que enviam grandes volumes de e-mails.A maioria dos provedores de serviços de Internet (ISPs) apenas rastreia a reputação de determinado

179

Page 187: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCustos adicionais

endereço IP quando recebe um volume significativo de mensagens desse endereço. Para cada ISP como qual você deseja cultivar uma reputação, envie várias centenas de e-mails em um período de 24 horas,pelo menos uma vez por mês.

Em alguns casos, você pode usar endereços IP dedicados quando não for enviar grandes volumes dee-mails. Por exemplo, endereços IP dedicados podem ser adequados para enviar a um pequeno e bemdefinido grupo de destinatários, cujos servidores de mensagens aceitam ou rejeitam e-mails usando umalista de endereços IP específicos, em vez de reputação do endereço IP.

Custos adicionaisO uso de endereços IP compartilhados está incluído no preço padrão do Amazon SES. O aluguel deendereços IP dedicados envolve um custo mensal extra além dos custos padrão associados ao envio de e-mails usando o Amazon SES. Cada endereço IP dedicado implica uma taxa mensal separada. Para obterinformações sobre a definição de preço, consulte a página da definição de preço do Amazon SES.

Controle sobre a reputação do remetenteQuando você usa endereços IP dedicados, sua conta do Amazon SES é a única capaz de enviar e-mailsdesses endereços. Por esse motivo, a reputação do remetente em relação aos endereços IP dedicadosque você aluga é determinada pelas práticas de envio de e-mail.

Capacidade de isolar a reputação do remetenteAo usar endereços IP dedicados, você pode isolar sua reputação de remetente para diferentescomponentes do seu programa de e-mail. Se você alugar mais de um endereço IP dedicado para uso como Amazon SES, poderá criar grupos de IP dedicados, ou seja, grupos de endereços IP dedicados quepodem ser usados para enviar tipos específicos de e-mails. Por exemplo, você pode criar um grupo deendereços IP dedicados para enviar e-mails de marketing, e outro para enviar e-mails transacionais. Parasaber mais, consulte Criar grupos de IP dedicados (p. 185).

Endereços IP conhecidos e inalteráveisAo usar endereços IP dedicados, você pode encontrar os valores dos endereços que enviam suasmensagens na página Dedicated IPs (IPs dedicados) do console do Amazon SES. Os endereços IPdedicados não mudam.

Com endereços IP compartilhados, você não sabe quais endereços IP são usados pelo Amazon SES paraenviar sua mensagem, e eles podem mudar a qualquer momento.

Solicitação e liberação de endereços IP dedicadosEsta seção descreve como solicitar e liberar endereços IP dedicados enviando uma solicitação no AWSSupport Center. Será cobrada uma taxa mensal adicional para cada endereço IP dedicado que você alugarpara uso com o Amazon SES. Para obter mais informações sobre os custos associados a endereços IPdedicados, consulte Definição de preço do Amazon SES.

Práticas recomendadas para trabalhar com endereços IPdedicadosEmbora não haja compromisso mínimo, recomendamos que você alugue mais de um endereço IPdedicado em cada região da AWS em que usa o Amazon SES. Cada região da AWS consiste emvários locais físicos, chamados de zonas de disponibilidade. Quando você aluga mais de um endereçoIP dedicado, distribuímos esses endereços da maneira mais uniforme possível entre as zonas de

180

Page 188: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSolicitação e liberação de IPs dedicados

disponibilidade na região da AWS que você especificou na solicitação. Distribuir seus endereços IPdedicados nas zonas de disponibilidade dessa maneira aumenta a disponibilidade e a redundância deseus endereços IP dedicados.

Para obter uma lista de todas as regiões onde o Amazon SES está disponível no momento, consulteRegiões e endpoints da AWS na Referência geral do Amazon Web Services. Para saber mais sobrequantas zonas de disponibilidade estão disponíveis em cada região, consulte Infraestrutura global da AWS.

Solicitação de endereços IP dedicadosAs etapas a seguir mostram como solicitar endereços IP dedicados ao criar um caso de aumento de cotade serviço no AWS Support Center. Você pode usar esse processo para solicitar tantos endereços IPdedicados quanto precisar.

Para solicitar endereços IP dedicados

1. Faça login no Console de gerenciamento da AWS em https://console.aws.amazon.com/.2. No menu Support (Suporte), escolha Support Center, conforme mostrado na imagem a seguir.

3. Na guia My support cases (Minhas solicitações de suporte), escolha Create case (Criar solicitação).4. Em Create case (Criar solicitação), selecione Service limit increase (Aumento de limite de serviço).5. Em Case classification (Classificação de caso), preencha as seguintes seções:

• Em Limit type (Tipo de limite), escolha SES Service Limits (Limites de serviço do SES).• Em Mail Type (Tipo de e-mail), escolha o tipo de e-mail que você pretende enviar usando seu

endereço IP dedicado. Se vários valores se aplicam, escolha a opção que se aplica à maioria dos e-mails que você pretende enviar.

• Para Website URL (URL do site), digite a URL de seu site. O fornecimento dessas informações nosajuda a compreender melhor o tipo de conteúdo que você planeja enviar.

• Em My email sending complies with the AWS Service Terms and AUP (Meu envio de emails écompatível com os Termos de serviço e a AUP da &AWS;), selecione a opção que se aplica ao seucaso de uso.

181

Page 189: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSolicitação e liberação de IPs dedicados

• Em Eu só envio para destinatários que tenham solicitado meus e-mails especificamente, escolha aopção que se aplica ao seu caso de uso.

• Em Tenho um processo para lidar com devoluções e reclamações, escolha a opção que se aplicaao seu caso de uso.

6. Em Requests (Solicitações), preencha as seguintes seções:

• Em Region (Região), escolha a região da AWS a qual sua solicitação se aplica.• Para Limit (Limite), escolha Desired Maximum Send Rate (Taxa máxima de envio desejada).• Em New limit value (Novo valor limite), insira o número máximo de mensagens que você precisa

ser capaz de enviar por segundo. Usamos o valor que você fornece para calcular a quantidade deendereços IP dedicados que você precisa para implementar seu caso de uso. Por esse motivo, suaestimativa deve ser o mais preciso possível.

Note

Um único endereço IP dedicado só pode ser usado na região da AWS que você escolheunesta etapa. Se você deseja solicitar endereços IP dedicados para uso em outra regiãoda AWS, escolha Add another request (Adicionar outra solicitação) e preencha os camposRegion (Região), Limit (Limite) e New limit value (Novo valor limite) para a região adicional.Repita esse processo para cada região na qual você deseja usar endereços IP dedicados.

7. Em Case description (Descrição de caso), para Use case description (Descrição do caso de uso),determine que você deseja solicitar endereços IP dedicados. Se você deseja solicitar uma quantidadeespecífica de endereços IP dedicados, mencione isso também. Se você não especificar umaquantidade de endereços IP dedicados, vamos fornecer a quantidade de endereços IP dedicados quefor necessária para atender aos requisitos de taxa de envio que você especificou na etapa anterior.

Em seguida, descreva de que forma você planeja usar os endereços IP dedicados para enviar e-mailusando o Amazon SES. Inclua informações sobre por que você deseja usar endereços IP dedicadosem vez de endereços IP compartilhados. Essas informações nos ajudam a entender melhor o seucaso de uso.

8. Em Contact options (Opções de contato), para Preferred contact language (Preferência de idioma decontato), escolha se você deseja receber comunicações para esse caso em inglês ou japonês.

9. Quando terminar, escolha Submit (Enviar).

Após enviar o formulário, avaliaremos sua solicitação. Se concedermos sua solicitação, responderemos aoseu caso no Support Center para confirmar que os novos endereços IP dedicados estão associados à suaconta.

Liberação de endereços IP dedicadosSe você não precisar mais dos endereços IP dedicados associados à sua conta, poderá liberá-losexecutando as seguintes etapas.

Important

O processo de liberar um endereço IP dedicado não pode ser revertido. Se você liberar umendereço IP dedicado no meio de um mês, a taxa mensal de uso mensal do IP dedicado écalculada proporcionalmente, com base no número de dias que decorreram no mês atual.

Para liberar endereços IP dedicados

1. Faça login no Console de gerenciamento da AWS em https://console.aws.amazon.com/.2. No menu Support (Suporte), escolha Support Center.3. Na guia My support cases (Minhas solicitações de suporte), escolha Create case (Criar solicitação).

182

Page 190: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAquecimento de endereços IP dedicados

4. Em Create case (Criar solicitação), selecione Service limit increase (Aumento de limite de serviço).5. Em Case classification (Classificação de caso), preencha as seguintes seções:

• Em Limit type (Tipo de limite), escolha SES Service Limits (Limites de serviço do SES).• Em Mail Type (Tipo de e-mail), escolha qualquer valor.• Em My email sending complies with the AWS Service Terms and AUP (Meu envio de emails é

compatível com os Termos de serviço e a AUP da &AWS;), selecione a opção que se aplica ao seucaso de uso.

• Em Eu só envio para destinatários que tenham solicitado meus e-mails especificamente, escolha aopção que se aplica ao seu caso de uso.

• Em Tenho um processo para lidar com devoluções e reclamações, escolha a opção que se aplicaao seu caso de uso.

6. Em Requests (Solicitações), preencha as seguintes seções:

• Em Region (Região), escolha a região da AWS a qual sua solicitação se aplica.Note

Os endereços IP dedicados são exclusivos para cada região da AWS e, portanto, éimportante selecionar a região a qual o endereço IP dedicado está associado.

• Para Limit (Limite), escolha Desired Maximum Send Rate (Taxa máxima de envio desejada).• Em New limit value (Novo valor de limite), insira qualquer número. O número informado aqui não é

importante — você especifica a quantidade de IPs dedicados que deseja liberar na próxima etapa.

Note

Um único endereço IP dedicado somente pode ser usado em uma única região da AWS.Se você deseja liberar endereços IP dedicados que foram usados em outras regiões daAWS, escolha Add another request (Adicionar outra solicitação). Então, preencha os camposRegion (Região), Limit (Limite) e New limit value (Novo valor limite) para a região adicional.Repita esse processo para cada endereço IP dedicado que você deseja liberar.

7. Em Case description (Descrição de caso), para Use case description (Descrição do caso de uso),mencione que você deseja liberar endereços IP dedicados existentes. Se você alugar mais de umendereço IP dedicado, inclua a quantidade de endereços IP dedicados que você deseja liberar.

8. Em Contact options (Opções de contato), para Preferred contact language (Preferência de idioma decontato), escolha se você deseja receber comunicações para esse caso em inglês ou japonês.

9. Quando terminar, escolha Submit (Enviar).

Após recebermos a solicitação, enviaremos uma mensagem que pede que você confirme se desejaliberar seus endereços IP dedicados. Depois de confirmar que deseja liberar os endereços IP, eles serãoremovidos de sua conta.

Aquecimento de endereços IP dedicadosAo determinar se você deve aceitar ou rejeitar uma mensagem, o os provedores de serviços de e-mail,analisam a reputação do endereço IP que o enviou. Um dos fatores que contribui para a reputação deum endereço IP é se o endereço tem um histórico de envio de e-mails de alta qualidade. Os provedoresde e-mail têm menos probabilidade de aceitar e-mails de novos endereços IP, que não têm nenhum ousó pouco histórico. E-mails enviados de endereços IP com nenhum ou pouco histórico podem acabar empastas de e-mail spam dos destinatários ou pode ser totalmente bloqueados.

Quando você começar a enviar e-mails de um novo endereço IP, aumente gradualmente o volume de e-mail que você enviar a partir desse endereço antes de usá-lo em toda a sua capacidade. Esse processo échamado de aquecer o endereço IP.

183

Page 191: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAquecimento de endereços IP dedicados

A quantidade de tempo necessária para aquecer um endereço IP varia segundo os provedores de e-mail. Para alguns provedores de e-mail, você pode determinar uma reputação positiva em cerca de duassemanas, enquanto para outros pessoas que pode levar até seis semanas. Ao aquecer um novo endereçoIP, você deve enviar e-mails para seus usuários mais ativos, para garantir que sua taxa de reclamaçõesseja baixa. Além disso, examine cuidadosamente as mensagens de devolução e envie menos e-mailsse você receber um grande número de notificações de limitação ou bloqueio. Para obter informaçõessobre monitoramento de suas devoluções, consulte Monitoramento da atividade de envio do AmazonSES (p. 252).

Aquecimento automático de endereços IP dedicadosQuando você solicita endereços IP dedicados, o Amazon SES os aquece automaticamente para melhorara entrega de e-mails que você enviar. O recurso de aquecimento automático de endereço IP é ativado porpadrão.

As etapas que ocorrem durante o processo de aquecimento automático dependem de se você já temendereços IP dedicados:

• Ao solicitar endereços IP dedicados pela primeira vez, o Amazon SES distribui seu envio de e-mailsentre os endereços IP dedicados e um conjunto de endereços que são compartilhados com outrosclientes do Amazon SES. O Amazon SES aumenta gradualmente o número de mensagens enviadas apartir de seus endereços IP dedicados ao longo do tempo.

• Se você já tem endereços IP dedicados, o Amazon SES distribui seu envio de e-mails entre os IPsdedicados (que já estão aquecidos) e seus novos IPs dedicados (que não estão aquecidos). O AmazonSES aumenta gradualmente o número de mensagens enviadas a partir de seus novos endereços IPdedicados ao longo do tempo.

Depois de aquecer um endereço IP dedicado, você deve enviar em torno de 1.000 e-mails todos os diaspara cada provedor de e-mail com os quais deseja manter uma reputação positiva. Essa tarefa eve serexecutada em cada endereço IP dedicado que você usar com o Amazon SES.

Evite enviar grandes volumes de e-mails imediatamente depois que o processo de aquecimento concluir.Em vez disso, aumente lentamente o número de e-mails que você enviar até atingir o volume desejado.Se um provedor de e-mail vê um aumento grande e repentino no número de e-mails que estão sendoenviados a partir de um endereço IP, ele pode bloquear ou limitar a entrega de mensagens desseendereço.

Desativar o processo de aquecimento automáticoAo adquirir novos endereços IP dedicados, o Amazon SES os aquece automaticamente para você.Se preferir aquecer endereços IP dedicados por você mesmo, desabilite o recurso de aquecimentoautomático.

Important

Se desabilitar o recurso de aquecimento automático, você será responsável por aquecerendereços IP dedicados por si mesmo. Se você enviar e-mails de endereços que não foramaquecidos, você pode experimentar taxas de entrega insatisfatórias.

Para desativar o recurso de aquecimento automático

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. Na barra de navegação à esquerda, selecione Dedicated IPs.3. Limpe a caixa ao lado de Automatic IP warm-up.

184

Page 192: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriar grupos de IP dedicados

Reiniciar o processo de aquecimento automáticoVocê pode reiniciar o processo de aquecimento de IP automático para um conjunto de endereços IP quepertencem a um grupo de IPs dedicados.

Para reiniciar o processo de aquecimento automático

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. Na barra de navegação à esquerda, selecione Dedicated IPs.3. No grupo de IPs dedicados para o qual você deseja reiniciar o processo de aquecimento, escolha

Actions e, em seguida, Restart IP warm up.

O status do processo de aquecimento automático está na coluna Warm Up Status (Status deaquecimento); quando o processo de aquecimento for concluído, essa coluna dirá Complete.

Criar grupos de IP dedicadosSe você comprou vários endereços IP dedicados para usar com o Amazon SES, pode criar grupos dessesendereços. Esses grupos são chamados grupos de IP dedicados. Um cenário comum é criar um grupode endereços IP dedicados para o envio de comunicações de marketing e outro para enviar e-mailstransacionais. Sua reputação de remetente para e-mails transacionais é, então, isolada daquela dosseus e-mails de marketing. Nesse cenário, se uma campanha de marketing gerar um grande número dereclamações, a entrega dos seus e-mails transacionais não será afetada.

Esta seção contém procedimentos para criar grupos de IP dedicados.Note

Você também pode criar conjuntos de configurações que usam um conjunto de endereços IPcompartilhados por todos os clientes do Amazon SES. O grupo de IP compartilhado é útil nassituações em que você precisa enviar e-mails que não estão alinhados aos seus comportamentosde envio habituais. Para obter informações sobre como usar o grupo de IP compartilhado com umconjunto de configurações, consulte Gerenciamento de grupos de IP (p. 248).

Para criar um grupo de IP dedicado usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação no lado esquerdo da tela, em Email Sending, escolha Dedicated IPs.3. Escolha Create a New IP Pool.4. Na página IP Pool Name, para Pool name, digite um nome descritivo para o grupo de IP dedicado e,

em seguida, escolha Next.5. Na página Add Dedicated IPs, marque a caixa ao lado de cada endereço IP que deseja adicionar ao

grupo e, em seguida, escolha Next.Note

Os endereços IP dedicados que você ainda não atribuiu a um grupo são incluídos no ses-default-dedicated-pool. Se você enviar um e-mail usando um conjunto de configurações quenão especifica um grupo de envio, ou se você enviar um e-mail sem especificar um conjuntode configurações, o Amazon SES enviará o e-mail de um dos endereços no ses-default-dedicated-pool.Um endereço IP dedicado só pode pertencer a um grupo. Se você selecionar um endereçoIP dedicado associado a um grupo diferente, o Amazon SES substituirá essa configuração eassociará o endereço ao grupo que você está criando.

185

Page 193: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUsar seus próprios endereços IP

6. Na página Assign to a configuration set, siga um destes procedimentos:

• Selecione Add this pool to an existing configuration set para associar o grupo de IP dedicadoa um conjunto de configuração existente. Depois, em Existing configuration sets (Conjuntos deconfigurações existentes), escolha o conjunto de configurações ao qual você deseja associar ogrupo de IPs.

• Selecione Create a new configuration set para criar um conjunto de configurações e associaro grupo de IPs dedicado a ele. Para Configuration set name, digite um nome descritivo para oconjunto de configurações.

Ao terminar, escolha Next.7. Na página Review, verifique as configurações do grupo de IP dedicado. Quando estiver pronto para

criar o pool de IP, escolha Create.

Usar seus próprios endereços IP para enviar e-mailusando o Amazon SESO Amazon SES inclui um recurso chamado Bring Your Own IP (Traga seu próprio IP) (BYOIP), que tornapossível usar seus próprios endereços IP para enviar e-mails pelo Amazon SES. Se você já usa umintervalo de endereços IP para enviar e-mail, pode solicitar a disponibilização de seu intervalo de IP paraenviar e-mails pelo Amazon SES.

O recurso BYOIP é útil, por exemplo, quando você desenvolveu uma reputação de IP positiva usando umsistema de envio de e-mails interno, mas deseja migrar para o Amazon SES. Usando BYOIP, é possívelcomeçar a enviar e-mails pelo Amazon SES imediatamente, sem precisar restabelecer a reputação deseus endereços IP.

RequisitosPara usar BYOIP, seu intervalo de endereços IP deve atender aos seguintes requisitos:

• O intervalo de endereços precisa ser registrado no seu Regional internet registry (RIR – Registroregional de Internet), como o American Registry for Internet Numbers (ARIN) ou o Réseaux IPEuropéens Network Coordination Centre (RIPE) ou o Asia-Pacific Network Information Centre (APNIC).O intervalo de endereços precisa ser registrado como uma entidade empresarial ou institucional e nãopode ser registrado como uma pessoa.

• Você deve ser capaz de fornecer um comprovante de que é proprietário do intervalo de endereçosenviando uma mensagem de autorização assinada.

• Os endereços no intervalo de endereços IP devem ter um histórico limpo. Podemos investigar areputação do intervalo de endereços IP e reservar o direito de rejeitar um intervalo, se ele contiver umendereço IP que tenha má reputação ou esteja associado a comportamento mal-intencionado.

ConsideraçõesExistem vários fatores que você deve considerar antes de solicitar a transferência de seus intervalos de IPpara o Amazon SES:

• O intervalo de endereços mais específico que pode ser especificado é /24.• Se você usar BYOIP para um intervalo específico de endereços IP, só poderá acessar esse intervalo de

uma única região da AWS.• É possível trazer cinco intervalos de endereços por região para sua conta da AWS.

186

Page 194: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTeste do envio de e-mail

• Se você usar seus próprios endereços IP, não poderá usar os endereços no grupo de endereços IPcompartilhados do Amazon SES. Se precisar usar esses endereços IP compartilhados, você poderá usaro Amazon SES em uma região da AWS diferente ou criar uma nova conta da AWS.

• Há uma cobrança mensal para cada endereço IP usado com BYOIP. Para obter mais informações,consulte Definição de preços do Amazon SES.

Usar seus próprios endereços IP com o Amazon SESPara evitar que nossos sistemas sejam usados para enviar conteúdo indesejado ou malicioso,consideramos cuidadosamente cada solicitação de BYOIP.

Se quiser usar seu próprio intervalo de IP com o Amazon SES, envie as seguintes informações para [email protected]:

• Uma descrição do tipo de caso de uso.• O intervalo de IP com o qual você deseja usar o Amazon SES.• O nome do registro da Internet com o qual o intervalo está registrado.

Responderemos à sua solicitação em até 48 horas, horário comercial. Em nossas comunicações comvocê, podemos solicitar informações adicionais, incluindo documentos que comprovem sua propriedade dointervalo IP.

Teste de envio de e-mail no Amazon SESO Amazon SES inclui um simulador de caixa postal que pode ser usado para testar como seu aplicativolida com várias situações de envio de e-mail. O simulador de caixa postal é útil quando, por exemplo, vocêprecisa testar um aplicativo de envio de e-mail criando endereços de e-mail fictícios ou quando precisaencontrar a taxa de transferência máxima de seu sistema sem afetar sua cota de envio diária.

Considerações importantesConsidere os seguintes recursos e limitações ao usar o simulador de caixa postal do Amazon SES:

• Você pode usar o simulador de caixa postal mesmo se sua conta estiver no sandbox do Amazon SES.• Os e-mails enviados ao simulador de caixa postal estão restritos à taxa máxima de envio da conta, mas

isso não afeta sua cota de envio diário. Por exemplo, se a conta tiver autorização para enviar 10.000mensagens durante um período de 24 horas e você enviar 100 mensagens para o simulador de caixapostal, ainda assim poderá enviar até 10.000 mensagens aos destinatários regulares sem atingir suacota de envio.

• Os e-mails enviados ao simulador de caixa postal não afetam sua capacidade de entrega de e-mail nemas métricas de reputação. Por exemplo, se enviar um grande número de mensagens ao endereço dedevolução do simulador de e-mail, isso não faz com que o painel de reputação (p. 360) exiba umamensagem informando que sua taxa de devolução é muito alta.

• Para finalidade de faturamento, os e-mails enviados ao simulador de caixa postal do Amazon SESsão iguais a qualquer outro e-mail enviado por meio do Amazon SES. Em outras palavras, cobramoso mesmo valor tanto para mensagens enviadas ao simulador de caixa postal quanto para mensagensenviadas a destinatários regulares.

• O simulador de caixa postal comporta marcação, o que permite que você envie e-mails de váriasmaneiras ao mesmo endereço do simulador de caixa postal ou teste de que forma seu aplicativo lidacom o Variable Envelope Return Path (VERP). Por exemplo, você pode enviar um e-mail para bounce

187

Page 195: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorComo usar o simulador de caixa postal

[email protected] e [email protected] para testar se seuaplicativo consegue estabelecer uma correspondência entre uma mensagem de devolução e o endereçode e-mail que provocou a devolução.

• Se usar o simulador de caixa postal para simular várias devoluções provenientes da mesma solicitaçãode envio, o Amazon SES reunirá as respostas de devolução em uma única resposta.

Como usar o simulador de caixa postalPara usar o simulador de e-mail, encontre o cenário que você deseja simular na tabela a seguir e, emseguida, envie um e-mail ao endereço de e-mail correspondente.

Note

Ao enviar um e-mail para um endereço do simulador de caixa postal, é necessário enviá-lo pormeio do Amazon SES, usando a AWS CLI, um SDK da AWS, o console do Amazon SES, ainterface SMTP do Amazon SES ou a API do Amazon SES. O simulador de caixa postal nãoresponde a e-mails recebidos de fontes externas.

Cenário simulado Endereço de e-mail

Entrega bem-sucedida – o provedor de e-maildo destinatário aceita seu e-mail. Se você tiverconfigurado notificações de entrega, como descritoem Monitoramento com o uso de notificações doAmazon SES (p. 258), o Amazon SES enviaráuma notificação de entrega pelo Amazon SimpleNotification Service (Amazon SNS).

[email protected]

Devolução – o provedor de e-mail do destinatáriorejeita seu e-mail com um código de respostaSMTP 550 5.1.1 ("Usuário desconhecido"). OAmazon SES gera uma notificação de devoluçãoe, dependendo de como você configurou suaconta, o envia para você em um e-mail ou enviauma notificação para um tópico Amazon SNS. Oendereço de e-mail do simulador de caixa postalnão é colocado na lista de supressões do AmazonSES, o que normalmente ocorre quando ocorreuma devolução definitiva. A resposta de devoluçãoque você recebe do simulador de caixa postal écompatível com RFC 3464. Para obter informaçõessobre como receber feedback de devolução,consulte Monitoramento com o uso de notificaçõesdo Amazon SES (p. 258).

[email protected]

Respostas automáticas – o provedor de e-maildo destinatário aceita seu e-mail e o entrega nacaixa de entrada do destinatário. O provedor de e-mail envia uma resposta automática, como uma"fora" do escritório (OOTO), para o endereço nocabeçalho Return-Path do e-mail ou remetentedo envelope ("MAIL FROM"), se não houve umcabeçalho Return-Path. A resposta automáticaque você recebe do simulador de caixa postal écompatível com RFC 3834.

[email protected]

188

Page 196: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTeste de rejeição de eventos

Cenário simulado Endereço de e-mail

Reclamação – o provedor de e-mail do destinatárioaceita seu e-mail e o entrega na caixa de entradado destinatário. O destinatário decide que a suamensagem não foi solicitada e clica em "Marcarcomo spam" no cliente de e-mail. O Amazon SESencaminha a notificação de reclamação a vocêpor e-mail ou notificando um tópico do AmazonSNS, dependendo de como você configurousua conta. A resposta de reclamação que vocêrecebe no simulador de caixa postal é compatívelcom RFC 5965. Para obter informações sobrecomo receber feedback de reclamação, consulteMonitoramento com o uso de notificações doAmazon SES (p. 258).

[email protected]

Endereço do destinatário na lista de supressões– o Amazon SES gera uma devolução definitivacomo se o endereço do destinatário estivesse nalista de supressões do Amazon SES.

[email protected]

Teste de rejeição de eventosToda mensagem enviada por meio do Amazon SES é verificada para detectar a presença de vírus. Sevocê enviar uma mensagem que contém um vírus, o Amazon SES aceitará a mensagem, detectará ovírus e rejeitará a mensagem inteira. Quando o Amazon SES rejeita uma mensagem, interrompe seuprocessamento e não tenta entregá-la ao servidor de e-mail do destinatário. Em seguida, gera um eventode rejeição.

O simulador de caixa postal do Amazon SES não inclui um endereço para testar eventos de rejeição. Noentanto, você pode testar eventos de rejeição usando um arquivo de teste EICAR. Esse arquivo é ummétodo padrão do setor para testar software antivírus de uma maneira segura. Para criar um arquivo deteste EICAR, cole o texto a seguir em um arquivo:

X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

Salve o arquivo como sample.txt, anexe-o a um e-mail e, em seguida, envie o e-mail para um endereçoverificado. Se não houver outros problemas com o e-mail, o Amazon SES o aceitará a mensagem, mas emseguida a rejeitará como se tivesse um vírus real.

Note

Os e-mails rejeitados, incluindo aqueles que são enviados por meio do procedimento anterior,são contabilizados em sua cota de envio diária. Você é cobrado por toda mensagem enviada,incluindo aquelas que são rejeitadas.

Para saber mais sobre os arquivos de teste EICAR, consulte a página de arquivos de teste da EICAR naWikipédia. Para ver exemplos de código que você pode usar para enviar mensagens com anexos, consulteEnvio de e-mail bruto usando os SDKs da AWS (p. 431).

Usar a lista de supressão no nível da contaO Amazon SES inclui uma lista de supressão no nível da conta que se aplica à conta da AWS naregião atual da AWS. Essa lista de supressão impede que você envie e-mails para endereços que

189

Page 197: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConsiderações sobre a lista de supressão no nível da conta

geraram devoluções ou reclamações anteriormente. Ao configurar a lista de supressão no nível da conta,especifique se os endereços devem ser adicionados à lista quando resultarem em devoluções definitivas,quando resultarem em reclamações ou em ambos os casos. É possível adicionar ou remover endereçosmanualmente da lista de supressão no nível da conta usando a API v2 do Amazon SES.

O Amazon SES também inclui uma lista de supressão global. Para obter mais informações, consulte Usara lista de supressão global do Amazon SES (p. 192).

Considerações sobre a lista de supressão no nível dacontaVocê deve considerar os seguintes fatores ao usar a lista de supressão no nível da conta:

• Se você começou a usar o Amazon SES após 25 de novembro de 2019, sua conta usa a lista desupressão no nível da conta por padrão tanto para devoluções como para reclamações. Se vocêcomeçou a usar o Amazon SES antes dessa data, é necessário ativar esse recurso usando a operaçãoPutAccountSuppressionAttributes na API do Amazon SES.

• Se você tentar enviar uma mensagem para um endereço que está na lista de supressão no nível daconta, o Amazon SES aceitará a mensagem, mas ela não será enviada. Quando o Amazon SES aceitauma mensagem, ele a retém por 60 dias para fins de registro em log, independentemente de ela ter sidoou não enviada. Após esse período de retenção, o Amazon SES exclui a mensagem permanentemente.

• O Amazon SES não conta as mensagens enviadas para endereços na lista de supressão no nível daconta relacionadas à taxa de devolução da sua conta.

• O Amazon SES conta as mensagens enviadas para endereços na lista de supressão no nível da contarelacionadas à sua cota de envio diário.

• Os endereços de e-mail na lista de supressão no nível da conta são mantidos até que você as removausando a operação DeleteSuppressedDestination na API v2 do Amazon SES.

• Se a capacidade da conta para enviar e-mails for interrompida, o Amazon SES exclui automaticamenteos endereços da lista de supressão no nível da conta da após 90 dias. Se a capacidade da conta deenviar e-mails for restaurada antes do término desse período de 90 dias, os endereços da lista desupressão no nível da conta não serão excluídos.

• O Gmail não fornece dados de reclamação para o Amazon SES. Se um destinatário usar o botão Spamno cliente web do Gmail para denunciar uma mensagem recebida de você como spam, ele não seráadicionado à lista de supressão no nível da conta.

• Você poderá habilitar a lista de supressão no nível da conta se sua conta estiver na sandbox do AmazonSES. No entanto, não é possível usar a operação da API PutSuppressedDestination até que a contaseja removida da sandbox. Para saber mais sobre a sandbox, consulte Sair da sandbox do AmazonSES (p. 73).

• Quando você usa a lista de supressão no nível da conta, o Amazon SES também adiciona endereçosque resultam em devoluções definitivas à lista de supressão global.

Ativar a lista de supressão no nível da contaÉ possível usar a operação PutAccountSuppressionAttributes na API v2 do Amazon SES para ativar econfigurar a lista de supressão no nível da conta. É possível definir essa configuração de forma rápidae fácil usando a AWS CLI. Para obter mais informações sobre como instalar e configurar a AWS CLI,consulte o Guia do usuário do AWS Command Line Interface.

Como configurar a lista de supressão no nível da conta usando a AWS CLI

• Na linha de comando, insira o seguinte comando:

190

Page 198: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAtivar a lista de supressão no nível da

conta de um conjunto de configurações

aws sesv2 put-account-suppression-attributes \--suppressed-reasons BOUNCE COMPLAINT

É necessário especificar pelo menos um motivo para o parâmetro suppressed-reasons. É possívelespecificar BOUNCE ou COMPLAINT ou ambos, conforme mostrado no exemplo anterior.

Ativar a lista de supressão no nível da conta de umconjunto de configuraçõesTambém é possível configurar a supressão no nível da conta para que ela se aplique somente a conjuntosde configuração (p. 244) específicos. Quando fizer isso, os endereços serão adicionados à lista desupressão somente se você tiver especificado o conjunto de configurações quando enviar o e-mail quegerou a devolução ou a reclamação.

Note

O procedimento a seguir pressupõe que a AWS CLI já foi instalada. Para obter mais informaçõessobre como instalar e configurar a AWS CLI, consulte o Guia do usuário do AWS Command LineInterface.

Como definir a lista de supressão no nível da conta para uma configuração definida usando aAWS CLI

• Na linha de comando, insira o seguinte comando:

aws sesv2 put-configuration-set-suppression-options \--configuration-set-name configSet \--suppressed-reasons BOUNCE COMPLAINT

No exemplo anterior, substitua configSet pelo nome do conjunto de configurações que deve usar alista de supressão no nível da conta.

Adicionar manualmente um endereço de e-mail à listade supressão da contaÉ possível adicionar endereços manualmente à lista de supressão no nível da conta usando a operaçãoPutSuppressedDestination na API v2 do Amazon SES.

Note

O procedimento a seguir pressupõe que a AWS CLI já foi instalada. Para obter mais informaçõessobre como instalar e configurar a AWS CLI, consulte o Guia do usuário do AWS Command LineInterface.

Como adicionar manualmente um endereço à lista de supressão no nível da conta usando a AWSCLI

• Na linha de comando, insira o seguinte comando:

aws sesv2 put-suppressed-destination \--email-address [email protected] \

191

Page 199: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRemover um endereço de e-

mail da lista de supressão da conta

--reason BOUNCE

No exemplo anterior, substitua [email protected] pelo endereço de e-mail que você desejaadicionar à lista de supressão no nível da conta e substitua BOUNCE pelo motivo pelo qual o endereçoestá sendo adicionado à lista de supressão (os valores aceitáveis são BOUNCE e COMPLAINT).

Remover um endereço de e-mail da lista de supressãoda contaSe um endereço estiver na lista de supressão da conta, mas você souber que ele não deveria estar nalista, será possível removê-lo manualmente usando a operação DeleteSuppressedDestination na API v2 doAmazon SES.

Note

O procedimento a seguir pressupõe que a AWS CLI já foi instalada. Para obter mais informaçõessobre como instalar e configurar a AWS CLI, consulte o Guia do usuário do AWS Command LineInterface.

Como remover um endereço da lista de supressão no nível da conta usando a AWS CLI

• Na linha de comando, insira o seguinte comando:

aws sesv2 delete-suppressed-destination \--email-address [email protected]

No exemplo anterior, substitua [email protected] pelo endereço de e-mail que você desejaadicionar à lista de supressão no nível da conta.

Usar a lista de supressão global do Amazon SESO Amazon SES inclui uma lista de supressão global. Quando um cliente do Amazon SES enviar um e-mail que resulte em uma devolução definitiva, o Amazon SES adiciona o endereço de e-mail que geroua devolução a uma lista de supressão global. A lista de supressão global é global no sentido em que seaplica a todos os clientes do Amazon SES. Em outras palavras, se um cliente diferente tenta enviar um e-mail para um endereço que está na lista de supressão global, o Amazon SES aceita a mensagem, masnão a envia, porque o endereço de e-mail está suprimido. Uma vantagem da lista de supressão global éque ela se aplica a todas as contas do Amazon SES por padrão — não é necessário executar nenhumaconfiguração adicional para usá-la. Uma desvantagem é que não é possível consultar a lista de supressãoglobal, pois ela contém endereços de e-mail associados a contas de outros usuários do Amazon SES.Além disso, você não pode adicionar manualmente endereços à lista de supressão global e só poderemover endereços da lista de supressão global usando o console do Amazon SES.

O Amazon SES também inclui uma lista de supressão no nível da conta. Para obter mais informações,consulte Usar a lista de supressão no nível da conta (p. 189).

Considerações sobre a lista de supressão globalVocê deve considerar os seguintes fatores ao usar a lista de supressão global:

• A lista de supressão global está ativada por padrão para todas as contas do Amazon SES. Não épossível desabilitá-la.

192

Page 200: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRemover um endereço da lista de supressão global

• Como o Amazon SES aplica a lista de supressão global a todos os clientes, não é possível consultar alista de supressão global nem adicionar endereços a ela manualmente.

• O Amazon SES remove os endereços de e-mail automaticamente da lista de supressão global após 14dias. Ao término desse período de 14 dias, o Amazon SES automaticamente removerá o endereço dalista de supressão global. No entanto, se esse endereço produzir outra devolução definitiva, ele seráadicionado à lista de supressão global novamente pelo Amazon SES.

• Se você tentar enviar uma mensagem para um endereço que esteja na lista de supressão global, oAmazon SES aceitará a mensagem, mas não a enviará. O Amazon SES gera uma devolução não comum valor de bounceType como Permanent, e um valor de bounceSubType como Suppressed.Receber esse tipo de notificação de devolução é a única maneira de saber se um endereço está na listade supressão global. Não é possível consultar a lista de supressão global.

• O Amazon SES conta as mensagens que você enviou para endereços na lista de supressão global emrelação à taxa de devolução da sua conta.

• O Amazon SES conta as mensagens que você enviou para endereços na lista de supressão global emrelação à sua cota de envio diário.

• Como com qualquer endereço de e-mail que produz uma devolução definitiva, remova os endereços quecausaram uma devolução da lista de supressão da sua lista de correspondência, a menos que tenhacerteza de que o endereço é válido. As devoluções da lista de supressão se somam à taxa de devoluçãoda sua conta. Se a taxa de devoluções subir muito, poderemos colocar sua conta sob análise ou pausara capacidade de envio de e-mails da sua conta.

Remover um endereço da lista de supressão globalSe tiver certeza de que um endereço na lista de supressão global é um destinatário válido, você poderáremovê-lo da lista usando o procedimento a seguir. Ao remover um endereço da lista de supressão globalem uma região, essa remoção será aplicada a todas as contas da AWS em todas as regiões.

Como remover um endereço de e-mail da lista de supressão global

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. Use o seletor de região no canto superior direito da janela para escolher uma das seguintes regiõesda AWS: Leste dos EUA (Norte da Virgínia), Oeste dos EUA (Oregon) ou Europa (Irlanda). A regiãoespecífica escolhida não é importante, pois a lista de supressão se aplica igualmente a todas asregiões.

Note

Para concluir este procedimento, é necessário usar uma das regiões da AWS listadas noparágrafo anterior. Não é possível concluir este procedimento em outras regiões da AWS.

3. No painel de navegação, selecione Suppression List Removal (Remoção da lista de supressão).4. No campo Email Address (Endereço de e-mail), digite o endereço de e-mail que você deseja remover

da lista de supressão.5. No campo Type characters, digite os caracteres que você vê na imagem acima.6. Selecione Enviar.

Se o endereço de e-mail especificado estiver na lista de supressão global, será removido imediatamente.

Amazon SES e protocolos de segurançaEste tópico descreve os protocolos de segurança que você pode usar quando se conecta ao Amazon SES,bem como quando o Amazon SES entrega um e-mail para um receptor.

193

Page 201: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRemetente de e-mail para o Amazon SES

Remetente de e-mail para o Amazon SESO protocolo de segurança que você usa para se conectar ao Amazon SES depende de você estar usandoa API do Amazon SES ou a interface SMTP do Amazon SES, conforme descrito a seguir.

HTTPSSe estiver usando a API do Amazon SES (diretamente ou por meio de um SDK da AWS), todas ascomunicações serão criptografadas por TLS por meio do endpoint HTTPS do Amazon SES. O endpointHTTPS do Amazon SES é compatível com o TLS 1.2, o TLS 1.1 e o TLS 1.0.

Interface SMTPSe estiver acessando o Amazon SES por meio da interface SMTP, você precisará criptografar a conexãousando o Transport Layer Security (TLS). Observe que a TLS é normalmente chamada pelo nome de seuprotocolo antecessor, Secure Sockets Layer (SSL).

O Amazon SES oferece suporte a dois mecanismos para estabelecer conexão criptografada por TLS:STARTTLS e TLS Wrapper.

• STARTTLS — STARTTLS é um meio de atualizar uma conexão não criptografada para uma conexãocriptografada. Existem versões do STARTTLS para diversos protocolos; a versão SMTP é definida emRFC 3207. Para conexões STARTTLS, o Amazon SES é compatível com o TLS 1.2, o TLS 1.1, o TLS1.0 e o SSLv2Hello.

• TLS Wrapper — TLS Wrapper (também conhecido como SMTPS ou Handshake Protocol) é um meio deiniciar uma conexão criptografada sem antes estabelecer uma conexão não criptografada. Com o TLSWrapper, o endpoint SMTP do Amazon SES não faz negociação de TLS: é responsabilidade do clientese conectar ao endpoint usando a TLS e continuar usando a TLS por toda a conversa. O TLS Wrapper éum protocolo mais antigo, mas ainda é compatível com muitos clientes. Para conexões do TLS Wrapper,o Amazon SES é compatível com o TLS 1.2, o TLS 1.1 e o TLS 1.0.

Para obter informações sobre como conectar-se com a interface SMTP do Amazon SES usando essesmétodos, consulte Conexão ao endpoint SMTP do Amazon SES (p. 85).

Amazon SES para o receptorO Amazon SES é compatível com TLS 1.2, TLS 1.1 e TLS 1.0 para conexões TLS.

Por padrão, o Amazon SES usa o TLS oportunista. Isso significa que o Amazon SES sempre tentaestabelecer uma conexão segura com o servidor de recebimento de e-mails. Se o Amazon SES nãoconseguir estabelecer uma conexão segura, ele enviará a mensagem não criptografada.

É possível alterar esse comportamento usando conjuntos de configurações. Use a operação deAPI PutConfigurationSetDeliveryOptions para definir a propriedade TlsPolicy de um conjunto deconfigurações como Require. É possível usar a AWS CLI para fazer essa alteração.

Para configurar o Amazon SES para exigir conexões TLS em um conjunto de configurações

• Na linha de comando, insira o seguinte comando:

aws ses put-configuration-set-delivery-options --configuration-set-name MyConfigurationSet --delivery-options TlsPolicy=Require

No exemplo anterior, substitua MyConfigurationSet pelo nome do seu conjunto de configurações.

194

Page 202: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriptografia de ponta a ponta

Ao enviar um e-mail usando esse conjunto de configurações, o somente Amazon SES enviará amensagem para o servidor de recebimento de e-mails se não for possível estabelecer uma conexãosegura. Se o Amazon SES não conseguir estabelecer uma conexão segura com o servidor derecebimento de e-mails, ele descartará a mensagem.

Criptografia de ponta a pontaÉ possível usar o Amazon SES para enviar mensagens que são criptografadas usando S/MIME ou PGP.As mensagens que usam esses protocolos são criptografadas pelo remetente. O conteúdo delas só podeser visualizado por destinatários que possuem as chaves públicas necessárias para descriptografar asmensagens.

O Amazon SES oferece suporte aos seguintes tipos MIME, que podem ser usados para enviar e-mailcriptografado por S/MIME:

• application/pkcs7-mime

• application/pkcs7-signature

• application/x-pkcs7-mime

• application/x-pkcs7-signature

O Amazon SES também oferece suporte aos seguintes tipos MIME, que podem ser usados para enviar e-mail criptografado por PGP:

• application/pgp-encrypted

• application/pgp-keys

• application/pgp-signature

195

Page 203: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConceitos de recebimento de e-mails

Recebimento de e-mails com oAmazon SES

O Amazon Simple Email Service (Amazon SES) é um servidor de e-mail que pode enviar e receber e-mails em seu nome. Quando você usa o Amazon SES para receber e-mail, o Amazon SES gerencia asoperações de recebimento de e-mails subjacentes, como:

• comunicar-se com outros servidores de e-mail• verificar a existência de spam e vírus• rejeitar e-mails de fontes não confiáveis• aceitar e-mails para destinatários em seu domínio

Quando você recebe e-mails, o Amazon SES os processa de acordo com as instruções fornecidas. Porexemplo, o Amazon SES pode enviar e-mails para um bucket do Amazon S3, publicá-los em um tópicodo Amazon SNS ou enviá-los para o Amazon WorkMail. Você também pode criar regras que bloqueiemou permitam explicitamente todas as mensagens de intervalos de endereços IP específicos, ou queenviem automaticamente mensagens de devolução quando elas são enviadas para endereços de e-mailespecíficos.

Note

O Amazon SES oferece suporte apenas ao recebimento de e-mails em determinadas regiõesda AWS. Para obter uma lista completa das regiões onde o recebimento de e-mails tem suporte,consulte Endpoints e cotas do Amazon Simple Email Service no AWS General Reference.

As seções a seguir contêm informações que você precisa para entender, usar na configuração e usar oAmazon SES para receber e-mails.

• Conceitos de recebimento de e-mails (p. 196)• Conceitos básicos do recebimento de e-mails (p. 198)• Configuração do recebimento de e-mails (p. 204)• Gerenciamento do recebimento de e-mails (p. 225)

Conceitos de recebimento de e-mails do AmazonSES

Quando você usa o Amazon SES como seu receptor de e-mails, é necessário informar ao serviço o quefazer com os e-mails. O método principal, que oferece a você controle minucioso sobre seus e-mails, éespecificar as ações a serem executadas com base no destinatário. O outro método é bloquear ou permitire-mails com base no endereço IP de origem. Este tópico descreve os dois métodos.

Controle baseado em destinatárioA principal maneira de controlar seus e-mails de entrada é especificar como eles serão tratados deacordo com o destinatário. Por exemplo, se você possui example.com, pode especificar que e-mails

196

Page 204: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorControle baseado em endereço IP

para [email protected] devem ser devolvidos e que todos os outros e-mails para example.com e seussubdomínios devem ser entregues. A lista de destinatários fornecida é chamada de condição.

Você pode configurar regras de recebimento para especificar como lidar com os e-mails quando umacondição é atendida. Uma regra de recebimento consiste em uma condição e uma lista ordenada deações. Se o destinatário do e-mail recebido corresponder a um destinatário especificado na condição, oAmazon SES executará as ações especificadas na regra. As seguintes ações estão disponíveis:

• Ação do S3 – fornece o e-mail para um bucket do Amazon S3 e, opcionalmente, o notificará por meio doAmazon SNS.

• Ação do SNS – publica o e-mail em um tópico do Amazon SNS.

Note

A ação do SNS inclui uma cópia completa do conteúdo do e-mail nas notificações do AmazonSNS. As outras notificações do Amazon SNS mencionadas aqui simplesmente o notificamda entrega dos e-mails; elas contêm informações sobre os e-mails e não o seu conteúdopropriamente dito.

• Ação do Lambda – chama seu código por meio de uma função do Lambda e, opcionalmente, o notificapor meio do Amazon SNS.

• Ação de devolução – rejeita o e-mail retornando uma reposta de devolução para o remetente e,opcionalmente, o notificará por meio do Amazon SNS.

• Ação de interrupção – encerra a avaliação do conjunto de regras de recebimento e, opcionalmente, onotifica por meio do Amazon SNS.

• Ação de inclusão de cabeçalho – adiciona um cabeçalho ao e-mail recebido. Normalmente, você usaessa ação apenas em combinação com outras ações.

• Ação WorkMail – lida com o e-mail com o Amazon WorkMail. Normalmente você não usa essa açãodiretamente, pois o Amazon WorkMail cuida da configuração.

As regras de recebimento são agrupadas em conjuntos de regras de recebimento. Você pode definir váriosconjuntos de regras de recebimento para uma conta da AWS, mas somente um conjunto de regras derecebimento poderá estar ativo em um determinado momento. A figura a seguir mostra como os conjuntosde regras de recebimento e as ações se relacionam entre si.

Controle baseado em endereço IPVocê pode controlar o fluxo de e-mails em um nível mais abrangente configurando filtros de endereçosIP. Filtros de endereços IP são opcionais e permitem que você especifique se deseja aceitar ou rejeitare-mails provenientes de um endereço IP ou um intervalo de endereços IP. Seus filtros de endereços IPpodem incluir listas de bloqueio (endereços IP dos quais você deseja bloquear e-mails de entrada) e listas

197

Page 205: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProcesso de recebimento de e-mails

de permissão (endereços IP dos quais você deseja sempre aceitar e-mails). Os filtros de endereço IPsão úteis para bloquear spam. O Amazon SES mantém sua própria lista de bloqueio de endereços IPconhecidos por enviar spam, mas você pode optar por receber e-mails desses endereços IP adicionando-os à sua lista de permissão.

Note

Se você deseja permitir e-mails provenientes de um endereço IP do Amazon EC2, deve adicioná-lo à sua lista de permissão. Todos os e-mails originados do Amazon EC2 são bloqueados porpadrão.

Processo de recebimento de e-mailsQuando o Amazon SES recebe um e-mail para seu domínio, ocorrem os seguintes eventos:

1. Primeiro o Amazon SES verifica o endereço IP do remetente. O Amazon SES permite que o e-mailpasse por essa etapa, a menos que:• O endereço IP esteja na sua lista de bloqueio.• O endereço IP esteja na lista de bloqueio do Amazon SES e não em sua lista de permissão.

2. O Amazon SES examina o conjunto de regras de recebimento ativo para determinar se alguma dasregras de recebimento contém uma condição que corresponda a qualquer um dos destinatários do e-mail de entrada.

3. Se não houver nenhuma correspondência, o Amazon SES rejeitará o e-mail. Caso contrário, o AmazonSES aceitará o e-mail.

4. Se o Amazon SES aceitar o e-mail, ele avaliará o conjunto de regras de recebimento ativo. Todas asregras de recebimento que corresponderem a pelo menos uma das condições de destinatário serãoaplicadas na ordem em que elas foram definidas, a menos que uma ação ou uma regra de recebimentoencerre explicitamente a avaliação do conjunto de regras de recebimento.

Agora que você tem uma visão geral do processo, pode começar acessando Configuração do recebimentode e-mails (p. 204).

Conceitos básicos do recebimento de e-mails como Amazon SES

Neste tutorial, você criará uma conta da AWS, registrará um domínio usando o Amazon Route 53, econfigurará o Amazon Simple Email Service para entregar todos os e-mails enviados para seu domíniopara um bucket do Amazon Simple Storage Service.

Note

O Amazon SES oferece suporte apenas ao recebimento de e-mails em determinadas regiõesda AWS. Para obter uma lista completa das regiões onde o recebimento de e-mails tem suporte,consulte Endpoints e cotas do Amazon Simple Email Service no AWS General Reference.

Tópicos• Etapa 1: Antes de começar (p. 199)• Etapa 2: Verificar seu domínio (p. 199)• Etapa 3: Configurar uma regra de recebimento (p. 200)• Etapa 4: Enviar um e-mail de teste (p. 202)• Etapa 5: Visualizar o e-mail recebido (p. 203)• Etapa 6: Limpeza (p. 203)

198

Page 206: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEtapa 1: Antes de começar

Etapa 1: Antes de começarAntes de iniciar este tutorial, cadastre-se para uma conta da AWS (se ainda não tiver uma) e use oAmazon Route 53 para registrar o domínio que você deseja usar para receber e-mails.

Note

O Amazon SES oferece suporte apenas ao recebimento de e-mails em determinadas regiõesda AWS. Para obter uma lista completa das regiões onde o recebimento de e-mails tem suporte,consulte Endpoints e cotas do Amazon Simple Email Service no AWS General Reference.

Cadastrar-seSe já tiver uma conta da AWS, ignore essa seção.

Para criar uma conta da AWS

1. Acesso o https://console.aws.amazon.com/ses/ e, em seguida, selecione Get Started with AmazonSES (Começar a usar o Amazon SES).

2. Na página Create an AWS Account (Criar uma conta da AWS), preencha os campos obrigatórios esiga as instruções da tela para criar uma nova conta.

Registro de um domínio usando o Route 53Este tutorial pressupõe que você está usando um domínio que você registrou usando o Route 53. Vocêtambém pode usar um domínio que registrou usando outro serviço, mas os procedimentos para verificarseu domínio serão diferentes dos mostradas neste tutorial. Para obter mais informações sobre como usaro Route 53 para registrar um domínio, consulte Registro de um novo domínio no Guia do desenvolvedor doAmazon Route 53.

Você também pode transferir um domínio existente para o Route 53. Para obter mais informações sobrecomo transferir domínios para o Route 53, consulte Transferir o registro de um domínio para o Route 53 noGuia do desenvolvedor do Amazon Route 53.

Próxima etapa: Etapa 2: Verificar seu domínio (p. 199)

Etapa 2: Verificar seu domínioPara configurar o Amazon SES para receber e-mails para seu domínio, você deve comprovar que possuio domínio. Você pode verificar qualquer domínio que possua, mas é mais fácil verificar domínios que vocêregistrou usando o Route 53.

Para verificar um domínio no Amazon SES

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.

Note

Para concluir o procedimento desta seção, faça login no Console de Gerenciamento da AWSusando a mesma conta da AWS usada quando você registrou seu domínio no Route 53.

2. No painel de navegação, em Identity Management, escolha Domains.3. Escolha Verify a New Domain.4. Na caixa de diálogo Verify a New Domain (Verificar um novo domínio), em Domain (Domínio), digite o

nome do domínio registrado usando o Route 53 e, em seguida selecione Verify This Domain (Verificareste domínio).

199

Page 207: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEtapa 3: Configurar uma regra de recebimento

5. Na caixa de diálogo Verify a New Domain (Verificar um novo domínio), selecione Use Route 53 (Usaro Route 53).

Note

Se você não vir o botão Use Route 53 (Usar o Route 53), seu domínio poderá não estarregistrado no Route 53. Se tiver usado outro serviço para registrar seu domínio, você poderáverificar o domínio executando os procedimentos em Como verificar um domínio com oAmazon SES (p. 60).

6. Na caixa de diálogo Use Route 53 (Usar o Route 53), selecione Domain Verification Record (Registrode verificação de domínio) e Email Receiving Record (Registro de recebimento de e-mail). Emseguida, em Hosted Zones (Zonas hospedadas), selecione o nome da zona hospedada desejada.Se você não tiver feito alterações no domínio que você registrou usando o Route 53, deverá haversomente uma opção disponível na seção Hosted Zones (Zonas hospedadas).

Important

Se você já tiver configurado registros MX (mail exchanger) para seu domínio, a próxima etapasubstituirá esses registros pelos novos.

7. Escolha Create Record Sets. Você retornará à lista de domínios.8. Aguarde cinco minutos e, em seguida, selecione o botão refresh (atualizar) ( ). Confirme se o valor

na coluna Status é verified (verificado). Se o status for pending verification (verificação pendente),aguarde mais alguns minutos e, em seguida, atualize a lista novamente. Repita esse processo até queo status do domínio seja verified (verificado).

Próxima etapa: Etapa 3: Configurar uma regra de recebimento (p. 200)

Etapa 3: Configurar uma regra de recebimentoPara usar o Amazon SES como seu receptor de e-mails, você deve ter um conjunto de regras derecebimento ativo. Um conjunto de regras de recebimento é uma coleção de regras de recebimento queespecificam o que o Amazon SES deve fazer com os e-mails que recebe para seus domínios verificados.Como você está configurando o recebimento de e-mails com o Amazon SES pela primeira vez, o AmazonSES criará automaticamente um conjunto de regras de recebimento padrão para você. A regra derecebimento que você cria nesta seção pertence ao conjunto de regras de recebimento padrão.

Note

Os procedimentos desta seção presumem que você nunca criou um conjunto de regras derecebimento. Se sua conta já contiver um conjunto de regras de recebimento, você precisarátornar a regra de recebimento que você cria nesta seção ativa para que o Amazon SES a apliquenos e-mails recebidos para seu domínio. Para obter mais informações sobre a habilitação e adesabilitação de conjuntos de regras de recebimento, consulte Ativação e desativação de umconjunto de regras de recebimento (p. 226).

Para criar uma regra de recebimento

1. No painel de navegação, em Email Receiving (Recebimento de e-mail), selecione Rule Sets(Conjuntos de regras).

2. Escolha Create a Receipt Rule.3. Na página Recipients, escolha Next Step.

Note

Como você não está adicionando nenhum destinatário, o Amazon SES aplicará essa regra atodos os destinatários em todos os domínios verificados.

4. Em Add Action (Adicionar ação), selecione S3.

200

Page 208: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEtapa 3: Configurar uma regra de recebimento

5. Em S3 bucket, escolha Create S3 bucket.

6. Em Bucket Name (Nome do bucket), digite um nome para o bucket do Amazon S3. O nome do bucketque você inserir deve atender aos seguintes requisitos:

• Pode conter apenas letras minúsculas, números, pontos (.) e hífens (-).• Deve ser exclusivo em toda a AWS.• Deve começar e terminar com um número ou uma letra minúscula.• Deve conter pelo menos três caracteres e não mais que 63 caracteres.• Não pode ser formatado como um endereço IP (por exemplo, 192.168.5.4).• Não pode conter dois pontos adjacentes (..) ou um traço adjacente a um ponto (-. ou .-).

Ao concluir, selecione Create Bucket (Criar bucket).

201

Page 209: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEtapa 4: Enviar um e-mail

Note

Como você está usando o console do Amazon SES para criar um bucket do Amazon S3 oAmazon SES cria e aplica automaticamente uma política que concede a ele permissão paragravar no bucket. No entanto, ao selecionar um bucket do Amazon S3 já existente, vocêdeve conceder permissão ao Amazon SES para gravar no bucket anexando uma política aobucket (p. 208) usando o console do Amazon S3 ou a API.

7. Escolha Next Step.8. Na página Rule Details (Detalhes da regra), em Rule name (Nome da regra), digite my-rule. Marque

a caixa de seleção ao lado de Enabled (Habilitada) e, em seguida, selecione Next Step (Próximaetapa).

9. Na página Review, selecione Create Rule.

Próxima etapa: Etapa 4: Enviar um e-mail de teste (p. 202)

Etapa 4: Enviar um e-mail de testeAgora que você verificou e configurou o domínio, você pode enviar um e-mail para testar a capacidade deseu domínio para receber e-mail.

Para enviar um e-mail de teste, use uma conta de e-mail que você sabe que pode enviar e-mails, comoseu endereço de e-mail pessoal. Envie uma mensagem de teste para qualquer endereço de e-mail emseu domínio verificado. Por exemplo, se seu domínio for example.com, você poderá enviar um e-mail [email protected] ou [email protected] (ou qualquer outro endereço no domínio example.com).

Note

Não é necessário concluir etapas adicionais para criar endereços de e-mail individuais emseu domínio – o Amazon SES recebe todos os e-mails enviados a qualquer endereço nodomínio verificado, e aplica a regra de recebimento criada em Etapa 3: Configurar uma regra derecebimento (p. 200).

Próxima etapa: Etapa 5: Visualizar o e-mail recebido (p. 203)

202

Page 210: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEtapa 5: Visualizar o e-mail

Etapa 5: Visualizar o e-mail recebidoDepois de enviar uma mensagem de teste para um endereço em seu domínio, você pode recuperá-lo nobucket do Amazon S3 e visualizar seu conteúdo.

Para visualizar uma mensagem recebida por meio do Amazon SES

1. Abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.2. No console Amazon S3, selecione o bucket criado em Etapa 3: Configurar uma regra de

recebimento (p. 200).3. No bucket do Amazon S3, localize o e-mail recebido. O nome do e-mail é sequência exclusiva de

letras e números.

Note

O bucket também pode conter um arquivo chamado AMAZON_SES_SETUP_NOTIFICATION.Você pode ignorar ou excluir esse arquivo.

4. Marque a caixa de seleção ao lado do nome do arquivo. No menu Actions, escolha Download.5. Em seu computador, abra a pasta que contém o arquivo obtido por download na etapa anterior. Há

várias maneiras de visualizar a mensagem obtida por download, incluindo:

• Abrir o arquivo em um editor de texto e ler o conteúdo diretamente. Dependendo do métodoque você usou para enviar o e-mail, parte da mensagem poderá estar codificada. Se parte damensagem estiver codificada, você precisará decodificá-la manualmente (por exemplo, usando umdecodificador base64).

• Adicione a extensão .eml ao final do nome do arquivo e abra o arquivo usando um cliente dee-mail, como o Microsoft Outlook ou o Mozilla Thunderbird. A maioria dos clientes de e-maildecodificará automaticamente as partes codificadas de uma mensagem e exibirá coisas, comoformatação HTML e anexos de arquivo.

Próxima etapa: Etapa 6: Limpeza (p. 203)

Etapa 6: LimpezaDepois de concluir este tutorial, você deve limpar os seguintes recursos criados para evitar cobrançasadicionais.

Conjunto de regras de recebimento do Amazon SESSe você não quiser mais que o Amazon SES receba e-mails para seu domínio, desabilite o conjunto deregras de recebimento ativo (p. 226).

Bucket do Amazon S3Se você não desejar mais o bucket do Amazon S3 que criou, exclua-o. Para excluir um bucket, você deveprimeiro excluir seu conteúdo. Para obter mais informações sobre como excluir pastas e buckets, consulteExcluir um objeto e um bucket no Guia de conceitos básicos do Amazon Simple Storage Service.

Domínio do Route 53Se não deseja mais usar o Route 53 para registrar seu domínio, é possível excluir o registro ou transfirir odomínio para outro serviço de registro.

203

Page 211: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração do recebimento de e-mails

Configuração do recebimento de e-mails doAmazon SES

Esta seção descreve o que você precisa fazer para configurar o Amazon SES para receber e-mails. Porexemplo, você deve primeiro considerar como deseja receber, filtrar e processar seus e-mails, porqueessas decisões afetarão a configuração do Amazon SES. Também é necessário verificar seu domíniocom o Amazon SES para comprovar que o possui e direcionar seu domínio para o Amazon SES parae-mails de entrada. Outra etapa é fornecer ao Amazon SES permissão para acessar todos os recursosnecessários da AWS. Em seguida, você configura o recebimento de e-mails criando um conjunto de regrasde recebimento, regras de recebimento e, opcionalmente, filtros de endereços IP.

Essas etapas são explicadas nos tópicos a seguir:• Considerar seu caso de uso para o recebimento de e-mails do Amazon SES (p. 204)• A verificação de seu domínio para recebimento de e-mails do Amazon SES (p. 206)• Publicação de um registro MX para o recebimento de e-mails do Amazon SES (p. 207)• Concessão de permissões para o Amazon SES para o recebimento de e-mails (p. 208)• Criação de filtros de endereços IP para o recebimento de e-mails do Amazon SES (p. 211)• Criação de um conjunto de regras de recebimento para o recebimento de e-mails do Amazon

SES (p. 211)• Criação de regras de recebimento para o recebimento de e-mails do Amazon SES (p. 212)

Para ver onde estas tarefas se encaixam no processo geral de recebimento de e-mails, consulte Conceitosde recebimento de e-mails (p. 196).

Considerar seu caso de uso para o recebimento de e-mails do Amazon SESAntes de configurar o Amazon SES para receber e-mails, talvez seja útil considerar as seguintes questões.

Conteúdo do e-mailComo você deseja que o Amazon SES transmita para você o conteúdo do e-mail?

O Amazon SES pode fornecer o conteúdo do e-mail de duas maneiras: ele pode armazenar os e-mailsem um bucket do Amazon S3 que você especifica ou pode enviar uma notificação do Amazon SNSque contém uma cópia do e-mail. O Amazon SES fornece o e-mail bruto, não modificado, no formatoMultipurpose Internet Mail Extensions (MIME). Para obter mais informações sobre o formato MIME,consulte RFC 2045.

Qual o tamanho dos e-mails que você receberá?

Se você optar por armazenar e-mails em um bucket do Amazon S3, o tamanho máximo do e-mail(incluindo cabeçalhos) será de 30 MB. Se você optar por receber e-mails por meio de notificações doAmazon SNS, o tamanho máximo do e-mail (incluindo cabeçalhos) será de 150 KB.

Como você deseja acionar o processamento de seu e-mail?

Depois que seu e-mail for entregue, você pode querer processá-lo com seu próprio código. Por exemplo,o seu aplicativo pode converter o e-mail codificado em base 64 para um formato exibível e, em seguida,

204

Page 212: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConsiderar seu caso de uso

disponibilizá-lo para um usuário final por meio de um cliente de e-mail. Há algumas maneiras de iniciar oprocesso:

• Se seus e-mails forem entregues ao Amazon S3, seu aplicativo poderá ouvir as notificações do AmazonSNS geradas por ações do S3, extrair o ID de mensagem do e-mail das notificações e, em seguida, usaro ID de mensagem para recuperar o e-mail do Amazon S3.

Você também pode incorporar o processamento de e-mails às suas regras de recebimento elaborandouma função do Lambda. Nesse caso, a regra de recebimento deve primeiro gravar o e-mail no AmazonS3 e, em seguida, acionar a função do Lambda. As ações do Lambda podem ser executadas deforma síncrona e assíncrona a partir de suas regras de recebimento, dependendo se a função doLambda precisa retornar um resultado que influencie a forma como outras ações serão executadas.Recomendamos que você use a execução assíncrona, a menos que a síncrona seja totalmentenecessária para seu caso de uso. Para obter mais informações sobre o AWS Lambda, consulte o AWSLambda Developer Guide.

• Se seus e-mails forem fornecidos por meio de uma notificação do Amazon SNS usando a ação do SNS,seu aplicativo poderá ouvir notificações do Amazon SNS e, em seguida, extrair as mensagens de e-maildas notificações.

Deseja que os e-mails sejam criptografados?

O Amazon SES integra-se ao AWS Key Management Service (AWS KMS) para, opcionalmente,criptografar o e-mail que ele grava no seu bucket do Amazon S3. O Amazon SES usa a criptografia docliente para criptografar seus e-mails antes de gravá-los no Amazon S3. Isso significa que você devedescriptografar o conteúdo do seu lado depois de recuperar o e-mail do Amazon S3. O AWS SDK forJava e o AWS SDK para Ruby fornecem um cliente que pode lidar com a descriptografia para você. OAmazon SES poderá criptografar os e-mails para você apenas se optar que os e-mails sejam entregues aum bucket do Amazon S3.

E-mails indesejadosEm que ponto no processo de recebimento de e-mails você deseja rejeitar os e-mails indesejáveis?

Quando um remetente tenta enviar um e-mail para um destinatário, o servidor de e-mail do remetente trocauma sequência de comandos com o servidor do destinatário. Essa sequência é chamada de conversaSMTP.

Você pode rejeitar e-mails recebidos em dois momentos do processo de recebimento de e-mails: durantea conversa SMTP e após a conversa SMTP. Você usa filtros de endereços IP para rejeitar mensagensdurante a conversa SMTP e regras de recebimento para rejeitar e-mails após a conversa SMTP.

Você pode usar filtros de endereços IP para rejeitar e-mails provenientes de endereços IP específicos. Obenefício de usar filtros de endereços IP para rejeitar e-mails indesejados é que isso não é cobrado paramensagens que são rejeitadas durante a conversa SMTP. A desvantagem de usar filtros de endereçosIP é que eles rejeitam e-mails de endereços IP que você especificar sem realizar qualquer análise doconteúdo real das mensagens. Para obter mais informações sobre filtros de endereços IP, consulteCriação de filtros de endereços IP para o recebimento de e-mails do Amazon SES (p. 211).

Você pode usar regras de recebimento para enviar uma notificação de devolução para o remetente deum e-mail com base no endereço (ou domínio ou subdomínio) para o qual a mensagem foi enviada. Obenefício de usar regras de recebimento é que você pode executar análises adicionais em mensagensrecebidas antes de enviar uma notificação de devolução para o remetente. Por exemplo, você poderá usaro AWS Lambda para enviar notificações de devolução somente quando houver falha na autenticação dasmensagens DKIM ou forem identificadas como spam. A desvantagem de usar regras de recebimento éque, como as regras de recebimento são processadas após a conversa SMTP, haverá uma cobrança paracada mensagem que você receber. Você também poderá ser cobrado se usar o Lambda para analisar oconteúdo das mensagens recebidas. Para obter mais informações sobre regras de recebimento, consulte

205

Page 213: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorComo verificar um domínio

Criação de regras de recebimento para o recebimento de e-mails do Amazon SES (p. 212). Para obtermais informações sobre o uso do Lambda para analisar o conteúdo das mensagens recebidas consulteExemplos de função do Lambda (p. 220)

Uso de outros serviços da AWSVocê configurou as permissões apropriadas?

Se você deseja que o seu e-mail seja entregue a um bucket do Amazon S3, publicada em um tópicodo Amazon SNS que você não possui, acionar uma função do Lambda ou usar uma chave mestrapersonalizada do AWS KMS, é necessário dar permissão ao Amazon SES para acessar esses recursos.Para conceder acesso ao Amazon SES, você pode criar políticas em recursos nos consoles ou nas APIspara esses serviços da AWS. Para obter mais informações Concessão de permissões (p. 208).

Fluxos de e-mailsComo você deseja dividir seu fluxo de e-mails?

Provavelmente, seu domínio recebe classes diferentes de e-mail. Por exemplo, alguns dos e-mails de seudomínio, por exemplo, um e-mail para [email protected], pode ser destinado a uma caixa de entradapessoal. Outros e-mails, por exemplo, para [email protected], podem ser melhor direcionadospara sistemas automatizados. Você pode usar regras de recebimento para dividir seus e-mails de entradapara que eles sejam processados de forma diferente. Para obter informações sobre como configurar regrasde recebimento, leia Criação de regras de recebimento (p. 212).

Disponibilidade regionalO Amazon SES oferece suporte ao recebimento de e-mails em sua região?

O Amazon SES oferece suporte apenas ao recebimento de e-mails em determinadas regiões da AWS.Para obter uma lista completa das regiões onde o recebimento de e-mails tem suporte, consulte Endpointse cotas do Amazon Simple Email Service no AWS General Reference.

A verificação de seu domínio para recebimento de e-mails do Amazon SESAssim como com qualquer domínio que você deseja usar para enviar ou receber e-mails com o AmazonSES, primeiro é necessário comprovar que o possui. O procedimento de verificação, que inclui iniciar averificação do domínio com o Amazon SES e, em seguida, publicar um registro TXT em seu servidor DNS,é descrito em Verificar domínios no Amazon SES (p. 59).

Note

Embora o Amazon SES permita verificar endereços de e-mail únicos, é necessário verificar umdomínio se quiser usar o Amazon SES para recebimento de e-mails.

Você também pode iniciar o processo de verificação de domínio ao configurar regras de recebimento emCriação de regras de recebimento (p. 212). A lista de destinatários indicará quais destinatários não estãoverificados e permite que você inicie a verificação. Em qualquer caso, você deve concluir a verificação dodomínio publicando um registro TXT no servidor DNS, como descrito em Amazon SESRegistros TXT deverificação de domínio (p. 64).

Você pode verificar se o seu endereço de e-mail ou o domínio está verificado examinando seu status nalista Email Address Identities (Identidades do endereço de e-mail) ou Domain Identities (Identidades do

206

Page 214: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPublicação de um registro MX

domínio) no console do Amazon SES ou usando a API GetIdentityVerificationAttributes doAmazon SES.

Publicação de um registro MX para o recebimento dee-mails do Amazon SESUm registro mail exchanger (registro MX) é uma configuração que especifica quais servidores demensagens podem aceitar e-mails enviados para seu domínio.

Para que o Amazon SES gerencie seus e-mails de entrada, adicione um registro MX à configuração doDNS de seu domínio. O registro MX que você criar refere-se ao endpoint que recebe e-mails para a regiãoda AWS onde você usa o Amazon SES. Por exemplo, o endpoint para a região Oeste dos EUA (Oregon) éinbound-smtp.us-west-2.amazonaws.com. Para obter uma lista completa de endpoints, consulte Regiões eendpoints do Amazon SES (p. 441).

Note

Os endpoints que recebem e-mail no Amazon SES não são servidores de e-mail IMAP ou POP3.Você não pode usar esses URLs como servidores de e-mail de entrada em clientes de e-mail.Se você precisar de uma solução que possa tanto enviar como receber e-mails usando um clientede e-mail, considere o uso do Amazon WorkMail.

O procedimento a seguir inclui etapas gerais para a criação de um registro MX. Os procedimentosespecíficos para a criação de um registro MX dependem de seu provedor de hospedagem ou do DNS.Consulte a documentação do provedor para obter informações sobre como adicionar um registro MX àconfiguração de DNS do seu domínio.

Note

Para concluir o procedimento a seguir, você precisa ser capaz de modificar os registros de DNSpara seu domínio. Se você não puder acessar os registros de DNS para seu domínio, ou não sesentir confortável para fazer isso, entre em contato com o administrador do sistema para obterassistência.

Para adicionar os registros MX à configuração de DNS para seu domínio

1. Faça login no console de gerenciamento para seu provedor de DNS.2. Crie um novo registro MX.3. Para o Name (Nome) do registro MX, insira seu domínio seguido por um ponto final. Por exemplo, se

você deseja que o Amazon SES gerencie o e-mail que é enviado para o domínio example.com, insirao seguinte:

example.com.

Note

Alguns provedores de DNS se referem ao campo Name (Nome) como o Host, o Domain(Domínio) ou o Mail Domain (Domínio de e-mail).

4. Em Type (Tipo), selecione MX.

Note

Alguns provedores de DNS se referem ao campo Type (Tipo) como o Record Type (Tipo deregistro) ou um nome semelhante.

5. Em Value (Valor), insira o seguinte:

207

Page 215: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConcessão de permissões

10 inbound-smtp.regionInboundUrl.amazonaws.com

No exemplo anterior, substitua regionInboundUrl pelo endereço do endpoint que recebe e-mailpara a região da AWS que você usa com o Amazon SES. Por exemplo, se você estiver usando aregião Leste dos EUA (Norte da Virgínia), substitua região por us-east-1. Para obter uma lista deendpoints para o recebimento de e-mails, consulte Regiões e endpoints do Amazon SES (p. 441).

Note

Os consoles de gerenciamento de alguns provedores de DNS incluem campos separadospara o registro Value (Valor) e o registro Priority (Prioridade). Se esse for o caso para o seuprovedor de DNS, insira 10 para o valor Priority (Prioridade) e insira o URL do endpoint de e-mails de entrada para o Value (Valor).

Instruções para a criação de registros MX para vários provedoresOs procedimentos para a criação de um registro MX para seu domínio dependem de qual provedor deDNS você usa. Esta seção inclui links para a documentação de vários provedores de DNS comuns.Esta lista não é uma lista completa de provedores. Se o seu provedor não estiver listado abaixo, vocêprovavelmente ainda poderá usá-lo com o Amazon SES. A inclusão na lista não é um endosso ourecomendação de produtos ou serviços de nenhuma empresa.

Nome do provedor de DNS/hospedagem Link da documentação

Amazon Route 53 Criar registros usando o console do Amazon Route53

GoDaddy Adicionar um registro MX (link externo)

DreamHost Como faço para alterar meus registros MX? (linkexterno)

Cloudflare Como faço para adicionar ou editar e-mails ouregistros MX? (link externo)

HostGator Alterar registros MX – Windows (link externo)

Namecheap Como posso configurar os registros MXnecessários para o serviço de e-mail? (linkexterno)

Names.co.uk Alterar configurações de DNS de seus domínios(link externo)

Wix Adicionar ou atualizar registros MX em sua contado Wix (link externo)

Concessão de permissões para o Amazon SES para orecebimento de e-mailsPara permitir que o Amazon SES grave e-mails no seu bucket do Amazon S3, use uma chave do AWSKMS para criptografar seus e-mails, chame sua função do Lambda ou publique em um tópico do AmazonSNS de outra conta, o Amazon SES deve ter permissão para acessar esses recursos. Você concedepermissão anexando uma política ao recurso. Este tópico oferece exemplos de políticas.

208

Page 216: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConcessão de permissões

Conceder ao Amazon SES permissão para gravar no seu bucketdo Amazon S3Quando aplicada a um bucket do Amazon S3, a seguinte política concede ao Amazon SES permissãopara gravar nesse bucket. Para obter mais informações sobre a criação de regras de recebimento quetransferem e-mails de entrada para o Amazon S3, consulte Ação do S3 (p. 223). Para obter maisinformações sobre como anexar políticas aos buckets do Amazon S3, acesse Uso de políticas de bucket epolíticas de usuário no Guia do desenvolvedor do Amazon Simple Storage Service.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSESPuts", "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::BUCKET-NAME/*", "Condition": { "StringEquals": { "aws:Referer": "AWSACCOUNTID" } } } ]}

Conceder permissão ao Amazon SES para usar sua chavemestra do AWS KMSPara o Amazon SES criptografar seus e-mails, ele deve ter permissão para usar a chave do AWS KMSespecificada ao configurar sua regra de recebimento. Você pode usar a chave mestra padrão (aws/ses)na sua conta ou uma chave mestra personalizada criada por você. Se você usar a chave mestra padrão,não será necessário realizar nenhuma etapa para conceder permissão ao Amazon SES para usá-la. Sevocê usar uma chave mestra personalizada, precisará conceder ao Amazon SES permissão para usá-laadicionando uma instrução à política da chave.

Cole a seguinte declaração de política na política de chaves para permitir que o Amazon SES use suachave mestra personalizada quando o Amazon SES recebe e-mail em nome de sua conta da AWS.

{ "Sid": "AllowSESToEncryptMessagesBelongingToThisAccount", "Effect": "Allow", "Principal": { "Service":"ses.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:GenerateDataKey*" ], "Resource": "*"}

Note

O Amazon SES usa a API de multipart upload do Amazon S3 para enviar mensagens grandes(5 MB ou mais) a buckets do Amazon S3. Se você estiver usando o AWS KMS para enviar

209

Page 217: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConcessão de permissões

mensagens criptografadas a um bucket do Amazon S3 e planeja receber mensagens maiores que5 MB, use a seguinte declaração de política em vez da declaração no exemplo anterior:

{ "Sid": "AllowSESToEncryptMessagesBelongingToThisAccount", "Effect": "Allow", "Principal": { "Service":"ses.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*"}

Para obter mais informações sobre multipart uploads no Amazon S3, consulte Permissões e APIde multipart upload no Guia do desenvolvedor do Amazon Simple Storage Service. Para obter maisinformações sobre como anexar políticas a chaves do AWS KMS, consulte Como usar políticas de chavesno AWS KMS no AWS Key Management Service Developer Guide.

Conceder ao Amazon SES permissão para chamar sua funçãodo LambdaPara que o Amazon SES chame sua função do Lambda, você pode configurar a função do Lambdausando o console do Amazon SES durante a configuração da regra de recebimento (nesse caso, oAmazon SES adiciona automaticamente as permissões necessárias à função) ou você pode usar aAPI AddPermission do AWS Lambda para anexar uma política à função. A seguinte chamada da APIAddPermission concede ao Amazon SES permissão para chamar a função do Lambda. SubstituaAWSACCOUNTID pelo seu ID de conta da AWS de 12 dígitos. Para obter mais informações sobre comoanexar políticas a funções do Lambda, consulte Permissões do AWS Lambda no AWS Lambda DeveloperGuide.

{ "Action": "lambda:InvokeFunction", "Principal": "ses.amazonaws.com", "SourceAccount": "AWSACCOUNTID", "StatementId": "GiveSESPermissionToInvokeFunction"}

Conceder ao Amazon SES permissão para publicar em um tópicodo Amazon SNS de outra contaSe o tópico do Amazon SNS que você deseja usar pertencer à mesma conta da AWS que você estáusando para o Amazon SES, nenhuma configuração será necessária para permitir que o Amazon SESpublique no tópico. No entanto, se você quiser publicar notificações em um tópico que não pertença avocê, use o console ou a API do Amazon SNS para anexar uma política ao tópico do Amazon SNS. Aseguinte política concede permissão ao Amazon SES para publicar um tópico do Amazon SNS. SubstituaAWSACCOUNTID pelo seu ID da conta da AWS de 12 dígitos e TOPIC-NAME pelo nome do tópico doAmazon SNS. Para obter mais informações sobre como escrever políticas para tópicos do Amazon SNS,consulte Autenticação e controle de acesso para o Amazon SNS no Guia do desenvolvedor do AmazonSimple Notification Service.

{

210

Page 218: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de filtros de endereços IP

"Version": "2008-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:us-east-1:AWSACCOUNTID:TOPIC-NAME" } ]}

Criação de filtros de endereços IP para o recebimentode e-mails do Amazon SESUm filtro de endereços IP permite que você especifique se deseja aceitar ou rejeitar e-mails provenientesde um endereço IP ou um intervalo de endereços IP.

Use o console do Amazon SES ou a API CreateReceiptFilter para criar um filtro de endereços IP.Note

Se você quiser apenas receber e-mails de uma lista finita de endereços IP conhecidos, configureuma lista de bloqueio que contenha 0.0.0.0/0e configure uma lista de permissão que contenhaos endereços IP confiáveis. Essa configuração bloqueia todos os endereços IP por padrão e sópermite e-mails de endereços IP que você especificar explicitamente.

Para criar um filtro de endereços IP (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha IP Address Filters.3. No painel de conteúdo, escolha Create Filter.4. Em Filter Name, digite um nome para o filtro de endereços IP. O nome deve conter menos de 64

caracteres alfanuméricos, hífen (-), sublinhado (_) e ponto (.). O nome deve começar e terminar comuma letra ou um número.

5. Em IP Address Range, digite um único endereço IP ou um intervalo de endereços IP que você desejabloquear ou permitir, especificado na notação Classless Inter-Domain Routing (CIDR). Um exemplode um endereço IP único é 10.0.0.1. Um exemplo de um intervalo de endereços IP é 10.0.0.1/24. Paraobter mais informações sobre notação CIDR, consulte RFC 2317.

6. Em Policy Type, escolha Allow ou Block.7. Escolha Create Filter.

Para obter informações sobre como usar a API CreateReceiptFilter para criar um filtro de endereçoIP, consulte o Amazon Simple Email Service API Reference.

Criação de um conjunto de regras de recebimentopara o recebimento de e-mails do Amazon SESUm conjunto de regras de recebimento é uma coleção de regras de recebimento que especificam o queo Amazon SES deve fazer com os e-mails que recebe em todos os seus domínios. Para usar o AmazonSES como seu receptor de e-mails, você deve criar um conjunto de regras de recebimento para sua conta.Para obter mais informações sobre a função de conjuntos de regras de recebimento no processo derecebimento de e-mails, consulte Conceitos de recebimento de e-mails (p. 196).

211

Page 219: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

Somente um conjunto de regras de recebimento pode estar ativo de cada vez. No entanto, você pode criarvários conjuntos de regras de recebimento. Por exemplo, pode ser útil ter vários conjuntos de regras derecebimento se você desejar manter um registro das regras de recebimento usadas no passado, ou seprecisar alterar as regras de recebimento rapidamente para fins de teste.

Note

Se você não deseja usar o Amazon SES como seu receptor de e-mails, basta desabilitar todosos seus conjuntos de regras de recebimento. Para obter informações sobre como desabilitarconjuntos de regras de recebimento, consulte Gerenciamento de conjuntos de regras derecebimento (p. 226).

Você pode usar o console do Amazon SES ou a API para criar um conjunto de regras de recebimento.

• Usar o console do Amazon SES• As regras de recebimento existem apenas nos conjuntos de regras de recebimento, então, para

criar um conjunto, você pode começar pela criação de uma regra de recebimento. Para obtermais informações, consulte Criação de regras de recebimento (p. 212). Ao chegar ao final desteprocedimento, você poderá criar um novo conjunto de regras.

• Copie um conjunto de regras de recebimento existente, como explicado em Gerenciamento deconjuntos de regras de recebimento (p. 226).

• No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets e, em seguida, escolhaCreate a New Rule Set.

• Usar a API do Amazon SES — Use a API CreateReceiptRuleSet para criar um conjunto de regrasde recebimento vazio, como descrito no Amazon Simple Email Service API Reference. Em seguida, useo console do Amazon SES ou a API CreateReceiptRule para adicionar regras a ele.

Criação de regras de recebimento para o recebimentode e-mails do Amazon SESAs regras de recebimento permitem especificar o que o Amazon SES faz com o e-mail que recebe paraos endereços de e-mail ou domínios que você possui. Uma regra de recebimento contém uma condiçãoe uma lista ordenada de ações. Se o destinatário de um e-mail recebido corresponder a um destinatárioespecificado nas condições da regra de recebimento, o Amazon SES executará as ações especificadasnessa regra de recebimento. Para obter mais informações sobre a função das regras de recebimento noprocesso de recebimento de e-mails, consulte Conceitos de recebimento de e-mails (p. 196).

Important

Para configurar regras de recebimento, verifique primeiro um domínio e publique um registro MXnesse domínio. Para obter mais informações sobre como verificar domínios, consulte Verificardomínios no Amazon SES (p. 59). Para obter mais informações sobre a publicação de registrosMX, consulte the section called “Publicação de um registro MX” (p. 207).

Use o console do Amazon SES ou a operação da API CreateReceiptRule para criar regras derecebimento. Esta seção fornece procedimentos para a criação de uma nova regra de recebimento usandoo console. Nesses procedimentos, supõe-se que a sua conta do Amazon SES não contenha regras derecebimento.

Configuração de uma regra de recebimentoUse o console do Amazon SES ou a API CreateReceiptRule para criar regras.

Para criar uma regra de recebimento usando o console

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

212

Page 220: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. Escolha Create a Receipt Rule.4. Use o procedimento a seguir para adicionar um ou mais destinatários. Coletivamente, esses

destinatários são a condição. Você pode ter no máximo 100 destinatários por regra de recebimento.

a. Em Recipients, especifique o endereço de e-mail ou o domínio para o qual você deseja configuraruma regra de recebimento. A tabela a seguir usa o endereço [email protected] para mostrarcomo especificar destinatários.

Se você deseja... Especifique o seguintedestinatário...

Observações

Faça a correspondênciacom um endereço de e-mailespecífico.

[email protected] Também faz acorrespondência comvariações do endereço quecontêm rótulos (como [email protected] e [email protected]). Noentanto, se você especificarum endereço que contenhaum rótulo, somente esseendereço específico serávinculado.

Faça a correspondência detodos os endereços em umdomínio, mas não daquelesem seus subdomínios.

example.com  

Faça a correspondência detodos os endereços em umsubdomínio específico, masnão daqueles no domínio pai.

subdomain.example.com  

Faça a correspondência detodos os endereços em todosos subdomínios, mas nãodaqueles no domínio pai.

.example.com Observe o ponto (.) antes donome de domínio.

Faça a correspondência detodos os endereços dentrode um domínio e todos osendereços em todos os seussubdomínios.

example.com

.example.com

Crie dois destinatáriosseparados: uma com o nomedo domínio e um com umponto seguido pelo nome dodomínio.

Faça a correspondência detodos os destinatários emtodos os domínios verificados

[Nenhum] Deixe o campo de destinatárioem branco.

     

Important

Se várias contas do Amazon SES receberem e-mails em um domínio comum (porexemplo, se várias equipes da mesma empresa tiverem cada uma contas separadasdo Amazon SES), o Amazon SES processará todas as regras de recebimento

213

Page 221: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

correspondentes simultaneamente para cada uma dessas contas. Esse comportamentopode resultar em uma situação em que uma conta gera uma devolução e, ao mesmotempo, outra conta aceita o e-mail.Recomendamos coordenar com outras equipes na sua organização que usam oAmazon SES para garantir que cada conta use regras de recebimento exclusivas, eque essas regras não se sobreponham. Nessas situações, é melhor configurar suasregras de recebimento para usar apenas endereços de e-mail ou subdomínios que sejamexclusivos para o seu grupo ou equipe.

b. Escolha Add Recipient.c. Repita as etapas a e b para cada destinatário que você deseja adicionar. Quando você terminar

de adicionar destinatários, escolha Next Step.5. Use o procedimento a seguir para adicionar uma ou mais ações a regra de recebimento.

a. Escolha uma ação do menu.b. Escolha as configurações da ação. Para obter informações sobre as opções para cada ação,

consulte Opções de ação (p. 214).c. Adicione outras ações, conforme necessário e, em seguida, escolha Next Step.

6. Em Rule Details, use o procedimento a seguir para escolher as configurações.

a. Para Rule Name, digite um nome para a regra de recebimento. O nome deve conter menos de 64caracteres alfanuméricos, hífen (-), sublinhado (_) e ponto (.). O nome deve começar e terminarcom uma letra ou um número.

b. Se você deseja habilitar a regra de recebimento, deixe a opção Enabled selecionada.c. Se você deseja que o Amazon SES rejeite todos os e-mails recebidos que não forem enviados

por uma conexão criptografada com o Transport Layer Security (TLS), selecione TLS.d. Se você deseja que o Amazon SES examine os e-mails recebidos para detectar spam e vírus,

selecione Enable Spam and Virus Scanning (Habilitar a verificação de spam e vírus).7. Em Rule Set, escolha um conjunto de regras existente ou clique em Create New Rule Set.8. Em Rule Position, escolha onde colocar a regra de recebimento na lista ordenada de regras de

recebimento. As regras de recebimento são avaliadas em sequência.9. Escolha Next Step e depois escolha Create Rule.

Para obter informações sobre como usar a API CreateReceiptRule para criar regras, consulte AmazonSimple Email Service API Reference.

Opções de açãoCada regra para o recebimento de e-mails do Amazon SES contém uma lista ordenada de ações. Oprocedimento de configuração geral para regras de recebimento é descrito em Criação de regras derecebimento para o recebimento de e-mails do Amazon SES (p. 212). Esta seção descreve as opçõesespecíficas para cada tipo de ação.

Os tipos de ação são os seguintes:

• Ação Adicionar cabeçalho (p. 215)• Ação de devolução (p. 215)• Ação Lambda (p. 215)• Ação do S3 (p. 223)• Ação SNS (p. 224)• Ação de interrupção (p. 224)• Ação WorkMail (p. 225)

214

Page 222: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

Ação Adicionar cabeçalhoA ação Add Header adiciona um cabeçalho personalizado ao e-mail recebido. Normalmente, você usaessa ação apenas em combinação com outra ação. Essa ação tem as seguintes opções.

• Nome do cabeçalho — o nome do cabeçalho a ser adicionado. Ele deve ter entre 1 e 50 caracteres econsistir apenas em caracteres alfanuméricos (a-z, A-Z, 0-9) e traços.

• Valor do cabeçalho — o valor do cabeçalho a ser adicionado. Ele deve ter pelo menos 2.048 caracterese não deve conter caracteres de nova linha ("\r" ou"\n").

Ação de devoluçãoA ação Bounce (Devolução) rejeita o e-mail retornando uma reposta de devolução para o remetente e,opcionalmente, o notificará por meio do Amazon SNS. Essa ação tem as seguintes opções.

• Código de nova tentativa SMTP — o código de nova tentativa SMTP, conforme definido por RFC 5321.• Código de status SMTP — o código de status aprimorado SMTP, conforme definido por RFC 3463.• Mensagem — texto legível a ser incluído no e-mail de devolução.• Responder ao remetente — o endereço de e-mail do remetente do e-mail devolvido. Esse é o endereço

de e-mail a partir do qual o e-mail de devolução será enviado. Ele deve ser verificado com o AmazonSES.

• Tópico do SNS — o nome ou ARN do tópico do Amazon SNS a ser notificado, opcionalmente, quandoum e-mail de devolução é enviado. Um exemplo de ARN do tópico do Amazon SNS é arn:aws:sns:us-west-2:123456789012:MyTopic. Você também pode criar um tópico do Amazon SNS ao criar sua açãoescolhendo Create SNS Topic (Criar tópico do SNS). Para obter mais informações sobre tópicos doAmazon SNS, consulte o Guia do desenvolvedor do Amazon Simple Notification Service.

Note

O tópico do Amazon SNS escolhido deve estar na mesma região da AWS que o endpoint doAmazon SES; usado para receber e-mail.

Você pode digitar seus próprios valores para esses campos ou escolher um modelo que preencha oscampos Código de resposta SMTP, Código de status SMTP e Mensagem com valores baseados no motivoda devolução. Os seguintes modelos estão disponíveis:

• A caixa de correio não existe — Código de resposta SMTP = 550, Código de status SMTP = 5.1.1• Mensagem muito grande — Código de resposta SMTP = 552, Código de status SMTP = 5.3.4• Mensagem cheia— código de resposta SMTP = 552, Código de status SMTP = 5.2.2• Conteúdo da mensagem rejeitado — Código de resposta SMTP = 500, Código de status SMTP = 5.6.1• Falha desconhecida — Código de resposta SMTP = 554, Código de status SMTP = 5.0.0• Falha temporária — Código de resposta SMTP = 450, Código de status SMTP = 4.0.0

Para códigos de devolução adicionais que você pode usar ao digitar valores personalizados em campos,consulte RFC 3463.

Ação LambdaA ação do Lambda chama seu código por meio de uma função do Lambda e, opcionalmente, o notifica pormeio do Amazon SNS. Essa ação tem as seguintes opções.

• Função do Lambda — O ARN da função do Lambda. Um exemplo de ARN da função do Lambdaé arn:aws:lambda:us-west-2:account-id:function:MyFunction. Para obter informações sobre o AWSLambda, consulte o AWS Lambda Developer Guide.

215

Page 223: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

• Tipo de chamada — o tipo de invocação da função do Lambda. Um tipo de invocação deRequestResponse significa que a execução da função resultará imediatamente em uma resposta, e umvalor de Event significa que a função será invocada de forma assíncrona. Recomendamos que você useo tipo de invocação Event, a menos que a execução síncrona seja totalmente necessária para seu casode uso.

Note

Existe um tempo limite de 30 segundos nas invocações de RequestResponse.

Para obter informações sobre os tipos de invocação do AWS Lambda, consulte o AWS LambdaDeveloper Guide.

• Tópico do SNS — o nome ou o ARN do tópico do Amazon SNS a ser notificado quando a função doLambda especificada for acionada. Um exemplo de ARN do tópico do Amazon SNS é arn:aws:sns:us-west-2:123456789012:MyTopic. Você também pode criar um tópico do Amazon SNS ao criar sua açãoescolhendo Create SNS Topic (Criar tópico do SNS). Para obter mais informações sobre tópicos doAmazon SNS, consulte o Guia do desenvolvedor do Amazon Simple Notification Service.

Note

O tópico do Amazon SNS escolhido deve estar na mesma região da AWS que o endpoint doAmazon SES; usado para receber e-mail.

Como elaborar sua função do Lambda

Para processar seus e-mails, sua função do Lambda pode ser invocada de forma assíncrona (ou seja,usando o tipo de invocação Event). O objeto de evento passado para a função do Lambda conterámetadados relativos ao evento de e-mail de entrada. Você também pode usar os metadados para acessaro conteúdo da mensagem a partir de seu bucket do Amazon S3.

Se você deseja realmente controlar o fluxo de e-mails, sua função do Lambda deve ser invocada deforma síncrona (ou seja, usando o tipo de invocação RequestResponse) e sua função do Lambda devechamar o método callback com dois argumentos: o primeiro argumento é null e o segundo argumentoé uma propriedade disposition que é definida como STOP_RULE, STOP_RULE_SET ou CONTINUE. Seo segundo argumento for null ou não tiver uma propriedade disposition válida, o fluxo de e-mailscontinuará e outras ações e regras serão processados, que é o mesmo com CONTINUE.

Por exemplo, você pode interromper o conjunto de regras de recebimento ao escrever a seguinte linha nofinal do código da função do Lambda:

callback( null, { "disposition" : "STOP_RULE_SET" });

Para obter exemplos de código do AWS Lambda, consulte Exemplos de função do Lambda (p. 220).Para obter exemplos de casos de uso de alto nível, consulte Exemplos de casos de uso (p. 217).

Formato de entrada

O Amazon SES passa informações para a função do Lambda no formato JSON. O objeto de nível superiorcontém uma matriz Records, que é preenchida com as propriedades eventSource, eventVersion eses. O objeto ses contém os objetos receipt e mail, que estão exatamente no mesmo formato que nasnotificações do Amazon SNS notificações descritas em Conteúdo das notificações (p. 233).

Veja a seguir uma exibição de alto nível da estrutura da entrada que o Amazon SES fornece para a funçãodo Lambda.

{ "Records": [ {

216

Page 224: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

"eventSource": "aws:ses", "eventVersion": "1.0", "ses": { "receipt": { <same contents as SNS notification> }, "mail": { <same contents as SNS notification> } } } ]}

Valores de retorno

Sua função do Lambda pode controlar o fluxo de e-mails retornando um dos seguintes valores:

• STOP_RULE — nenhuma ação adicional na regra de recebimento atual será processada, mas é possívelprocessar mais regras de recebimento.

• STOP_RULE_SET — nenhuma ação ou regras de recebimento adicionais serão processadas.• CONTINUE ou qualquer outro valor inválido — isso significa que ações e regras de recebimento

adicionais podem ser processadas.

Exemplos de casos de uso

Os exemplos a seguir descrevem algumas regras que você pode configurar para usar os resultados dafunção do Lambda para controlar o fluxo de e-mails. Para fins de demonstração, muitos destes exemplosusam a ação do S3 como o resultado.

Caso de uso 1: Descarta spam em todos os domínios

Este exemplo demonstra uma regra global que descarta spam em todos os seus domínios. As regras 2 e3 são incluídas para mostrar que você pode aplicar regras específicas do domínio depois que o spam édescartado em todos os domínios.

Rule1

Lista de destinatários: vazia. Essa regra, portanto, se aplicará a todos os destinatários em todos os seusdomínios verificados.

Ações

1. Ação do Lambda (síncrona) que retornará STOP_RULE_SET se o e-mail for spam. Caso contrário,retornará CONTINUE. Consulte o exemplo de função do Lambda para descartar spam em Exemplos defunção do Lambda (p. 220).

Rule2

Lista de destinatários: example1.com

Ações

1. Qualquer ação.

Rule3

Lista de destinatários: example2.com

217

Page 225: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

Ações

1. Qualquer ação.

Caso de uso 2: Devolve spam em todos os domínios

Este exemplo demonstra uma regra global que devolve spam em todos os seus domínios. As regras 2 e3 são incluídas para mostrar que você pode aplicar regras específicas do domínio depois que o spam édevolvido em todos os domínios.

Rule1

Lista de destinatários: vazia. Essa regra, portanto, se aplicará a todos os destinatários em todos os seusdomínios verificados.

Ações

1. Ação do Lambda (síncrona) que retornará CONTINUE se o e-mail for spam. Caso contrário, retornaráSTOP_RULE.

2. Ação de devolução ("500 5.6.1. Conteúdo da mensagem rejeitado").3. Ação de interrupção.

Rule2

Lista de destinatários: example1.com

Ações

1. Qualquer ação

Rule3

Lista de destinatários: example2.com

Ações

1. Qualquer ação

Caso de uso 3: Aplica a regra mais específica

Este exemplo demonstra como usar a ação de interrupção para impedir que os e-mails sejam processadospor várias regras. Neste exemplo, você tem uma regra para um endereço específico e outra regrapara todos os endereços de e-mail sob o domínio. Ao usar a ação de interrupção, as mensagens quecorrespondem à regra para o endereço de e-mail específico não são processadas pela regra maisgenérica que se aplica ao domínio.

Rule1

Lista de destinatários: [email protected]

Ações

1. Ação do Lambda (assíncrona).2. Ação de interrupção.

218

Page 226: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

Rule2

Lista de destinatários: example.com

Ações

1. Qualquer ação.

Caso de uso 4: Registra eventos de e-mail no CloudWatch

Este exemplo demonstra como manter um log de auditoria de todos os e-mail que passam pelo seusistema antes de salvar o e-mail no Amazon SES.

Rule1

Lista de destinatários: example.com

Ações

1. Ação do Lambda (assíncrona) que grava o objeto de evento em um log do CloudWatch. O exemplo defunções do Lambda no log Exemplos de função do Lambda (p. 220) para o CloudWatch.

2. Ação do S3.

Caso de uso 5: Descarta e-mail que falham no DKIM

Este exemplo demonstra como salvar todos os e-mails de entrada em um bucket do Amazon S3, masenviar apenas e-mails que vão para um determinado endereço de e-mail e passam no DKIM em seuaplicativo de e-mail automatizado.

Rule1

Lista de destinatários: example.com

Ações

1. Ação do S3.2. Ação do Lambda (síncrona) que retornará STOP_RULE_SET se a mensagem falhar no DKIM. Caso

contrário, retornará CONTINUE.

Rule2

Lista de destinatários: [email protected]

Ações

1. Ação do Lambda (assíncrona) que aciona o aplicativo automatizado.

Caso de uso 6: Filtra e-mails com base na linha de assunto

Este exemplo demonstra como descartar todos os e-mails de entrada de um domínio que contenham apalavra "desconto" na linha de assunto e, em seguida, processar os e-mails destinados a um sistemaautomatizado de uma forma e processar os e-mails direcionados para todos os outros destinatários nodomínio de outra forma.

Rule1

Lista de destinatários: example.com

219

Page 227: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

Ações

1. Ação do Lambda (síncrona), que retornará STOP_RULE_SET se a linha de assunto contiver a palavra"desconto". Caso contrário, retornará CONTINUE.

Rule2

Lista de destinatários: [email protected]

Ações

1. Ação do S3 com o bucket 1.2. Ação do Lambda (assíncrona) que aciona o aplicativo automatizado.3. Ação de interrupção.

Rule3

Lista de destinatários: example.com

Ações

1. Ação do S3 com o bucket 2.2. Ação do Lambda (assíncrona) que processa um e-mail para o resto do domínio.

Exemplos de função do Lambda

Este tópico contém exemplos de funções do Lambda que controlam o fluxo de e-mails.

Exemplo 1: Descarta spam

Este exemplo interrompe o processamento de mensagens que tenham pelo menos um indicador de spam.

exports.handler = function(event, context, callback) { console.log('Spam filter'); var sesNotification = event.Records[0].ses; console.log("SES Notification:\n", JSON.stringify(sesNotification, null, 2)); // Check if any spam check failed if (sesNotification.receipt.spfVerdict.status === 'FAIL' || sesNotification.receipt.dkimVerdict.status === 'FAIL' || sesNotification.receipt.spamVerdict.status === 'FAIL' || sesNotification.receipt.virusVerdict.status === 'FAIL') { console.log('Dropping spam'); // Stop processing rule set, dropping message callback(null, {'disposition':'STOP_RULE_SET'}); } else { callback(null, null); }};

Exemplo 2: Continuará se determinado cabeçalho

Este exemplo continua o processamento da regra atual somente se o e-mail contiver um valor decabeçalho específico.

exports.handler = function(event, context, callback) {

220

Page 228: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

console.log('Header matcher'); var sesNotification = event.Records[0].ses; console.log("SES Notification:\n", JSON.stringify(sesNotification, null, 2)); // Iterate over the headers for (var index in sesNotification.mail.headers) { var header = sesNotification.mail.headers[index]; // Examine the header values if (header.name === 'X-Header' && header.value === 'X-Value') { console.log('Found header with value.'); callback(null, null); return; } } // Stop processing the rule if the header value wasn't found callback(null, {'disposition':'STOP_RULE'}); };

Exemplo 3: Recupera e-mail do Amazon S3

Este exemplo obtém o e-mail bruto do Amazon S3 e o processa.

Note

Você deve primeiro gravar o e-mail no Amazon S3 usando uma ação do S3.

var AWS = require('aws-sdk');var s3 = new AWS.S3(); var bucketName = '<YOUR BUCKET GOES HERE>'; exports.handler = function(event, context, callback) { console.log('Process email'); var sesNotification = event.Records[0].ses; console.log("SES Notification:\n", JSON.stringify(sesNotification, null, 2)); // Retrieve the email from your bucket s3.getObject({ Bucket: bucketName, Key: sesNotification.mail.messageId }, function(err, data) { if (err) { console.log(err, err.stack); callback(err); } else { console.log("Raw email:\n" + data.Body); // Custom email processing goes here callback(null, null); } });};

Exemplo 4: Devolve as mensagens que falham na autenticação do DMARC

Este exemplo enviará uma mensagem de devolução se um e-mail de entrada falhar na autenticaçãoDMARC.

221

Page 229: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

Note

Ao usar este exemplo, defina o valor da variável de ambiente emailDomain como seu domíniode recebimento de e-mail.

'use strict';

const AWS = require('aws-sdk');

// Assign the emailDomain environment variable to a constant.const emailDomain = process.env.emailDomain;

exports.handler = (event, context, callback) => { console.log('Spam filter starting');

const sesNotification = event.Records[0].ses; const messageId = sesNotification.mail.messageId; const receipt = sesNotification.receipt;

console.log('Processing message:', messageId);

// If DMARC verdict is FAIL and the sending domain's policy is REJECT // (p=reject), bounce the email. if (receipt.dmarcVerdict.status === 'FAIL' && receipt.dmarcPolicy.status === 'REJECT') { // The values that make up the body of the bounce message. const sendBounceParams = { BounceSender: `mailer-daemon@${emailDomain}`, OriginalMessageId: messageId, MessageDsn: { ReportingMta: `dns; ${emailDomain}`, ArrivalDate: new Date(), ExtensionFields: [], }, // Include custom text explaining why the email was bounced. Explanation: "Unauthenticated email is not accepted due to the sending domain's DMARC policy.", BouncedRecipientInfoList: receipt.recipients.map((recipient) => ({ Recipient: recipient, // Bounce with 550 5.6.1 Message content rejected BounceType: 'ContentRejected', })), };

console.log('Bouncing message with parameters:'); console.log(JSON.stringify(sendBounceParams, null, 2)); // Try to send the bounce. new AWS.SES().sendBounce(sendBounceParams, (err, data) => { // If something goes wrong, log the issue. if (err) { console.log(`An error occurred while sending bounce for message: ${messageId}`, err); callback(err); // Otherwise, log the message ID for the bounce email. } else { console.log(`Bounce for message ${messageId} sent, bounce message ID: ${data.MessageId}`); // Stop processing additional receipt rules in the rule set. callback(null, { disposition: 'stop_rule_set', }); } }); // If the DMARC verdict is anything else (PASS, QUARANTINE or GRAY), accept // the message and process remaining receipt rules in the rule set.

222

Page 230: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

} else { console.log('Accepting message:', messageId); callback(); }};

Ação do S3

A ação do S3 entrega o e-mail para um bucket do Amazon S3 e, opcionalmente, o notificará por meio doAmazon SNS. Essa ação tem as seguintes opções.

• Bucket do S3 — o nome do bucket do Amazon S3 no qual salvar e-mails recebidos. Você também podecriar um novo bucket do Amazon S3 ao criar sua ação escolhendo Create S3 Bucket (Criar bucket doS3). O Amazon SES fornece o e-mail bruto, não modificado, normalmente no formato MultipurposeInternet Mail Extensions (MIME). Para obter mais informações sobre o formato MIME, consulte RFC2045.

Important

Quando você salva seus e-mails em um bucket do Amazon S3, o tamanho máximo do e-mail(incluindo cabeçalhos) é 30 MB.

• Prefixo de chave de objeto — num prefixo de nome de chave a ser usado no bucket do Amazon S3. Osprefixos de nomes de chave permitem que você organize o bucket do Amazon S3 em uma estrutura depastas. Por exemplo, se você usar o E-mail como o Object Key Prefix (Prefixo de chave de objeto), seuse-mails serão exibidos em seu bucket do Amazon S3 em uma pasta chamada E-mail.

• Chave KMS (se "Criptografar mensagem" for selecionado no console do Amazon SES) — a chavemestra de cliente que o Amazon SES deve usar para criptografar seus e-mails antes de salvá-los nobucket do Amazon S3. Você pode usar a chave mestra padrão ou uma chave mestra personalizadacriada por você no AWS KMS.

Note

A chave mestra escolhida deve estar na mesma região da AWS que o endpoint do AmazonSES usado para receber e-mail.

• Para usar a chave mestra padrão, escolha aws/ses quando você configurar a regra de recebimentono console do Amazon SES. Se você usar a API do Amazon SES, poderá especificar a chave mestrapadrão fornecendo um ARN na forma de arn:aws:kms:REGION:AWSACCOUNTID:alias/aws/ses. Por exemplo, se o ID da conta da AWS for 123456789012 e você desejar usar a chave mestrapadrão na região Oeste dos EUA (Oregon), o ARN da chave mestra padrão será arn:aws:kms:us-west-2:123456789012:alias/aws/ses. Se você usar a chave mestra padrão, não seránecessário realizar nenhuma etapa extra para conceder permissão ao Amazon SES para usar achave.

• Para usar uma chave mestra personalizada criada no AWS KMS, forneça o ARN da chave mestra eadicione uma instrução à política de sua chave para conceder ao Amazon SES permissão para usá-la. Para obter mais informações sobre concessão de permissões, consulte Concessão de permissõespara o Amazon SES para o recebimento de e-mails (p. 208).

Para obter mais informações sobre o uso do AWS KMS com o Amazon SES, consulte AWS KeyManagement Service Developer Guide. Se você não especificar uma chave mestra no console ou naAPI, o Amazon SES não criptografará seus e-mails.

Important

Seu e-mail é criptografado pelo Amazon SES usando o cliente de criptografia do Amazon S3antes que ele seja enviado para o Amazon S3 para armazenamento. Ele não é criptografadousando a criptografia do servidor do Amazon S3. Isso significa que você deve usar o clientede criptografia do Amazon S3 para descriptografar o e-mail depois de recuperá-lo do AmazonS3, pois o serviço não tem acesso para usar suas chaves do AWS KMS para a descriptografia.

223

Page 231: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de regras de recebimento

Esse cliente de criptografia está disponível no AWS SDK for Java e no AWS SDK para Ruby.Para obter mais informações sobre criptografia do cliente usando chaves mestras do AWSKMS, consulte o Guia do desenvolvedor do Amazon Simple Storage Service.

• Tópico do SNS — o nome ou o ARN do tópico do Amazon SNS a ser notificado quando um e-mail forsalvo no bucket do Amazon S3. Um exemplo de ARN do tópico do Amazon SNS é arn:aws:sns:us-west-2:123456789012:MyTopic. Você também pode criar um tópico do Amazon SNS ao criar sua açãoescolhendo Create SNS Topic (Criar tópico do SNS). Para obter mais informações sobre tópicos doAmazon SNS, consulte o Guia do desenvolvedor do Amazon Simple Notification Service.

Note

O tópico do Amazon SNS escolhido deve estar na mesma região da AWS que o endpoint doAmazon SES; usado para receber e-mail.

Ação SNS

A ação do SNS publica o e-mail usando uma notificação do Amazon SNS. A notificação inclui o conteúdocompleto do e-mail. Essa ação tem as seguintes opções.

• Tópico do SNS — o nome ou o ARN do tópico do Amazon SNS no qual publicar os e-mails. Asnotificações do Amazon SNS conterão uma cópia do e-mail bruto, sem modificações, que geralmenteestá no formato Multipurpose Internet Mail Extensions (MIME). Para obter mais informações sobre oformato MIME, consulte RFC 2045.

Important

Se você optar por receber e-mails por meio de notificações do Amazon SNS, o tamanhomáximo do e-mail (incluindo cabeçalhos) será 150 KB. E-mails grandes serão devolvidos. Sevocê previr e-mails maiores do que isso, salve-os em um bucket do Amazon S3.

Um exemplo de ARN do tópico do Amazon SNS é arn:aws:sns:us-west-2:123456789012:MyTopic.Você também pode criar um tópico do Amazon SNS ao criar sua ação escolhendo Create SNS Topic(Criar tópico do SNS). Para obter mais informações sobre tópicos do Amazon SNS, consulte o Guia dodesenvolvedor do Amazon Simple Notification Service.

Note

O tópico do Amazon SNS escolhido deve estar na mesma região da AWS que o endpoint doAmazon SES; usado para receber e-mail.

• Codificação — a codificação a ser usada para o e-mail na notificação do Amazon SNS. UTF-8 é maisfácil de usar, mas pode não preservar todos os caracteres especiais quando uma mensagem foicodificada com um formato diferente. O Base64 preserva todos os caracteres especiais. Para obterinformações sobre UTF-8 e Base64, consulte RFC 3629 e RFC 4648, respectivamente.

Ação de interrupção

A ação Stop (Interromper) encerra a avaliação do conjunto de regras de recebimento e, opcionalmente, onotifica por meio do Amazon SNS. Essa ação tem as seguintes opções.

• Tópico do SNS — o nome ou ARN do tópico do Amazon SNS a ser notificado quando a ação deinterrupção for executada. Um exemplo de ARN do tópico do Amazon SNS é arn:aws:sns:us-west-2:123456789012:MyTopic. Você também pode criar um tópico do Amazon SNS ao criar sua açãoescolhendo Create SNS Topic (Criar tópico do SNS). Para obter mais informações sobre tópicos doAmazon SNS, consulte o Guia do desenvolvedor do Amazon Simple Notification Service.

224

Page 232: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciamento do recebimento de e-mails

Note

O tópico do Amazon SNS escolhido deve estar na mesma região da AWS que o endpoint doAmazon SES; usado para receber e-mail.

Ação WorkMail

A ação WorkMail se integra ao Amazon WorkMail. Se o Amazon WorkMail executar todo o processamentode seus e-mails, normalmente você não usará essa ação diretamente, pois o Amazon WorkMail cuidará daconfiguração. Essa ação tem as seguintes opções.

• ARN da organização — o ARN da organização do Amazon WorkMail.Os ARNs da organização do Amazon WorkMail estão no formatoarn:aws:workmail:region:account_ID:organization/organization_ID, em que:• region é a região onde você está usando o Amazon SES e o Amazon WorkMail. (Você deve usá-los

da mesma região.) Um exemplo é us-west-2.• account_ID é o ID da conta da AWS. Você pode encontrar o ID de sua conta da AWS na página

Conta do Console de Gerenciamento da AWS.• organization_ID é um identificador exclusivo que o Amazon WorkMail gera quando você cria uma

organização. Você pode localizar o ID da organização no console do Amazon WorkMail na páginaConfigurações da organização da sua organização.

Um exemplo de ARN de organização do Amazon WorkMail é arn:aws:workmail:us-west-2:123456789012:organization/m-68755160c4cb4e29a2b2f8fb58f359d7. Para obter informaçõessobre as organizações do Amazon WorkMail, consulte o Amazon WorkMail Administrator Guide.

• Tópico do SNS — o nome ou ARN do tópico do Amazon SNS a ser notificado quando a função doAmazon WorkMail for executada. Um exemplo de ARN do tópico do Amazon SNS é arn:aws:sns:us-west-2:123456789012:MyTopic. Você também pode criar um tópico do Amazon SNS ao criar sua açãoescolhendo Create SNS Topic (Criar tópico do SNS). Para obter mais informações sobre tópicos doAmazon SNS, consulte o Guia do desenvolvedor do Amazon Simple Notification Service.

Note

O tópico do Amazon SNS escolhido deve estar na mesma região da AWS que o endpoint doAmazon SES; usado para receber e-mail.

Gerenciamento do recebimento de e-mails doAmazon SES

Depois de criar seus conjuntos de regras de recebimento, regras de recebimento e filtros de endereço IP,você pode usar o console ou a API do Amazon SES para editar, excluir e executar outras operações. Vocêtambém pode examinar as notificações recebidas do Amazon SNS e usar o Amazon CloudWatch paravisualizar suas métricas de erro.

Tópicos nesta seção:• Gerenciamento de conjuntos de regras de recebimento para o recebimento de e-mails do Amazon

SES (p. 226)• Gerenciamento de regras de recebimento para o recebimento de e-mails do Amazon SES (p. 228)• Gerenciamento de filtros de endereços IP para o recebimento de e-mails do Amazon SES (p. 231)• Exibição de métricas para o recebimento de e-mails do Amazon SES (p. 231)• Uso de notificações para o recebimento de e-mails do Amazon SES (p. 232)

225

Page 233: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciamento de conjuntos de regras de recebimento

Gerenciamento de conjuntos de regras derecebimento para o recebimento de e-mails doAmazon SESDepois de criar um conjunto de regras de recebimento, como descrito em Criação de um conjunto deregras de recebimento (p. 211), você pode atualizá-lo, conforme necessário. Embora a edição de umconjunto de regras de recebimento normalmente consista em editar regras de recebimento individuais,conforme descrito em Gerenciamento de regras de recebimento (p. 228), você também pode excluir,ativar, desabilitar e copiar conjuntos de regras de recebimento. Além disso, você pode reordenar as regrasde recebimento em um conjunto de regras de recebimento. Essas operações estão descritas nas seções aseguir.

Tópicos nesta seção:• Exclusão de um conjunto de regras de recebimento (p. 226)• Ativação e desativação de um conjunto de regras de recebimento (p. 226)• Cópia de um conjunto de regras de recebimento (p. 227)• Reordenação de regras de recebimento (p. 228)

Exclusão de um conjunto de regras de recebimentoVocê pode usar o console do Amazon SES ou a API DeleteReceiptRuleSet para excluir um conjuntode regras de recebimento.

Note

Você não pode excluir o conjunto de regras de recebimento que está ativo no momento.

Para excluir um conjunto de regras de recebimento (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. Na lista Inactive Rule Sets, selecione o conjunto de regras de recebimento que você deseja excluir.4. No menu Actions, escolha Delete e, em seguida, confirme que você deseja excluir o conjunto de

regras de recebimento.

Para obter informações sobre como usar a API DeleteReceiptRuleSet para excluir um conjunto deregras de recebimento, consulte Amazon Simple Email Service API Reference.

Ativação e desativação de um conjunto de regras de recebimentoCada conjunto de regras de recebimento está em um dos dois estados: ativo ou desativado. Apenasum de seus conjuntos de regras de recebimento pode estar ativo em um determinado momento. Osconjuntos de regras de recebimento desativados podem ser úteis em casos em que você deseja alterar oconjunto ativo, mas não deseja que essas alterações fiquem ativas até ter certeza de que as atualizaçõesestejam corretas. Nesse caso, você pode copiar o conjunto de regras de recebimento ativo e fazeralterações no conjunto de regras de recebimento copiado e desativado. Quando estiver satisfeito comas alterações, você poderá ativar o conjunto de regras de recebimento copiado. Quando você ativar umconjunto de regras de recebimento, todos os outros conjuntos de regras de recebimento serão desativadosautomaticamente.

226

Page 234: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciamento de conjuntos de regras de recebimento

Note

Para desativar o recebimento de e-mails pelo Amazon SES completamente, desative todos osseus conjuntos de regras de recebimento.

Use o console do Amazon SES ou a API SetActiveReceiptRuleSet para controlar qual conjunto deregras está ativo.

Para ativar um conjunto de regras de recebimento desativado (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. Na lista Inactive Rule Sets, selecione o conjunto de regras de recebimento que você deseja ativar.4. Escolha Set as Active Rule Set.

Para desativar o conjunto de regras de recebimento ativo (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. Em Active Rule Set, escolha Disable Active Rule Set e, em seguida, confirme que deseja desativar o

conjunto de regras de recebimento.

Para obter informações sobre como usar a API SetActiveReceiptRuleSet para ativar ou desativar umconjunto de regras, consulte Amazon Simple Email Service API Reference.

Cópia de um conjunto de regras de recebimentoUse o console do Amazon SES ou a API CloneReceiptRuleSet para copiar um conjunto de regrasde recebimento. Se você usar o console do Amazon SES, o procedimento será um pouco diferente,dependendo se o conjunto de regras de recebimento que você deseja copiar está ativo ou desativado.

Para copiar o conjunto de regras de recebimento ativo (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. No painel de conteúdo, escolha Copy Active Rule Set.4. Na caixa de diálogo Copy Rule Set, digite o nome que você deseja atribuir ao conjunto copiado.5. Escolha Copy Rule Set. O conjunto copiado aparecerá na lista Inactive Rule Sets.

Para copiar um conjunto de regras de recebimento desativado (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. Na lista Inactive Rule Sets, selecione o conjunto de regras de recebimento que você deseja copiar.4. No menu Actions, escolha Copy.5. Na caixa de diálogo Copy Rule Set, digite o nome que você deseja atribuir ao conjunto copiado.6. Escolha Copy Rule Set. O conjunto copiado aparecerá na lista Inactive Rule Sets.

227

Page 235: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciamento de regras de recebimento

Para obter informações sobre como usar a API CloneReceiptRuleSet para copiar um conjunto deregras de recebimento, consulte Amazon Simple Email Service API Reference.

Reordenação de regras de recebimentoUse o console do Amazon SES ou a API ReorderReceiptRuleSet para reordenar regras derecebimento em um conjunto de regras de recebimento. Se você usar o console do Amazon SES, oprocedimento será um pouco diferente, dependendo se o conjunto de regras de recebimento está ativo oudesativado.

Para reordenar as regras de recebimento no conjunto de regras de recebimento ativo (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. No painel de conteúdo, escolha View Active Rule Set.4. Escolha Reorder Rules.5. Use as setas para cima e para baixo ao lado dos nomes das regras de recebimento para reordená-las

e, em seguida, escolha Save Order.

Para reordenar as regras de recebimento em um conjunto de regras de recebimento desativado(console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. Nos Inactive Rule Sets, selecione o conjunto de regras de recebimento.4. Escolha Reorder Rules.5. Use as setas para cima e para baixo ao lado dos nomes das regras de recebimento para reordená-las

e, em seguida, escolha Save Order.

Para obter informações sobre como usar a API ReorderReceiptRuleSet para reordenar regras derecebimento em um conjunto de regras de recebimento, consulte o Amazon Simple Email Service APIReference.

Gerenciamento de regras de recebimento para orecebimento de e-mails do Amazon SESAlém de criar regras de recebimento, como descrito em Criação de regras de recebimento (p. 212),você pode editar, excluir, ativar, desativar, copiar e definir a posição de uma regra de recebimento em seuconjunto de regras de recebimento, como descrito nas seções a seguir.

Note

Nas instruções desta seção, considera-se que a regra de recebimento está no conjunto de regrasde recebimento ativo. Para editar as regras de recebimento de um conjunto desativado, escolhaum conjunto de regras de recebimento na lista Inactive Rule Sets. A partir daí, as instruções paraeditar regras de recebimento são as mesmas para o conjunto de regras de recebimento ativo.

Tópicos nesta seção:• Edição de uma regra de recebimento (p. 229)• Exclusão de uma regra de recebimento (p. 229)

228

Page 236: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciamento de regras de recebimento

• Ativação e desativação de uma regra de recebimento (p. 229)• Cópia de uma regra de recebimento (p. 230)• Definição da posição de uma regra de recebimento (p. 230)

Edição de uma regra de recebimentoUse o console do Amazon SES ou a API do Amazon SES para editar uma regra de recebimento. É maisfácil usar o console do Amazon SES.

Para editar uma regra de recebimento (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. No painel de conteúdo, escolha View Active Rule Set ou escolha um conjunto de regras de

recebimento na lista Inactive Rule Sets.4. No painel de detalhes, escolha a regra de recebimento que você deseja editar.5. No painel Edit Rule, edite a política e, então, escolha Save Rule.

Se você quiser usar a API do Amazon SES em vez disso, use a API DescribeReceiptRulepara recuperar a regra, use um editor de texto para editar a regra e, em seguida, use a APIUpdateReceiptRule para substituir a versão anterior da regra. Para obter mais informações, consulte oAmazon Simple Email Service API Reference.

Exclusão de uma regra de recebimentoUse o console do Amazon SES ou a API DeleteReceiptRule para excluir uma regra de recebimento.

Para excluir uma regra de recebimento (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. No painel de conteúdo, escolha View Active Rule Set ou escolha um conjunto de regras de

recebimento na lista Inactive Rule Sets.4. No painel de detalhes, selecione a regra de recebimento.5. No menu Actions, escolha Delete e, em seguida, confirme que você deseja excluir a regra de

recebimento.

Para obter informações sobre como usar a API DeleteReceiptRule para excluir uma regra, consulte oAmazon Simple Email Service API Reference.

Ativação e desativação de uma regra de recebimentoUse o console do Amazon SES ou a API do Amazon SES para ativar ou desativar uma regra derecebimento. É mais fácil usar o console do Amazon SES.

Para ativar ou desativar uma regra de recebimento (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

229

Page 237: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciamento de regras de recebimento

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. No painel de conteúdo, escolha View Active Rule Set ou escolha um conjunto de regras de

recebimento na lista Inactive Rule Sets.4. No painel de detalhes, escolha a regra de recebimento que você deseja editar.5. No painel Edit Rule, selecione ou marque Enabled e, então, escolha Save Rule.

Se você quiser usar a API do Amazon SES em vez disso, você pode usar a API DescribeReceiptRulepara recuperar a regra de recebimento, usar um editor de texto para editar o campo Enabled da regra e,em seguida, usar a API UpdateReceiptRule para substituir a versão anterior da regra de recebimento.Para obter mais informações, consulte o Amazon Simple Email Service API Reference.

Cópia de uma regra de recebimentoUse o console do Amazon SES ou a API do Amazon SES para copiar uma regra de recebimento. É maisfácil usar o console do Amazon SES.

Para copiar uma regra de recebimento (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. No painel de conteúdo, escolha View Active Rule Set ou escolha um conjunto de regras de

recebimento na lista Inactive Rule Sets.4. No painel de detalhes, selecione a regra de recebimento.5. No menu Actions, escolha Copy Rule.6. Na caixa de diálogo Copy Rule, digite um novo nome de regra de recebimento e selecione o conjunto

de destino. A nova regra de recebimento será inserida no início do conjunto de regras de recebimento,e ele estará inicialmente desativado.

Se você quiser usar a API do Amazon SES em vez disso, você pode usar a API DescribeReceiptRulepara recuperar a regra de recebimento, usar um editor de texto para editar o nome da regra e o conjuntode regras de recebimento (se desejar) e, em seguida, passar essa regra de recebimento para a APICreateReceiptRule. Para obter mais informações, consulte o Amazon Simple Email Service APIReference.

Definição da posição de uma regra de recebimentoUse o console do Amazon SES ou a API SetReceiptRulePosition para alterar a posição de umaregra de recebimento no conjunto de regras de recebimento.

Para definir a posição de uma regra de recebimento (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha Rule Sets.3. No painel de conteúdo, escolha View Active Rule Set ou escolha um conjunto de regras de

recebimento na lista Inactive Rule Sets.4. No painel de conteúdo, escolha Reorder Rules.5. Use as setas para cima e para baixo ao lado dos nomes das regras de recebimento para reordená-las

e, em seguida, escolha Save Order.

230

Page 238: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciamento de filtros de endereços IP

Para obter informações sobre como usar a API SetReceiptRulePosition para alterar a posição deuma regra de recebimento no conjunto de regras de recebimento, consulte Amazon Simple Email ServiceAPI Reference.

Gerenciamento de filtros de endereços IP para orecebimento de e-mails do Amazon SESAlém de criar filtros de endereços IP, como explicado em Criação de filtros de endereços IP (p. 211),você pode visualizá-los e excluí-los, conforme descrito nas seções a seguir.

Exibição de filtros de endereços IPUse o console do Amazon SES ou a API ListReceiptFilters para obter uma lista de seus filtros deendereços IP.

Para visualizar seus filtros de endereços IP (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha IP Address Filters. Você verá umalista de seus filtros de endereços IP.

Para obter informações sobre como usar a API ListReceiptFilters para obter uma lista de seus filtrosde endereços IP, consulte o Amazon Simple Email Service API Reference.

Exclusão de um filtro de endereços IPUse o console do Amazon SES ou a API DeleteReceiptFilter para excluir um filtro de endereços IP.

Para excluir um filtro de endereços IP (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação esquerdo, em Email Receiving, escolha IP Address Filters.3. No painel de detalhes, selecione o filtro de endereços IP.4. Escolha Delete e confirme que deseja excluir o filtro de endereços IP.

Para obter informações sobre como usar a API DeleteReceiptFilter para excluir um endereço IP,consulte o Amazon Simple Email Service API Reference.

Exibição de métricas para o recebimento de e-mailsdo Amazon SESuse o Amazon CloudWatch (CloudWatch) para exibir métricas de falha para suas regras de recebimento.Você encontrará as métricas em SES/Rule Metrics.

Há duas métricas de falha:

• PublishFailure – o Amazon SES encontrou um erro ao tentar executar as ações que você configurou.• PublishExpired – o Amazon SES encontrou um erro ao tentar executar as ações que você configurou,

e o Amazon SES não tentará mais entregar o e-mail. Essa falha pode ser permanente ou temporária. OAmazon SES não repetirá mais pois a ação não foi bem-sucedida em um período de quatro horas.

231

Page 239: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

Esses erros poderão ocorrer, por exemplo, se você tiver excluído ou revogado permissões para um bucketdo Amazon S3, tópico do Amazon SNS ou uma função do Lambda que uma ação em uma de suas regrasde recebimento foi configurada para usar.

Important

As alterações feitas para corrigir o conjunto de regras de recebimento serão aplicadas apenas ae-mails recebidos pelo Amazon SES após a atualização. Os e-mails são sempre avaliados emrelação ao conjunto de regras de recebimento que foi implementado no momento em que o e-mailfoi recebido.

A figura a seguir mostra as métricas no console do CloudWatch.

Uso de notificações para o recebimento de e-mails doAmazon SESQuando você recebe um e-mail, o Amazon SES executa as regras existentes no conjunto de regras derecebimento ativo. Você pode configurar regras de recebimento para enviar notificações usando o AmazonSNS. As regras de recebimento podem enviar dois tipos diferentes de notificações:

• Notificações enviadas a partir de ações do SNS – ao adicionar uma ação do SNS (p. 224) para umaregra de recebimento, ela envia informações sobre o e-mail. Se a mensagem for de 150 KB ou menor,esse tipo de notificação também incluirá o corpo MIME completo do e-mail.

• Notificações enviadas a partir de outros tipos de ação – ao adicionar qualquer outro tipo deação (incluindo ações de Devolução (p. 215), do Lambda (p. 215), do Conjunto de regras deinterrupção (p. 224) ou do WorkMail (p. 225)) para uma regra de recebimento, pode opcionalmenteespecificar um tópico do Amazon SNS. Se você fizer isso, receberá notificações quando essas açõesforem executadas. Essas notificações contêm informações sobre o e-mail, mas não incluem o conteúdodo e-mail.

Esta seção descreve o conteúdo dessas notificações e fornece um exemplo de cada tipo de notificação.

Tópicos nesta seção:

232

Page 240: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

• Conteúdo de notificações para o recebimento de e-mails do Amazon SES (p. 233)• Exemplos de notificações para o recebimento de e-mails do Amazon SES (p. 239)

Conteúdo de notificações para o recebimento de e-mails doAmazon SESTodas as notificações de recebimento de e-mails são publicadas em tópicos do Amazon SimpleNotification Service (Amazon SNS) no formato JavaScript Object Notation (JSON).

Objeto JSON de nível superior

O objeto JSON de nível superior contém os seguintes campos.

Nome do campo Descrição

notificationType O tipo de notificação. Para esse tipo de notificação,o valor é sempre Received.

receipt (p. 233) O objeto que contém informações sobre a entregade e-mails.

mail (p. 237) O objeto que contém informações sobre o e-mailassociado à notificação.

content String que contém o e-mail bruto, não modificado,normalmente no formato Multipurpose Internet MailExtensions (MIME). Para obter mais informaçõessobre o formato MIME, consulte RFC 2045.

Note

Este campo estará presente somente se anotificação foi acionada por uma ação deSNS. As notificações acionadas por todasas outras ações não contêm esse campo.

Objeto de recebimento

O objeto receipt tem os seguintes campos.

Nome do campo Descrição

action (p. 234) O objeto que encapsula informações sobre a açãoque foi executada. Para obter uma lista de valorespossíveis, consulte Objeto de ação (p. 234).

dkimVerdict (p. 235) O objeto que indica se a verificação DomainKeysIdentified Mail (DKIM) foi bem-sucedida. Para obteruma lista de valores possíveis, consulte ObjetodkimVerdict (p. 235).

dmarcPolicy Indica as configurações de Domain-basedMessage Authentication, Reporting & Conformance(DMARC) para o domínio de envio. Esse campo

233

Page 241: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

Nome do campo Descriçãosó será exibido se a mensagem não passar naautenticação de DMARC.

Os valores possíveis para esse campo são:

• none: o proprietário das solicitações de domíniode envio que nenhuma ação específica sejaexecutada em mensagens que falharem naautenticação DMARC.

• quarantine: o proprietário das solicitações dedomínio de envio que mensagens que falharemna autenticação DMARC sejam tratadas pelosreceptores como suspeitos.

• reject: o proprietário das solicitações dodomínio de envio que as mensagens quefalharem na autenticação DMARC sejamrejeitadas.

dmarcVerdict (p. 236) O objeto que indica se a verificação de Domain-based Message Authentication, Reporting &Conformance (DMARC) foi bem-sucedida. Paraobter uma lista de valores possíveis, consulteObjeto dmarcVerdict (p. 236).

processingTimeMillis String que especifica o período, em milissegundos,do momento em que o Amazon SES recebeu amensagem até o momento em que ele acionou aação.

recipients Uma lista de destinatários (especificamente,os endereços de RCPT TO do envelope)que foram correspondidos pela regra derecebimento (p. 212) ativa. Os endereçoslistados aqui podem ser diferentes daqueleslistados no campo destination no the sectioncalled “Objeto de e-mail” (p. 237).

spamVerdict (p. 236) O objeto que indica se a mensagem é spam. Paraobter uma lista de valores possíveis, consulteObjeto spamVerdict (p. 236).

spfVerdict (p. 237) O objeto que indica se a verificação Sender PolicyFramework (SPF) foi bem-sucedida. Para obteruma lista de valores possíveis, consulte ObjetospfVerdict (p. 237).

timestamp String que especifica a data e a hora em que aação foi acionada, no formato ISO 8601.

virusVerdict (p. 237) O objeto que indica se a mensagem contém vírus.Para obter uma lista de valores possíveis, consulteObjeto virusVerdict (p. 237).

Objeto de ação

O objeto action tem os seguintes campos.

234

Page 242: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

Nome do campo Descrição

type String que indica o tipo de ação que foi executada.Os valores possíveis são S3, SNS, Bounce,Lambda, Stop e WorkMail.

topicArn String que contém o Nome de recurso da Amazon(ARN) do tópico do Amazon SNS no qual anotificação foi publicada.

bucketName String que contém o nome do bucket do AmazonS3 no qual a mensagem foi publicada. Presenteapenas para o tipo de ação do S3.

objectKey String que contém um nome que identificaexclusivamente o e-mail no bucket do Amazon S3.Ela é igual ao messageId em the section called“Objeto de e-mail” (p. 237). Presente apenaspara o tipo de ação do S3.

smtpReplyCode String que contém o código de resposta SMTP,conforme definido pelo RFC 5321. Presenteapenas para o tipo de ação de devolução.

statusCode String que contém o código de status aprimoradoSMTP, conforme definido pelo RFC 3463. Presenteapenas para o tipo de ação de devolução.

message String que contém o texto legível a ser incluído namensagem de devolução. Presente apenas para otipo de ação de devolução.

sender String que contém o endereço do remetente do e-mail que foi devolvido. Esse é o endereço de e-mail a partir do qual a mensagem de devolução foienviada. Presente apenas para o tipo de ação dedevolução.

functionArn String que contém o Nome de recurso da Amazon(ARN) da função do Lambda que foi acionada.Presente apenas para o tipo de ação do Lambda.

invocationType String que contém o tipo de invocação dafunção do Lambda. Os possíveis valores sãoRequestResponse e Event. Presente apenaspara o tipo de ação do Lambda.

organizationArn String que contém o Nome de recurso da Amazon(ARN) da organização do Amazon WorkMail.Presente apenas para o tipo de ação WorkMail.

Objeto dkimVerdict

O objeto dkimVerdict tem os seguintes campos.

235

Page 243: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

Nome do campo Descrição

status String que contém o veredicto do DKIM. Os valorespossíveis são:

• PASS: a mensagem passou na autenticaçãoDKIM.

• FAIL: a mensagem não passou na autenticaçãoDKIM.

• GRAY: a mensagem não é assinada pelo DKIM.• PROCESSING_FAILED: há um problema que

impede o Amazon SES de verificar a assinaturado DKIM. Por exemplo, consultas de DNS estãofalhando ou o cabeçalho da assinatura do DKIMnão está formatado corretamente.

Objeto dmarcVerdict

O objeto dmarcVerdict tem os seguintes campos.

Nome do campo Descrição

status String que contém o veredicto do DMARC. Osvalores possíveis são:

• PASS: a mensagem passou na autenticaçãoDMARC.

• FAIL: a mensagem falhou na autenticaçãoDMARC.

• GRAY: a mensagem não passou na autenticaçãode DMARC, e o domínio de envio não tem umapolítica de DMARC ou usa a política p=none.

• PROCESSING_FAILED: há um problemaque impede que o Amazon SES forneça umveredicto do DMARC.

Objeto spamVerdict

O objeto spamVerdict tem os seguintes campos.

Nome do campo Descrição

status String que contém o resultado da verificação despam. Os valores possíveis são:

• PASS: a verificação de spam determinou que éimprovável que a mensagem contenha spam.

• FAIL: a verificação de spam determinou que éprovável que a mensagem contenha spam.

• GRAY: o Amazon SES verificou o e-mail, masnão foi possível determinar com segurança se éspam.

236

Page 244: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

Nome do campo Descrição• PROCESSING_FAILED: o Amazon SES não

conseguiu verificar o e-mail. Por exemplo, o e-mail não é uma mensagem MIME válida.

Objeto spfVerdict

O objeto spfVerdict tem os seguintes campos.

Nome do campo Descrição

status String que contém o veredicto do SPF. Os valorespossíveis são:

• PASS: a mensagem passou na autenticaçãoSPF.

• FAIL: a mensagem não passou na autenticaçãoSPF.

• GRAY: não há política de SPF no domínio usadono comando MAIL FROM.

• PROCESSING_FAILED: há um problema queimpede o Amazon SES de verificar o registro doSPF. Por exemplo, há falhas nas consultas deDNS.

Objeto virusVerdict

O objeto virusVerdict tem os seguintes campos.

Nome do campo Descrição

status String que contém o resultado da verificação devírus. Os valores possíveis são:

• PASS: a mensagem não contêm vírus.• FAIL: a mensagem contém vírus.• GRAY: o Amazon SES verificou o e-mail, mas

não foi possível determinar com segurança secontém um vírus.

• PROCESSING_FAILED: o Amazon SES nãoconsegue verificar o conteúdo do e-mail. Porexemplo, o e-mail não é uma mensagem MIMEválida.

Objeto de e-mail

O objeto mail tem os seguintes campos.

237

Page 245: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

Nome do campo Descrição

destination

Uma lista completa de todos os endereços dedestinatários (incluindo os destinatários Para: eCc:) dos cabeçalhos MIME dos e-mails de entrada.

messageId String que contém o ID exclusivo atribuído ao e-mail pelo Amazon SES. Se o e-mail foi entregue aoAmazon S3, o ID da mensagem também é a chavede objeto do Amazon S3 que foi usada para gravara mensagem em seu bucket do Amazon S3.

source Sequência que contém o endereço de e-mail(especificamente o endereço MAIL FROM (E-MAILDE) do envelope) do qual o e-mail foi enviado.

timestamp String que contém o horário em que o e-mail foirecebido, no formato ISO8601.

headers Uma lista de cabeçalhos do Amazon SES e seuscabeçalhos personalizados. Cada cabeçalho temum campo name e um campo value.

commonHeaders (p. 238) Uma lista de cabeçalhos comuns a todos os e-mails. Cada cabeçalho na lista é composto de umnome e um valor.

headersTruncated String que especifica se os cabeçalhos foramtruncados na notificação, o que acontecerá seos cabeçalhos tiverem mais do que 10 KB. Ospossíveis valores são true e false.

Objeto commonHeaders

O objeto commonHeaders pode ter os campos mostrados na tabela a seguir. Os campos presentes nesteobjeto variam de acordo com quais campos estavam presentes no e-mail recebido.

Nome do campo Descrição

messageId O ID da mensagem original.

date A data e hora em que o Amazon SES recebeu amensagem.

to Os valores no cabeçalho To do e-mail.

cc Os valores no cabeçalho CC do e-mail.

bcc Os valores no cabeçalho BCC do e-mail.

from Os valores no cabeçalho From do e-mail.

sender Os valores no cabeçalho Sender do e-mail.

returnPath Os valores no cabeçalho Return-Path do e-mail.

reply-to Os valores no cabeçalho Reply-To do e-mail.

238

Page 246: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

Nome do campo Descrição

subject O valor do cabeçalho Subject do e-mail.

Exemplos de notificações para o recebimento de e-mails doAmazon SESEsta seção inclui exemplos dos seguintes tipos de notificações:

• Uma notificação enviada como resultado de uma ação do SNS. (p. 239)• Uma notificação enviada como resultado de outro tipo de ação (p. 241) (uma notificação de alerta).

Notificação de uma ação do SNS

Esta seção contém um exemplo de notificação de ação do SNS. Diferentemente da notificação de alertamostrada anteriormente, ela inclui uma seção content que contém o e-mail, que está geralmente noformato Multipurpose Internet Mail Extensions (MIME).

{"notificationType": "Received","receipt": {"timestamp": "2015-09-11T20:32:33.936Z","processingTimeMillis": 222,"recipients": [ "[email protected]"],"spamVerdict": { "status": "PASS"},"virusVerdict": { "status": "PASS"},"spfVerdict": { "status": "PASS"},"dkimVerdict": { "status": "PASS"},"action": { "type": "SNS", "topicArn": "arn:aws:sns:us-east-1:012345678912:example-topic"}},"mail": {"timestamp": "2015-09-11T20:32:33.936Z","source": "[email protected]","messageId": "d6iitobk75ur44p8kdnnp7g2n800","destination": [ "[email protected]"],"headersTruncated": false,"headers": [ { "name": "Return-Path", "value": "<0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com>" }, { "name": "Received",

239

Page 247: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

"value": "from a9-183.smtp-out.amazonses.com (a9-183.smtp-out.amazonses.com [54.240.9.183]) by inbound-smtp.us-east-1.amazonaws.com with SMTP id d6iitobk75ur44p8kdnnp7g2n800 for [email protected]; Fri, 11 Sep 2015 20:32:33 +0000 (UTC)" }, { "name": "DKIM-Signature", "value": "v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=ug7nbtf4gccmlpwj322ax3p6ow6yfsug; d=amazonses.com; t=1442003552; h=From:To:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Date:Message-ID:Feedback-ID; bh=DWr3IOmYWoXCA9ARqGC/UaODfghffiwFNRIb2Mckyt4=; b=p4ukUDSFqhqiub+zPR0DW1kp7oJZakrzupr6LBe6sUuvqpBkig56UzUwc29rFbJF hlX3Ov7DeYVNoN38stqwsF8ivcajXpQsXRC1cW9z8x875J041rClAjV7EGbLmudVpPX 4hHst1XPyX5wmgdHIhmUuh8oZKpVqGi6bHGzzf7g=" }, { "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Example subject" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "text/plain; charset=UTF-8" }, { "name": "Content-Transfer-Encoding", "value": "7bit" }, { "name": "Date", "value": "Fri, 11 Sep 2015 20:32:32 +0000" }, { "name": "Message-ID", "value": "<[email protected]>" }, { "name": "X-SES-Outgoing", "value": "2015.09.11-54.240.9.183" }, { "name": "Feedback-ID", "value": "1.us-east-1.Krv2FKpFdWV+KUYw3Qd6wcpPJ4Sv/pOPpEPSHn2u2o4=:AmazonSES" }],"commonHeaders": { "returnPath": "0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com", "from": [ "[email protected]" ], "date": "Fri, 11 Sep 2015 20:32:32 +0000", "to": [ "[email protected]" ],

240

Page 248: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

"messageId": "<[email protected]>", "subject": "Example subject"}},"content": "Return-Path: <[email protected]>\r\nReceived: from a9-183.smtp-out.amazonses.com (a9-183.smtp-out.amazonses.com [54.240.9.183])\r\n by inbound-smtp.us-east-1.amazonaws.com with SMTP id d6iitobk75ur44p8kdnnp7g2n800\r\n for [email protected];\r\n Fri, 11 Sep 2015 20:32:33 +0000 (UTC)\r\nDKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple;\r\n\ts=ug7nbtf4gccmlpwj322ax3p6ow6yfsug; d=amazonses.com; t=1442003552;\r\n\th=From:To:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Date:Message-ID:Feedback-ID;\r\n\tbh=DWr3IOmYWoXCA9ARqGC/UaODfghffiwFNRIb2Mckyt4=;\r\n\tb=p4ukUDSFqhqiub+zPR0DW1kp7oJZakrzupr6LBe6sUuvqpBkig56UzUwc29rFbJF\r\n\thlX3Ov7DeYVNoN38stqwsF8ivcajXpQsXRC1cW9z8x875J041rClAjV7EGbLmudVpPX\r\n\t4hHst1XPyX5wmgdHIhmUuh8oZKpVqGi6bHGzzf7g=\r\nFrom: [email protected]\r\nTo: [email protected]\r\nSubject: Example subject\r\nMIME-Version: 1.0\r\nContent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-Encoding: 7bit\r\nDate: Fri, 11 Sep 2015 20:32:32 +0000\r\nMessage-ID: <[email protected]>\r\nX-SES-Outgoing: 2015.09.11-54.240.9.183\r\nFeedback-ID: 1.us-east-1.Krv2FKpFdWV+KUYw3Qd6wcpPJ4Sv/pOPpEPSHn2u2o4=:AmazonSES\r\n\r\nExample content\r\n"}

Notificação de alertaEsta seção contém um exemplo de notificação do Amazon SNS que pode ser acionada por uma ação doS3. Notificações acionadas por ações do Lambda, ações de devolução e interrupção e ações do WorkMailsão semelhantes. Embora a notificação contenha informações sobre o e-mail, não apresenta o conteúdodo e-mail em si.

{"notificationType": "Received","receipt": {"timestamp": "2015-09-11T20:32:33.936Z","processingTimeMillis": 406,"recipients": [ "[email protected]"],"spamVerdict": { "status": "PASS"},"virusVerdict": { "status": "PASS"},"spfVerdict": { "status": "PASS"},"dkimVerdict": { "status": "PASS"},"action": { "type": "S3", "topicArn": "arn:aws:sns:us-east-1:012345678912:example-topic", "bucketName": "my-S3-bucket", "objectKey": "\email"}},"mail": {"timestamp": "2015-09-11T20:32:33.936Z","source": "0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com","messageId": "d6iitobk75ur44p8kdnnp7g2n800","destination": [ "[email protected]"],"headersTruncated": false,

241

Page 249: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

"headers": [ { "name": "Return-Path", "value": "<0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com>" }, { "name": "Received", "value": "from a9-183.smtp-out.amazonses.com (a9-183.smtp-out.amazonses.com [54.240.9.183]) by inbound-smtp.us-east-1.amazonaws.com with SMTP id d6iitobk75ur44p8kdnnp7g2n800 for [email protected]; Fri, 11 Sep 2015 20:32:33 +0000 (UTC)" }, { "name": "DKIM-Signature", "value": "v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=ug7nbtf4gccmlpwj322ax3p6ow6yfsug; d=amazonses.com; t=1442003552; h=From:To:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Date:Message-ID:Feedback-ID; bh=DWr3IOmYWoXCA9ARqGC/UaODfghffiwFNRIb2Mckyt4=; b=p4ukUDSFqhqiub+zPR0DW1kp7oJZakrzupr6LBe6sUuvqpBkig56UzUwc29rFbJF hlX3Ov7DeYVNoN38stqwsF8ivcajXpQsXRC1cW9z8x875J041rClAjV7EGbLmudVpPX 4hHst1XPyX5wmgdHIhmUuh8oZKpVqGi6bHGzzf7g=" }, { "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Example subject" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "text/plain; charset=UTF-8" }, { "name": "Content-Transfer-Encoding", "value": "7bit" }, { "name": "Date", "value": "Fri, 11 Sep 2015 20:32:32 +0000" }, { "name": "Message-ID", "value": "<[email protected]>" }, { "name": "X-SES-Outgoing", "value": "2015.09.11-54.240.9.183" }, { "name": "Feedback-ID", "value": "1.us-east-1.Krv2FKpFdWV+KUYw3Qd6wcpPJ4Sv/pOPpEPSHn2u2o4=:AmazonSES" }],"commonHeaders": { "returnPath": "0000014fbe1c09cf-7cb9f704-7531-4e53-89a1-5fa9744f5eb6-000000@amazonses.com",

242

Page 250: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso de notificações

"from": [ "[email protected]" ], "date": "Fri, 11 Sep 2015 20:32:32 +0000", "to": [ "[email protected]" ], "messageId": "<[email protected]>", "subject": "Example subject"}}}

243

Page 251: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciamento de conjuntos de configurações

Usar conjuntos de configurações doAmazon SES

Conjuntos de configuração são grupos de regras que você pode aplicar aos e-mails que envia usando oAmazon SES. Você aplica um conjunto de configuração a um e-mail, incluindo uma referência ao conjuntode configurações nos cabeçalhos do e-mail. Ao aplicar um conjunto de configurações a um e-mail, todasas regras nesse conjunto de configurações são aplicadas ao e-mail. Para obter mais informações sobrecomo especificar conjuntos de configurações em seus e-mails, consulte Especificação de um conjunto deconfigurações ao enviar e-mail (p. 249).

Você pode usar conjuntos de configurações para aplicar os seguintes tipos de regras aos seus e-mails:

• Publicação de eventos – O Amazon SES pode acompanhar o número de eventos de envio, entrega,abertura, clique, devolução e reclamação para cada e-mail que você envia. Você pode usar a publicaçãode eventos para enviar informações sobre esses eventos a outros serviços da AWS. Por exemplo, vocêpode enviar suas métricas de e-mail para um destino do Amazon Kinesis Data Firehose e, em seguida,analisá-las usando o Amazon Kinesis Data Analytics. Como alternativa, é possível enviar informações dedevolução e reclamação ao Amazon SNS e receber notificações imediatamente quando esses eventosocorrerem.

• Gerenciamento do grupo de IP – Se você alugar endereços IP dedicados para uso com o Amazon SES,poderá criar grupos desses endereços, chamados de grupos de IP dedicados. Em seguida, você podeassociar esses grupos de IP dedicados aos conjuntos de configurações. Um caso de uso comum é criarum grupo de endereços IP dedicados para o envio de comunicações de marketing e outro para enviare-mails transacionais. Sua reputação de remetente para e-mails transacionais é, então, isolada daquelados seus e-mails de marketing.

Conjuntos de configurações podem conter um, ambos ou nenhum desses tipos de regras.

Para saber mais sobre como gerenciar conjuntos de configurações e seus componentes relacionados,consulte os seguintes tópicos:

• Gerenciamento de conjuntos de configurações do Amazon SES (p. 244)• Gerenciamento de destinos de eventos do Amazon SES (p. 247)• Gerenciamento de grupos de IP (p. 248)

Gerenciamento de conjuntos de configurações doAmazon SES

Esta seção contém os procedimentos para criar conjuntos de configurações, visualizar uma lista de seusconjuntos de configurações existentes, visualizar os detalhes de conjuntos de configurações individuais eexcluir conjuntos de configurações.

Criar um conjunto de configuraçõesVocê pode usar o console do Amazon SES ou a API CreateConfigurationSet para criar conjuntos deconfigurações.

244

Page 252: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExibição de uma lista dos seus conjuntos de configurações

Para criar um conjunto de configurações usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, escolha Configuration Sets.3. Escolha Create Configuration Set.4. Para Configuration set name (Nome do conjunto de configurações), digite um nome para o conjunto de

configurações.Note

O nome pode conter até 64 caracteres alfanuméricos. Ele também podem conter hífens (-)e sublinhados (_). Os nomes não podem conter espaços, caracteres acentuados ou outroscaracteres especiais.

Também é possível usar a API CreateConfigurationSet para criar conjuntos de configurações. Umamaneira comum para chamar essa API é usando a AWS CLI.

Para criar um conjunto de configurações usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

aws ses create-configuration-set --configuration-set Name=ConfigSet

No comando anterior, substitua ConfigSet pelo nome que desejar dar ao conjunto de configurações.Note

O nome pode conter até 64 caracteres alfanuméricos. Ele também podem conter hífens (-)e sublinhados (_). Os nomes não podem conter espaços, caracteres acentuados ou outroscaracteres especiais.

Para obter mais informações sobre como usar a API CreateConfigurationSet para criar conjuntos deconfigurações, consulte o Amazon Simple Email Service API Reference.

Exibição de uma lista dos seus conjuntos deconfiguraçõesUse o console do Amazon SES ou a API ListConfigurationSets para exibir uma lista dos seusconjuntos de configurações.

Para visualizar seus conjuntos de configurações usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.

No painel de detalhes, você verá uma lista dos seus conjuntos de configurações.

Também é possível usar a API ListConfigurationSets para visualizar uma lista de conjuntos deconfigurações. Uma maneira comum para chamar essa API é usando a AWS CLI.

Para visualizar uma lista de conjuntos de configurações usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

245

Page 253: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExibição dos detalhes de um conjunto de configurações

aws ses list-configuration-sets

Para obter mais informações sobre como usar a API ListConfigurationSets para listar os conjuntosde configurações, consulte Amazon Simple Email Service API Reference.

Exibição dos detalhes de um conjunto deconfiguraçõesUse o console do Amazon SES para exibir os detalhes de um conjunto de configurações ou use a APIDescribeConfigurationSet para descrever um conjunto de configurações.

Exibição dos detalhes de um conjunto de configurações usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. No painel de detalhes, escolha o ícone de expansão ao lado do conjunto de configurações.

Você verá os detalhes do conjunto de configurações.

Também é possível usar a API DescribeConfigurationSet para mostrar mais informações sobre umconjunto de configurações. Uma maneira comum para chamar essa API é usando a AWS CLI.

Para obter mais informações sobre um conjunto de configurações usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

aws ses describe-configuration-set --configuration-set-name ConfigSet

No comando anterior, substitua ConfigSet pelo nome que do conjunto de configurações sobre o qualdeseja saber mais.

Para obter informações sobre como usar a API DescribeConfigurationSet para descrever umconjunto de configurações, consulte Amazon Simple Email Service API Reference.

Exclusão de um conjunto de configuraçõesUse o console do Amazon SES ou a API DeleteConfigurationSet para excluir um conjunto deconfigurações.

Para excluir um conjunto de configurações usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. No painel de detalhes, escolha o conjunto de configurações.4. No menu Actions, escolha Delete e, em seguida, confirme que deseja excluir o conjunto de

configurações.

246

Page 254: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorGerenciamento de destinos de eventos

Também é possível usar a API DeleteConfigurationSet para excluir conjuntos de configurações.Uma maneira comum para chamar essa API é usando a AWS CLI.

Para excluir um conjunto de configurações usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

aws ses delete-configuration-set --configuration-set ConfigSet

No comando anterior, substitua ConfigSet pelo nome do conjunto de configurações que desejaexcluir.

Para obter mais informações sobre como usar a API DeleteConfigurationSet para excluir umconjunto de configurações, consulte Amazon Simple Email Service API Reference.

Gerenciamento de destinos de eventos do AmazonSES

Os destinos de eventos permitem que você publique métricas de envio de e-mail – incluindo o númerode envios, entregas, aberturas, cliques, devoluções e reclamações – para outros produtos da AWS. Parasaber mais sobre a configuração de publicação de eventos, consulte the section called “Monitoramentousando publicação de eventos” (p. 282).

Atualização de um destino de eventoUse o console do Amazon SES ou a API UpdateConfigurationSetEventDestination para atualizarum destino de evento.

Para atualizar um destino de evento (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. Na lista de conjuntos de configurações, selecione aquele que contém o destino do evento que você

deseja atualizar.4. Na lista Destination (Destino), à direita do destino que você deseja editar, selecione o ícone edit

(editar) ( ).5. Edite os detalhes de destino do evento e, em seguida, escolha Save.6. Para sair da página Edit Configuration Set, use o botão Voltar do navegador.

Para obter informações sobre como usar a API UpdateConfigurationSetEventDestination paraatualizar um destino de evento, consulte Amazon Simple Email Service API Reference.

Exclusão de um destino de eventoUse o console do Amazon SES ou a API DeleteConfigurationSetEventDestination para excluirum destino de evento.

247

Page 255: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorHabilitar ou desabilitar um destino de evento

Para excluir um destino de evento (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. Na lista de conjuntos de configurações, selecione aquele que contém o destino do evento que você

deseja excluir.4. Na lista Destination (Destino), selecione o ícone delete (excluir) ( ).5. Confirme se você deseja excluir o conjunto de configurações.6. Para sair da página Edit Configuration Set, use o botão Voltar do navegador.

Para obter informações sobre como usar a API DeleteConfigurationSetEventDestination paraexcluir um destino de evento, consulte Amazon Simple Email Service API Reference.

Habilitar ou desabilitar um destino de eventoUse o console do Amazon SES ou a API UpdateConfigurationSetEventDestination para habilitarou desabilitar um destino de evento.

Para habilitar ou desabilitar um destino de evento (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. Na lista de conjuntos de configurações, selecione aquele que contém o destino do evento que você

deseja habilitar ou desabilitar.4. Na lista Destination, à direita do destino que você deseja editar, escolha o ícone de edição (o lápis).5. Marque ou desmarque Enabled e, em seguida, selecione Save.6. Para sair da página Edit Configuration Set, use o botão Voltar do navegador.

Para obter informações sobre como usar a API UpdateConfigurationSetEventDestination parahabilitar ou desabilitar um destino de evento, consulte Amazon Simple Email Service API Reference.

Gerenciamento de grupos de IPVocê pode usar grupos de IPs para criar grupos de endereços IP dedicados para enviar tipos específicosde e-mail. Você também pode usar um conjunto de endereços IP compartilhados por todos os clientes doAmazon SES.

Atribuição de um grupo de IPs a um conjunto deconfigurações existentesVocê pode usar o console do Amazon SES para associar um grupo de IPs a um conjunto de configuraçõesexistente.

Para atribuir um grupo de IPs a um conjunto de configurações

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

248

Page 256: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorModificação de atribuições de grupo de IPs

2. No painel de navegação à esquerda, escolha Configuration Sets.3. Na lista de conjuntos de configurações, escolha o conjunto de configurações que você deseja associar

a um grupo de IPs.4. Na guia Sending IP pool, em Pool name, escolha uma das seguintes opções:

• Um grupo de IPs dedicados específico – ao selecionar um grupo de IPs dedicados, os e-mails queusam o conjunto de configurações são enviados usando apenas os endereços IP dedicados quepertencem a esse grupo. Para procedimentos de criação de novos grupos de IP, consulte Criargrupos de IP dedicados (p. 185).

• ses-default-dedicated-pool – este grupo contém todos os endereços IP dedicados para a sua contaque ainda não pertencem a um grupo de IPs. Se você enviar um e-mail usando um conjunto deconfigurações que não está associado a um grupo, ou se enviar um e-mail sem especificar umconjunto de configurações, o e-mail será enviado de um dos endereços do grupo padrão.

• ses-shared-pool – este grupo contém um grande conjunto de endereços IP que são compartilhadosentre todos os clientes do Amazon SES. Esta opção pode ser útil quando você precisa enviar e-mails que não estão alinhados aos seus comportamentos de envio habituais.

Quando terminar, escolha Assign.

Modificação de atribuições de grupo de IPsVocê também pode usar o console do Amazon SES para atribuir um grupo diferente a um conjuntode configurações que já está associado a um grupo. Atribuir um grupo diferente a um conjunto deconfigurações substitui a associação anterior.

Para editar uma atribuição de grupo de IPs

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. Na lista de conjuntos de configurações, escolha o conjunto de configurações que você deseja

modificar.4. Na guia Sending IP pool (Grupo de IPs de envio), em Assign an IP pool (Atribuir um grupo de IPs),

selecione o ícone edit (editar) ( ).5. Para Pool name, selecione o grupo que você quer usar e escolha Assign.

Especificação de um conjunto de configurações aoenviar e-mail

Para usar um conjunto de configurações ao enviar um e-mail, você deverá colocar o nome do conjuntode configurações nos cabeçalhos do e-mail. Todos os métodos de envio de e-mail do Amazon SES —incluindo a AWS CLI, os SDKs da AWS e a interface SMTP do Amazon SES (p. 80) — permitem que vocêtransmita um conjunto de configurações nos cabeçalhos de e-mail que enviar.

Se você estiver usando a interface SMTP (p. 80) ou a SendRawEmailoperação de API, poderá especificarum conjunto de configurações ao incluir o cabeçalho a seguir no seu e-mail (substituindo ConfigSet pelonome do conjunto de configurações que deseja usar):

X-SES-CONFIGURATION-SET: ConfigSet

249

Page 257: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExportação de métricas de reputação

Este guia inclui exemplos de código para enviar e-mails usando Postfix, os SDKs da AWS e a interfaceSMTP do Amazon SES. Cada um desses exemplos inclui um método para especificar um conjunto deconfigurações. Para ver procedimentos passo a passo para envio de e-mails que incluem referências aconjuntos de configurações, consulte o seguinte:

• Integração do Amazon SES com o Postfix (p. 92)• Enviar um e-mail por meio do Amazon SES usando um SDK da AWS (p. 30)• Enviar um e-mail por meio do Amazon SES usando SMTP (p. 19)

Você pode encontrar exemplos de código adicionais na seção Amazon SES Exemplos decódigo (p. 409).

Exportação de métricas de reputação para umconjunto de configurações do CloudWatch

O Amazon SES exporta automaticamente informações sobre os índices gerais de devolução ereclamações de toda a sua conta para o Amazon CloudWatch. Você pode usar essas métricas para criaralarmes no CloudWatch ou para pausar automaticamente o envio de e-mails usando uma função doLambda.

Você também pode exportar as métricas de reputação em conjuntos de configuração individuais para oCloudWatch. A exportação dos dados de reputação no nível do conjunto de configuração dá a você maiscontrole sobre sua reputação de remetente.

Esta seção inclui os procedimentos para exportar os dados de reputação em conjuntos de configuraçãoindividuais para o CloudWatch usando a API do Amazon SES.

Habilitar a exportação de métricas de reputação emum conjunto de configuraçõesPara começar a exportar as métricas de reputação em um conjunto de configurações, use a operação daAPI UpdateConfigurationSetReputationMetricsEnabled. Para acessar a API do Amazon SES,recomendamos usar a AWS CLI ou um dos SDKs da AWS.

Durante esse procedimento, presume-se que a AWS CLI esteja instalada e configurada corretamente emseu computador. Para obter mais informações sobre a instalação e a configuração da AWS CLI, consulte oGuia do usuário da AWS Command Line Interface.

Para habilitar a exportação de métricas de reputação em um conjunto de configurações

• Na linha de comando, digite o seguinte comando: aws ses update-configuration-set-reputation-metrics-enabled --configuration-set-name ConfigSet --enabled

Substitua ConfigSet no comando anterior pelo nome do conjunto de configurações no qual vocêdeseja começar a exportar as métricas de reputação.

Desabilitar a exportação de métricas de reputação emum conjunto de configuraçõesVocê pode usar a operação da API UpdateConfigurationSetReputationMetricsEnabled paradesabilitar a exportação das métricas de reputação em um conjunto de configurações.

250

Page 258: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorDesabilitar a exportação de métricas de

reputação em um conjunto de configurações

Para desabilitar a exportação de métricas de reputação em um conjunto de configurações

• Na linha de comando, digite o seguinte comando: aws ses update-configuration-set-reputation-metrics-enabled --configuration-set-name ConfigSet --no-enabled

Substitua ConfigSet no comando anterior pelo nome do conjunto de configurações no qual vocêdeseja desabilitar a exportação das métricas de reputação.

251

Page 259: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Monitoramento da atividade de enviodo Amazon SES

O Amazon SES fornece métodos para monitorar sua atividade de envio. Recomendamos que vocêimplemente esses métodos para que possa manter o controle de medidas importantes, como as taxas dedevolução, reclamação e rejeição da sua conta. Taxas de devolução e reclamação excessivamente altaspodem prejudicar sua capacidade de enviar e-mails usando o Amazon SES.

Você também pode usar esses métodos para medir as taxas em que seus clientes interagem com os e-mails enviados. Por exemplo, essas métricas de envio podem ajudar você a identificar suas taxas geraisde abertura e clique.

As métricas que você pode medir usando o Amazon SES são chamadas de eventos de envio de e-mail.Os eventos de envio de e-mail que você pode monitorar são:

• Sends (Envios) – a chamada para o Amazon SES foi bem-sucedida, e o Amazon SES tentará entregar oe-mail.

• Rejects (Rejeições) – o Amazon SES aceitou o e-mail, determinou que ele continha vírus e o rejeitou. OAmazon SES não tentou entregar o e-mail ao servidor de e-mail do destinatário.

• Bounces (Devoluções) – o servidor de e-mail do destinatário rejeitou definitivamente o e-mail. Esteevento corresponde a hard bounces. Devoluções flexíveis só são incluídas quando o Amazon SES deixade entregar o e-mail depois de tentar novamente por um período.

• Complaints (Reclamações) – o e-mail foi entregue com êxito ao destinatário. O destinatário marcou o e-mail como spam.

• Deliveries (Entregas) – o Amazon SES entregou com êxito o e-mail ao servidor de e-mail do destinatário.• Opens (Aberturas) – o destinatário recebeu a mensagem e a abriu no cliente de e-mail.• Clicks (Cliques) – o destinatário clicou em um ou mais links no e-mail.• Rendering Failures (Falhas de renderização) – o e-mail não foi enviado devido a um problema de

renderização do modelo. Esse tipo de evento só ocorre quando você envia e-mail usando as operaçõesde API SendTemplatedEmail ou SendBulkTemplatedEmail. Esse tipo de evento pode ocorrer quandoestão faltando dados no modelo ou quando há uma incompatibilidade entre os parâmetros e os dadosdo modelo.

Você pode monitorar eventos de envio de e-mail de várias maneiras. O método escolhido depende do tipode evento que você deseja monitorar, da granularidade e do nível de detalhes com que deseja monitorá-lo e do local onde você deseja que o Amazon SES publique os dados. Você precisa usar notificaçõesde comentários ou a publicação de eventos para rastrear eventos de devolução e de reclamação. Vocêtambém pode optar por usar vários métodos de monitoramento. As características de cada método sãolistadas na tabela a seguir.

Método demonitoramento

Eventos que vocêpode monitorar

Como acessar osdados

Nível de detalhe Granularidade

Console AmazonSES

Entregas erejeições

Página deestatísticas deenvio (p. 254)no console doAmazon SES

Somente paracontagem

Em toda a contada AWS

252

Page 260: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Método demonitoramento

Eventos que vocêpode monitorar

Como acessar osdados

Nível de detalhe Granularidade

Console AmazonSES

Taxas dedevoluções ereclamações

Página dopainel dereputação (p. 360)no console doAmazon SES

Somente parataxas calculadas

Em toda a contada AWS

API do AmazonSES

Entregas,devoluções,reclamações erejeições

GetSendStatisticsOperação de API

Somente paracontagem

Em toda a contada AWS

Console AmazonCloudWatch

Envios, entregas,aberturas, cliques,devoluções,reclamações erejeições

ConsoleCloudWatch

Note

AlgumasmétricasnãoaparecerãonoCloudWatchenquantoo eventoassociadonãoocorrer.Porexemplo,asmétricasdedevoluçãonãoaparecemnoCloudWatchenquantopelomenosum e-mailenviadopor vocênão fordevolvido.

Somente paracontagem

Em toda a contada AWS

Notificações defeedback

Entregas,devoluções ereclamações

Notificaçãodo AmazonSNS (entregas,devoluções ereclamações) ou e-mail (devoluçõese reclamaçõesapenas)

Detalhes sobrecada evento

Em toda a contada AWS

253

Page 261: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorMonitoramento com o uso do console

Método demonitoramento

Eventos que vocêpode monitorar

Como acessar osdados

Nível de detalhe Granularidade

Publicação deevento

Envios, entregas,aberturas, cliques,devoluções,reclamações,rejeições e falhasde renderização.

AmazonCloudWatch ouAmazon KinesisData Firehose, oupor notificação doAmazon SNS

Detalhes sobrecada evento

Minucioso(com base nascaracterísticas dee-mail definidaspelo usuário)

Note

As métricas avaliadas por eventos de envio de e-mail podem não se alinhar perfeitamente comsuas cotas de envio. Essa discrepância pode ser causada por devoluções e rejeições de e-mail,ou usando o simulador de caixa de entrada do Amazon SES. Para saber se você está próximo deatingir suas cotas de envio, consulte Monitorar as cotas de envio (p. 149).

Para obter informações sobre como usar cada método de monitoramento, consulte os seguintes tópicos:• Monitoramento de suas estatísticas de envio com o uso do console do Amazon SES (p. 254)• Monitoramento de suas estatísticas de uso usando a API do Amazon SES (p. 254)• Monitoramento com o uso de notificações do Amazon SES (p. 258)• Monitoramento usando publicação de eventos do Amazon SES (p. 282)

Monitoramento de suas estatísticas de envio com ouso do console do Amazon SES

Você pode monitorar o número de e-mails entregues de sua conta, bem como o número de mensagensque foram rejeitadas, diretamente no console do Amazon SES. Os índices de entrega e rejeição em suaconta são exibidos na página Estatísticas de envio.

Você encontra informações sobre devoluções e reclamações no Painel de reputação. Para obter maisinformações, consulte Monitoramento da sua reputação do remetente do Amazon SES (p. 360).

Para visualizar as métricas de entrega e rejeição

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, escolha Sending Statistics. Suas estatísticas de uso são mostradas em YourAmazon SES Metrics (Suas métricas do Amazon SES).

3. Para visualizar os dados de tendências para cada métrica, clique duas vezes no gráficocorrespondente. Quando você clica duas vezes em um gráfico, também pode alterar o período deanálise.

Monitoramento de suas estatísticas de uso usandoa API do Amazon SES

A API do Amazon SES fornece a operação GetSendStatistics, que retorna informações sobre seu usodo serviço. Recomendamos que você verifique regularmente suas estatísticas de envio, para que possafazer ajustes, se necessário.

254

Page 262: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorChamada da operação da API

GetSendStatistics usando a AWS CLI

Quando você chama a operação GetSendStatistics, recebe uma lista de pontos de dados querepresenta as duas últimas semanas de sua atividade de envio. Cada ponto de dados na lista representa15 minutos de atividade e contém as seguintes informações desse período:

• O número de devoluções definitivas• O número de reclamações• O número de tentativas de entrega (corresponde ao número de e-mails que você enviou)• O número de tentativas de envio rejeitadas• Um carimbo de data e hora do período de análise

Para obter uma descrição completa da operação GetSendStatistics, consulte o Amazon Simple EmailService API Reference.

Nesta seção, você encontrará os seguintes tópicos:

• the section called “Chamada da operação da API GetSendStatistics usando a AWS CLI” (p. 255)• the section called “Chamada programática da operação GetSendStatistics” (p. 255)

Chamada da operação da API GetSendStatisticsusando a AWS CLIA maneira mais fácil de chamar a operação da API GetSendStatistics é usar a AWS Command LineInterface (AWS CLI).

Para chamar a operação da API GetSendStatistics usando a AWS CLI

1. Se você ainda não tiver feito isso, instale a AWS CLI. Para obter mais informações, consulte "Instalara AWS Command Line Interface no Guia do usuário da AWS Command Line Interface.

2. Se você ainda não tiver feito isso, configure a AWS CLI para usar suas credenciais da AWS. Paraobter mais informações, consulte "Configurar a AWS CLI" no Guia do usuário da AWS Command LineInterface.

3. Na linha de comando, digite aws ses get-send-statistics

Se a AWS CLI estiver configurada corretamente, você verá uma lista de estatísticas de envio noformato JSON. Cada objeto JSON inclui estatísticas de envio agregadas para um período de 15minutos.

Chamada programática da operaçãoGetSendStatisticsVocê também pode chamar a operação GetSendStatistics usando os SDKs da AWS. Esta seçãoinclui exemplos de código para os SDKs da AWS para Go, PHP, Python e Ruby. Escolha um dosseguintes links para visualizar exemplos de código da linguagem:

• Exemplo de código do AWS SDK para Go (p. 256)• Exemplo de código do AWS SDK para PHP (p. 257)• Exemplo de código do AWS SDK for Python (Boto) (p. 257)• Exemplo de código do AWS SDK para Ruby (p. 257)

255

Page 263: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorChamada programática da operação GetSendStatistics

Note

Esses exemplos de código presumem que você criou um arquivo de credenciais compartilhadasda AWS que contém seu ID da chave de acesso da AWS, a chave de acesso secreta da AWS ea região da AWS de sua preferência. Para obter mais informações, consulte Criar um arquivo decredenciais compartilhadas (p. 30).

Chamada de GetSendStatistics usando o AWS SDK paraGo

package main import ( "fmt" //go get github.com/aws/aws-sdk-go/... "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ses" "github.com/aws/aws-sdk-go/aws/awserr") const ( // Replace us-west-2 with the AWS Region you're using for Amazon SES. AwsRegion = "us-west-2") func main() { // Create a new session and specify an AWS Region. sess, err := session.NewSession(&aws.Config{ Region:aws.String(AwsRegion)}, ) // Create an SES client in the session. svc := ses.New(sess) input := &ses.GetSendStatisticsInput{} result, err := svc.GetSendStatistics(input) // Display error messages if they occur. if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { default: fmt.Println(aerr.Error()) } } else { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) } return } fmt.Println(result)}

256

Page 264: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorChamada programática da operação GetSendStatistics

Chamada de GetSendStatistics usando o AWS SDK paraPHP<?php

// Replace path_to_sdk_inclusion with the path to the SDK as described in // http://docs.aws.amazon.com/aws-sdk-php/v3/guide/getting-started/basic-usage.htmldefine('REQUIRED_FILE','path_to_sdk_inclusion'); // Replace us-west-2 with the AWS Region you're using for Amazon SES.define('REGION','us-west-2');

require REQUIRED_FILE;

use Aws\Ses\SesClient;

$client = SesClient::factory(array( 'version'=> 'latest', 'region' => REGION));

try { $result = $client->getSendStatistics([]); echo($result);} catch (Exception $e) { echo($e->getMessage()."\n");}

?>

Chamada de GetSendStatistics usando o AWS SDK forPython (Boto)import boto3 #pip install boto3import jsonfrom botocore.exceptions import ClientError

client = boto3.client('ses')

try: response = client.get_send_statistics()except ClientError as e: print(e.response['Error']['Message'])else: print(json.dumps(response, indent=4, sort_keys=True, default=str))

Chamada de GetSendStatistics usando o AWS SDK paraRubyrequire 'aws-sdk' # gem install aws-sdkrequire 'json'

# Replace us-west-2 with the AWS Region you're using for Amazon SES.awsregion = "us-west-2"

# Create a new SES resource and specify a regionses = Aws::SES::Client.new(region: awsregion)

257

Page 265: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorMonitoramento com uso de notificações

begin

resp = ses.get_send_statistics({ }) puts JSON.pretty_generate(resp.to_h)

# If something goes wrong, display an error message.rescue Aws::SES::Errors::ServiceError => error puts error

end

Monitoramento com o uso de notificações doAmazon SES

Para enviar e-mails usando o Amazon SES, é necessário ter um sistema em vigor para gerenciardevoluções e reclamações. O Amazon SES pode notificá-lo sobre eventos de devolução ou reclamaçãode três formas: enviando um e-mail de notificação, notificando um tópico do Amazon SNS ou publicandoeventos de envio. Esta seção contém informações sobre como configurar o Amazon SES para enviardeterminados tipos de notificações por e-mail ou notificando um tópico do Amazon SNS. Para obter maisinformações sobre como publicar eventos de envio, consulte Monitoramento usando publicação de eventosdo Amazon SES (p. 282).

Você pode configurar notificações usando o console do Amazon SES ou a API do Amazon SES.

Tópicos• Considerações importantes (p. 258)• Notificações do Amazon SES via e-mail (p. 259)• Notificações do Amazon SES por meio do Amazon SNS (p. 261)

Considerações importantesHá vários pontos importantes a serem considerados ao configurar o Amazon SES para enviar notificações:

• E-mail e notificações do Amazon SNS se aplicam a identidades individuais (os endereços de e-mailou domínios verificados que você usa para enviar e-mail). Quando você habilita notificações para umaidentidade, o Amazon SES envia somente notificações para e-mails enviados dessa identidade, eapenas na região da AWS na qual você configurou notificações.

• Você precisa habilitar um método para recebimento de notificações de devolução ou de reclamação.Você pode enviar notificações para o domínio ou endereço de e-mail que gerou a devoluçãoou a reclamação ou para um tópico do Amazon SNS. Você também pode usar a publicação deeventos (p. 282) para enviar notificações sobre vários tipos diferentes de eventos (incluindodevoluções, reclamações, entregas e muito mais) para um tópico do Amazon SNS ou para um fluxo doKinesis Data Firehose.

Se você não configurar um desses métodos de recebimento de notificações de devolução ou dereclamação, o Amazon SES encaminhará automaticamente as notificações de devolução e dereclamação para o endereço Return-Path (Caminho de devolução) (ou para o endereço de origem, sevocê não especificar um endereço de Return-Path) no e-mail que resultou no evento de devolução ou dereclamação, mesmo que você tenha desabilitado o encaminhamento de comentários de e-mail.

Se desabilitar o encaminhamento de comentários de e-mail e habitar a publicação de eventos, vocêdeverá aplicar o conjunto de configurações que contém a regra de publicação de eventos para todos

258

Page 266: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações via e-mail

os e-mails que envia. Nessa situação, se você não usar o conjunto de configurações, o Amazon SESencaminhará automaticamente notificações de devolução e de reclamação para o Return-Path ou para oendereço de origem que resultaram no evento de devolução ou de reclamação.

• Se você configurar o Amazon SES para enviar eventos de devolução e de reclamação usando mais deum método (por exemplo, enviando notificações por e-mail e usando eventos de envio), você poderáreceber mais de uma notificação para o mesmo evento.

Notificações do Amazon SES via e-mailO Amazon SES pode enviar e-mail quando você recebe devoluções e reclamações usando um processochamado encaminhamento de comentários de e-mail.

Para enviar e-mails usando o Amazon SES, você deve configurá-lo para enviar notificações de devoluçãoe de reclamação usando um dos seguintes métodos:

• Habilitando o encaminhamento de comentários de e-mail. O procedimento para configurar esse tipo denotificação está incluído nesta seção.

• Enviando notificações a um tópico do Amazon SNS. Para obter mais informações, consulte Notificaçõesdo Amazon SES por meio do Amazon SNS (p. 261).

• Publicando notificações de eventos. Para obter mais informações, consulte Monitoramento usandopublicação de eventos do Amazon SES (p. 282).

Important

Para vários pontos importantes sobre notificações, consulte Monitoramento com o uso denotificações do Amazon SES (p. 258).

Tópicos• Habilitar o encaminhamento de feedback de e-mail (p. 259)• Desabilitar o encaminhamento de feedback de e-mail (p. 260)• Destino do encaminhamento de feedback de e-mail (p. 261)

Habilitar o encaminhamento de feedback de e-mailO encaminhamento de feedback de e-mail está habilitado por padrão. Se você o tiver desabilitadoanteriormente, poderá habilitá-lo seguindo os procedimentos nesta seção.

Para habilitar o encaminhamento de devoluções e reclamações por e-mail usando o console doAmazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, em Identity Management, escolha Email Addresses se você desejaconfigurar notificações de devolução e reclamação para um endereço de e-mail ou escolha Domainsse deseja configurar notificações de devolução e reclamação para um domínio.

3. Na lista de endereços de e-mail ou domínios verificados, escolha o endereço de e-mail ou o domíniopara o qual você deseja configurar notificações de devolução e de reclamação.

4. No painel de detalhes, expanda a seção Notifications.5. Escolha Edit Configuration.6. Em Email Feedback Forwarding, escolha Enabled.

259

Page 267: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações via e-mail

Note

As alterações feitas nesta página podem demorar alguns minutos para entrar em vigor.

Você também pode habilitar notificações de devolução e reclamação por e-mail usando a operação da API SetIdentityFeedbackForwardingEnabled.

Desabilitar o encaminhamento de feedback de e-mailSe você configurar um método diferente para fornecer notificações de devolução e de reclamação, vocêpoderá desabilitar o encaminhamento de comentários de e-mail para não receber várias notificaçõesquando ocorre um evento de devolução ou de reclamação.

Para desabilitar o encaminhamento de devoluções e reclamações por e-mail usando o console doAmazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, em Identity Management, escolha Email Addresses se você desejaconfigurar notificações de devolução e reclamação para um endereço de e-mail ou escolha Domainsse deseja configurar notificações de devolução e reclamação para um domínio.

3. Na lista de endereços de e-mail ou domínios verificados, escolha o endereço de e-mail ou o domíniopara o qual você deseja configurar notificações de devolução e de reclamação.

4. No painel de detalhes, expanda a seção Notifications.5. Escolha Edit Configuration.6. Em Email Feedback Forwarding, escolha Disabled.

Note

Você deve configurar um método para receber notificações de devolução e de reclamaçãopara enviar e-mail por meio do Amazon SES. Ao desabilitar o encaminhamento decomentários de e-mail, você deverá habilitar notificações enviadas pelo Amazon SNS oupublicar eventos de devolução e de reclamação em um tópico do Amazon SNS ou emum fluxo do Kinesis Data Firehose usando a publicação de eventos (p. 282). Se usara publicação de eventos, você também deverá aplicar o conjunto de configurações quecontém a regra de publicação de eventos para cada e-mail que envia. Se você não configurarum método para receber notificações de devolução e de reclamação, o Amazon SESencaminhará automaticamente as notificações de comentários por e-mail para o endereço nocampo Return-Path (Caminho de devolução) (ou para o campo Source (Origem), se você nãoespecificar um endereço de Return-Path) da mensagem que resultou no evento de devoluçãoou de reclamação. Nessa situação, o Amazon SES encaminha as notificações de devoluçãoe de reclamação, mesmo que você tenha desabilitado as notificações de comentários por e-mail.

7. Escolha Save Config para salvar sua configuração de notificação.

Note

As alterações feitas nessa página podem demorar alguns minutos para entrar em vigor.

Você também pode desabilitar notificações de devolução e reclamação por e-mail usando a operação daAPI SetIdentityFeedbackForwardingEnabled.

260

Page 268: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Destino do encaminhamento de feedback de e-mailQuando você recebe notificações por e-mail, o Amazon SES reescreve o cabeçalho From e envia anotificação para você. O endereço para o qual o Amazon SES encaminha a notificação depende de comovocê enviou a mensagem original.

Se você usou a interface SMTP para enviar a mensagem, as notificações são enviadas ao endereçoespecificado no comando MAIL FROM.

Se você usou a operação de API SendEmail para enviar a mensagem, as notificações são entregues deacordo com as seguintes regras:

• Se você especificou o parâmetro opcional ReturnPath na chamada para a API SendEmail, asnotificações são enviadas para esse endereço.

• Caso contrário, as notificações são enviadas para o endereço especificado no parâmetro obrigatórioSource de SendEmail.

Se você usou a operação de API SendRawEmail para enviar a mensagem, as notificações são entreguesde acordo com as seguintes regras:

• Se você especificou um parâmetro Source na chamada para a API SendRawEmail, as notificações sãoenviadas para esse endereço. Isso é válido mesmo se um cabeçalho Return-Path foi especificado nocorpo do e-mail.

• Caso contrário, se você especificou um cabeçalho Return-Path na mensagem bruta, as notificaçõessão enviadas para esse endereço.

• Caso contrário, as notificações são enviadas para o endereço do cabeçalho From da mensagem bruta.

Note

Ao especificar um endereço Return-Path em um e-mail, você recebe notificações nesseendereço. No entanto, a versão da mensagem que o destinatário recebe contém um cabeçalhoReturn-Path que inclui um endereço de e-mail anonimizado (como a0b1c2d3e4f5a6b7-c8d9e0f1-a2b3-c4d5-e6f7-a8b9c0d1e2f3-000000@amazonses.com). Essa anonimizaçãoacontece independentemente de como o e-mail foi enviado.

Notificações do Amazon SES por meio do AmazonSNSVocê pode configurar o Amazon SES para notificar um tópico do Amazon SNS ao receber devoluçõesou reclamações, ou quando os e-mails são entregues. As notificações do Amazon SNS estão no formatoJavaScript Object Notation (JSON), o que permite processá-las de forma programática.

Para enviar e-mails usando o Amazon SES, você deve configurá-lo para enviar notificações de devoluçãoe de reclamação usando um dos seguintes métodos:

• Enviando notificações a um tópico do Amazon SNS. O procedimento para configurar esse tipo denotificação está incluído nesta seção.

• Habilitando o encaminhamento de comentários de e-mail. Para obter mais informações, consulteNotificações do Amazon SES via e-mail (p. 259).

• Publicando notificações de eventos. Para obter mais informações, consulte Monitoramento usandopublicação de eventos do Amazon SES (p. 282).

261

Page 269: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Important

Consulte Monitoramento com o uso de notificações do Amazon SES (p. 258) para obterinformações importantes sobre notificações.

Tópicos• Configuração de notificações do Amazon SNS para o Amazon SES (p. 262)• Conteúdo das notificações do Amazon SNS para o Amazon SES (p. 264)• Exemplos de notificação do Amazon SNS para Amazon SES (p. 275)

Configuração de notificações do Amazon SNS para o AmazonSESO Amazon SES pode notificar você sobre as devoluções, reclamações e entregas por meio do AmazonSimple Notification Service (Amazon SNS).

Você pode configurar notificações no console do Amazon SES ou usando a API do Amazon SES.

Tópicos nesta seção:• Pré-requisitos (p. 262)• Configuração de notificações usando o console do Amazon SES (p. 263)• Configurar notificações de cofre usando a API do Amazon SES (p. 264)• Solução de problemas de notificações de feedback (p. 264)

Pré-requisitosAntes de configurar notificações do Amazon SNS no Amazon SES, execute as etapas a seguir:

1. Crie um tópico no Amazon SNS. Para obter mais informações, consulte Criar um tópico no Guia dodesenvolvedor do Amazon Simple Notification Service.

2. Inscreva pelo menos um endpoint para o tópico. Por exemplo, se quiser receber notificações pormensagem de texto, assine um endpoint de SMS, (ou seja, um número de telefone celular) para otópico. Para receber notificações por e-mail, inscreva um endpoint de e-mail (um endereço de e-mail)para o tópico.

Para obter mais informações, consulte Conceitos básicos no Guia do desenvolvedor do AmazonSimple Notification Service.

3. (Opcional) Se o tópico do Amazon SNS usar o AWS Key Management Service (AWS KMS) paracriptografia do lado do servidor, será necessário adicionar permissões à política de chaves do AWSKMS. É possível adicionar permissões anexando a seguinte política à política de chaves do AWSKMS:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSESToUseKMSKey", "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ],

262

Page 270: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

"Resource": "*" } ]}

Configuração de notificações usando o console do Amazon SES

Para configurar notificações usando o console do Amazon SES

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. No painel de navegação, em Identity Management, escolha Domains ou Email Addresses.3. Na lista de remetentes verificados, escolha o endereço de e-mail ou o domínio para o qual você

deseja configurar notificações.

Important

As configurações de notificação de domínio verificado aplicam-se a todos os e-mails enviadosnesse domínio, exceto para endereços de e-mail que estão também verificados.

4. Em Notifications, escolha Edit Configuration.5. Em SNS Topic Configuration (Configuração de tópico do SNS), faça as seguintes alterações na

configuração do tópico do Amazon SNS.

a. Escolha os tópicos do Amazon SNS que você deseja usar para receber notificações. Você podepublicar várias notificações de tipo de evento no mesmo tópico do Amazon SNS ou em diferentestópicos do Amazon SNS.

Important

Os tópicos do Amazon SNS que você usa para notificações de devolução, reclamação eentrega devem estar na mesma região da AWS na qual o Amazon SES é usado.Além disso, é necessário inscrever um ou mais endpoints no tópico para recebernotificações. Por exemplo, se você deseja que as notificações sejam enviadas para umendereço de e-mail, é necessário inscrever um endpoint de e-mail no tópico. Para obtermais informações, consulte Conceitos básicos no Guia do desenvolvedor do AmazonSimple Notification Service.

Se você quiser usar um tópico do Amazon SNS do qual não seja o proprietário, será necessárioconfigurar sua política do AWS Identity and Access Management (IAM) para permitir a publicaçãoa partir do nome de recurso da Amazon (ARN) do tópico do Amazon SNS.

b. Se você deseja que as notificações do Amazon SNS contenham os cabeçalhos originais dose-mails que passar para o Amazon SES, escolha Include original headers (Incluir cabeçalhosoriginais). Essa opção estará disponível somente se você tiver atribuído um tópico do AmazonSNS ao tipo de notificação associado. Para obter informações sobre o conteúdo dos cabeçalhosde e-mail originais, consulte o objeto mail em Conteúdo das notificações do AmazonSNS (p. 264).

6. (Opcional) Se você escolher tópicos do Amazon SNS tanto para devoluções como para reclamações,poderá desabilitar completamente as notificações por e-mail. Para desativar notificações de e-mailpara devoluções e reclamações, em Email Feedback Forwarding, escolha Disable. As notificações deentrega estão disponíveis apenas por meio do Amazon SNS.

7. Escolha Save Config. As alterações feitas em suas configurações de notificação podem levar algunsminutos para ter efeito.

Após definir as configurações, você poderá começar a receber notificações de devolução, reclamação e/ou entrega para seus tópicos do Amazon SNS. Essas notificações estão no formato JavaScript ObjectNotation (JSON) e seguem a estrutura descrita em Conteúdo das notificações do Amazon SNS (p. 264).

263

Page 271: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Você será cobrado de acordo com as taxas padrão do Amazon SNS para notificações de devolução,reclamação e entrega. Para obter mais informações, consulte a página de definição de preço do AmazonSNS.

Note

Se uma tentativa de publicar no seu tópico do Amazon SNS falhar porque o tópico foi excluído ouporque sua conta da AWS não tem mais permissões para publicar nele, o Amazon SES removeráa configuração desse tópico. Além disso, o Amazon SES habilitará novamente as notificaçõespor e-mail de devolução e reclamação para a identidade, e você receberá uma notificação daalteração por e-mail. Se várias identidades forem configuradas para usar o tópico, a configuraçãodo tópico para cada identidade será alterada quando cada identidade apresentar uma falha aopublicar no tópico.

Configurar notificações de cofre usando a API do Amazon SESVocê também pode configurar notificações de devolução, reclamação e entrega usando a API do AmazonSES. Para configurar notificações, use as operações a seguir:

• SetIdentityNotificationTopic• SetIdentityFeedbackForwardingEnabled• GetIdentityNotificationAttributes• SetIdentityHeadersInNotificationsEnabled

Você pode usar essas ações de API para escrever um aplicativo front-end personalizado para notificações.Para obter uma descrição completa das ações de API relacionadas a notificações, acesse Amazon SimpleEmail Service API Reference.

Solução de problemas de notificações de feedbackNotificações não estão sendo recebidas

Se você não estiver recebendo notificações, certifique-se de ter inscrito um endpoint no tópico peloqual as notificações são enviadas. Ao inscrever um endpoint de e-mail em um tópico, você recebe ume-mail solicitando a confirmação da inscrição. É necessário confirmar a inscrição antes de começar areceber notificações por e-mail. Para obter mais informações, consulte Conceitos básicos no Guia dodesenvolvedor do Amazon Simple Notification Service.

Erro InvalidParameterValue ao escolher um tópico

Se você receber uma mensagem de erro informando que ocorreu um erro InvalidParameterValue,verifique se o tópico do Amazon SNS está criptografado usando o AWS KMS. Se ele estiver, seránecessário modificar a política da chave do AWS KMS. Consulte Pré-requisitos (p. 262) para obter umexemplo de política.

Conteúdo das notificações do Amazon SNS para o Amazon SESAs notificações de devolução, reclamação e entrega são publicadas nos tópicos do Amazon SimpleNotification Service (Amazon SNS) em formato JSON (JavaScript Object Notation). O objeto JSON denível superior contém uma string notificationType, um objeto mail e um objeto bounce, um objetocomplaint ou um objeto delivery.

Consulte as seções a seguir para obter descrições dos diferentes tipos de objetos:

• Objeto JSON de nível superior (p. 265)• Objeto mail (p. 266)• Objeto bounce (p. 268)

264

Page 272: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

• Objeto complaint (p. 272)• Objeto delivery (p. 274)

A seguir estão algumas importantes observações sobre o conteúdo das notificações do Amazon SNS parao Amazon SES:

• Para determinado tipo de notificação, você pode receber uma notificação do Amazon SNS para váriosdestinatários ou receber uma única notificação do Amazon SNS por destinatário. Seu código deve sercapaz de analisar a notificação do Amazon SNS e lidar com ambos os casos; o Amazon SES não fazgarantias de pedido ou lote para notificações enviadas por meio do Amazon SNS. No entanto, diferentestipos de notificação do Amazon SNS (por exemplo, devoluções e reclamações) nunca serão reunidas emuma única notificação.

• Você pode receber vários tipos de notificações do Amazon SNS de um destinatário. Por exemplo, oservidor de e-mail de recebimento pode aceitar o e-mail (acionando uma notificação de entrega), masdepois de processar o e-mail, ele acaba determinando que o e-mail na verdade resulta em devolução(acionando uma notificação de devolução). Mas essas notificações sempre são diferenciadas porquesão tipos distintos de notificação.

• O Amazon SES se reserva o direito de adicionar mais campos às notificações. Dessa forma,aplicativos que analisam essas notificações devem ser flexíveis o suficiente para lidarem com camposdesconhecidos.

• O Amazon SES sobrescreve os cabeçalhos da mensagem ao enviar o e-mail. Você pode recuperar oscabeçalhos da mensagem original dos campos headers e commonHeaders do objeto mail.

Objeto JSON de nível superior

O objeto JSON de nível superior em uma notificação do Amazon SES contém os campos a seguir.

Nome do campo Descrição

notificationType Uma string que contém o tipo de notificaçãorepresentado pelo objeto JSON. Os valores sãoBounce, Complaint ou Delivery.

mail Um objeto JSON que contém informações sobreo e-mail original ao qual a notificação pertence.Para obter mais informações, consulte Objeto de e-mail (p. 266).

bounce Este campo estará presente somente senotificationType for Bounce e contiver umobjeto JSON que contém informações sobre adevolução. Para obter mais informações, consulteObjeto de devolução (p. 268).

complaint Este campo estará presente somente senotificationType for Complaint e contiverum objeto JSON que contém informações sobre areclamação. Para obter mais informações, consulteObjeto de reclamação (p. 272).

delivery Este campo estará presente somente senotificationType for Delivery e contiverum objeto JSON que contém informações sobrea entrega. Para obter mais informações, consulteObjeto de entrega (p. 274).

265

Page 273: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Objeto de e-mail

Cada notificação de devolução, reclamação ou entrega contém informações sobre o e-mail original noobjeto mail. O objeto JSON que contém informações sobre um objeto mail tem os seguintes campos.

Nome do campo Descrição

timestamp A hora em que a mensagem original foi enviada(no formato ISO8601).

messageId Um ID exclusivo que o Amazon SES atribuiu àmensagem. O Amazon SES retornou esse valorquando você enviou a mensagem.

Note

Esse ID de mensagem foi atribuído peloAmazon SES. Você pode encontrar oID da mensagem do e-mail original noscampos headers e commonHeaders doobjeto mail.

source O endereço de e-mail do qual a mensagem originalfoi enviada (o endereço MAIL FROM no envelope).

sourceArn O nome de recurso da Amazon (ARN) daidentidade que foi usada para enviar o e-mail. Nocaso de autorização de envio, o sourceArn é oARN da identidade que o proprietário de identidadeautorizou o remetente delegado a usar para enviaro e-mail. Para obter mais informações sobre aautorização de envio, consulte Uso de autorizaçãode envio (p. 153).

sourceIp O endereço IP público de origem do cliente queexecutou a solicitação de envio de e-mail aoAmazon SES.

sendingAccountId O ID da conta da AWS da conta que foi usada paraenviar o e-mail. No caso de autorização de envio,sendingAccountId é o ID da conta do remetentedelegado.

destination Uma lista de endereços de e-mail que foramdestinatários da mensagem original.

headersTruncated Esse objeto só está presente se você definiuas configurações de notificação para incluir oscabeçalhos de e-mail originais.

Indica se os cabeçalhos estão truncados nanotificação. O Amazon SES trunca os cabeçalhosna notificação quando os cabeçalhos damensagem original têm 10 KB ou mais. Ospossíveis valores são true e false.

headers Esse objeto só está presente se você definiuas configurações de notificação para incluir oscabeçalhos de e-mail originais.

266

Page 274: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Nome do campo DescriçãoUma lista com os cabeçalhos originais do e-mail.Cada cabeçalho tem um campo name e um campovalue.

Note

Qualquer ID de mensagem no objetoheaders é da mensagem original quevocê passou ao Amazon SES. O IDda mensagem que o Amazon SESsubsequentemente atribuiu à mensagemestá no campo messageId do objetomail.

commonHeaders Esse objeto só está presente se você definiuas configurações de notificação para incluir oscabeçalhos de e-mail originais.

Inclui informações sobre cabeçalhos de e-mailcomuns do e-mail original, incluindo os camposFrom (De), To (Para) e Subject (Assunto). Dentrodesse objeto, cada cabeçalho é uma chave. Oscampos From (De) e To (Para) são representadospor matrizes que podem conter vários valores.

Note

Qualquer ID de mensagem no objetocommonHeaders é da mensagem originalque você passou ao Amazon SES. OID da mensagem que o Amazon SESsubsequentemente atribuiu à mensagemestá no campo messageId do objetomail.

Veja a seguir um exemplo de um objeto mail que inclui os cabeçalhos de e-mail originais. Quando essetipo de notificação não estiver configurado para incluir cabeçalhos de e-mail originais, o objeto mail nãoincluirá os campos headersTruncated, headers e commonHeaders.

{ "timestamp":"2018-10-08T14:05:45 +0000", "messageId":"000001378603177f-7a5433e7-8edb-42ae-af10-f0181f34d6ee-000000", "source":"[email protected]", "sourceArn": "arn:aws:ses:us-west-2:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "destination":[ "[email protected]" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"Sender Name\" <[email protected]>" }, { "name":"To", "value":"\"Recipient Name\" <[email protected]>"

267

Page 275: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

}, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Mon, 08 Oct 2018 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "Sender Name <[email protected]>" ], "date":"Mon, 08 Oct 2018 14:05:45 +0000", "to":[ "Recipient Name <[email protected]>" ], "messageId":" custom-message-ID", "subject":"Message sent using Amazon SES" }}

Objeto de devolução

O objeto JSON que contém informações sobre devoluções contém os campos a seguir.

Nome do campo Descrição

bounceType O tipo de devolução, conforme determinado peloAmazon SES. Para obter mais informações,consulte Tipos de devolução (p. 270).

bounceSubType O subtipo da devolução, conforme determinadopelo Amazon SES. Para obter mais informações,consulte Tipos de devolução (p. 270).

bouncedRecipients Uma lista que contém informações sobre osdestinatários da mensagem original que foidevolvida. Para obter mais informações, consulteDestinatários devolvidos (p. 269).

timestamp A data e a hora em que a devolução foi enviada(no formato ISO8601). Observe que essa é a horaem que a notificação foi enviada pelo ISP, não ahora em que foi recebida pelo Amazon SES.

feedbackId Um ID exclusivo para a devolução.

268

Page 276: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Se o Amazon SES conseguir entrar em contato com a Message Transfer Authority (MTA), o campo aseguir também estará presente.

Nome do campo Descrição

remoteMtaIp O endereço IP da MTA para o qual o Amazon SEStentou entregar o e-mail.

Se uma notificação do status de entrega (DSN) tiver sido anexada à devolução, o campo a seguir tambémestará presente.

Nome do campo Descrição

reportingMTA O valor do campo Reporting-MTA a partir doDSN. Esse é o valor da MTA que tentou executara operação de entrega, transmissão ou gatewaydescritas no DSN.

Veja a seguir um exemplo de um objeto bounce.

{ "bounceType":"Permanent", "bounceSubType": "General", "bouncedRecipients":[ { "status":"5.0.0", "action":"failed", "diagnosticCode":"smtp; 550 user unknown", "emailAddress":"[email protected]" }, { "status":"4.0.0", "action":"delayed", "emailAddress":"[email protected]" } ], "reportingMTA": "example.com", "timestamp":"2012-05-25T14:59:38.605Z", "feedbackId":"000001378603176d-5a4b5ad9-6f30-4198-a8c3-b1eb0c270a1d-000000", "remoteMtaIp":"127.0.2.0"}

Destinatários devolvidos

Uma notificação de devolução pode pertencer a um único destinatário ou a vários destinatários. O campobouncedRecipients contém uma lista de objetos – um para cada destinatário ao qual a notificação dedevolução pertence – e sempre conterá o campo a seguir.

Nome do campo Descrição

emailAddress O endereço de e-mail do destinatário. Se um DSNestiver disponível, esse será o valor do campoFinal-Recipient do DSN.

Opcionalmente, se um DSN estiver conectado à devolução, os seguintes campos também poderão estarpresentes.

269

Page 277: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Nome do campo Descrição

action O valor do campo Action a partir do DSN. Issoindica a ação realizada pelo MTA que gera orelatório como resultado da sua tentativa de enviara mensagem a esse destinatário.

status O valor do campo Status a partir do DSN. Esseé o código de status independente do transportepor destinatário que indica o status de entrega damensagem.

diagnosticCode O código de status emitido pelo MTA de relatório.Esse é o valor do campo Diagnostic-Code apartir do DSN. Esse campo pode estar ausente noDSN (e, portanto, também ausente no JSON).

Veja a seguir um exemplo de um objeto que pode estar na lista bouncedRecipients.

{ "emailAddress": "[email protected]", "action": "failed", "status": "5.0.0", "diagnosticCode": "X-Postfix; unknown user"}

Tipos de devolução

O objeto de devolução contém um tipo de devolução Undetermined, Permanent ou Transient.Os tipos de devolução Permanent e Transient também podem conter um dos vários subtipos dedevolução.

Ao receber uma notificação de devolução com um tipo de devolução Transient, você poderá enviar e-mails para esse destinatário no futuro se o problema que gerava a mensagem de devolução for resolvido.

Quando você recebe uma notificação de devolução com um tipo de devolução Permanent, é improvávelque possa enviar e-mails para esse destinatário no futuro. Por esse motivo, você deve removerimediatamente de sua listas de endereços o destinatário cujo endereço gerou a devolução.

Note

Quando ocorre uma devolução flexível (uma devolução relacionada a um problema temporário,como quando a caixa de entrada do destinatário está cheia)m o Amazon SES tenta enviar o e-mail durante determinado período. Ao final desse período, se o Amazon SES ainda assim nãoconseguir entregar o e-mail, deixará de tentar.O Amazon SES fornece notificações para devoluções definitivas, bem como para devoluçõesflexíveis que tenha deixado de tentar entregar.

bounceType bounceSubType Descrição

Undetermined Undetermined O provedor de e-mail do destinatário enviouuma mensagem de devolução. A mensagem dedevolução não contêm informações suficientespara o Amazon SES determinar o motivo dadevolução. O e-mail de devolução, que foi enviadoao endereço no cabeçalho Return-Path do e-mail que provocou a devolução, pode conter

270

Page 278: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

bounceType bounceSubType Descriçãoinformações adicionais sobre o problema que fez oe-mail ser devolvido.

Permanent General O provedor de e-mail do destinatário enviou umamensagem de devolução definitiva, mas nãoespecificou o motivo da devolução definitiva.

Important

Quando você recebe esse tipo denotificação de devolução, deve removerimediatamente o endereço de e-mail dodestinatário de sua lista de endereços.O envio de mensagens para endereçosque geram devoluções definitivas podeafetar negativamente sua reputação comoremetente. Se continuar a enviar e-mailspara endereços que geram devoluçõesdefinitivas, provavelmente teremos depausar o envio de e-mails subsequentes.

Permanent NoEmail O provedor de e-mail do destinatário pretendidoenviou uma mensagem de devolução indicandoque o endereço de e-mail não existe.

Important

Quando você recebe esse tipo denotificação de devolução, deve removerimediatamente o endereço de e-mail dodestinatário de sua lista de endereços. Oenvio de mensagens para endereços quenão existem pode afetar negativamentesua reputação como remetente. Secontinuar a enviar e-mails para endereçosque não existem, provavelmenteteremos de pausar o envio de e-mailssubsequentes.

Permanent Suppressed O endereço de e-mail do destinatário está na listade supressões do Amazon SES porque tem umhistórico recente de gerar devoluções definitivas.Para obter informações sobre como removerum endereço da lista de supressão do AmazonSES, consulte Usar a lista de supressão global doAmazon SES (p. 192).

Permanent OnAccountSuppressionList O Amazon SES suprimiu o envio para esteendereço porque ele está na lista de supressão nonível da conta (p. 189).

271

Page 279: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

bounceType bounceSubType Descrição

Transient General O provedor de e-mail do destinatário enviou umamensagem de devolução genérica. Você podeenviar uma mensagem para o mesmo destinatáriono futuro se o problema que gerou a mensagem dedevolução for resolvido.

Note

Se enviar um e-mail para um destinatárioque tem uma regra de respostaautomática (como uma mensagem "forado escritório"), você poderá receberesse tipo de notificação. Mesmo que aresposta tenha um tipo de notificaçãoBounce, o Amazon SES não contabilizarárespostas automáticas ao calcular a taxade devolução para sua conta.

Transient MailboxFull O provedor de e-mail do destinatário enviouuma mensagem de devolução porque a caixa deentrada do destinatário está cheia. Você poderáenviar mensagens para esse mesmo destinatáriono futuro quando a caixa postal não estiver maischeia.

Transient MessageTooLarge O provedor de e-mail do destinatário enviou umamensagem de devolução porque a mensagem quevocê enviou era muito grande. Você poderá enviaruma mensagem a esse mesmo destinatário sediminuir o tamanho da mensagem.

Transient ContentRejected O provedor de e-mail do destinatário enviou umamensagem de devolução porque o conteúdo damensagem que você enviou não é permitido peloprovedor. Você poderá enviar uma mensagempara esse mesmo destinatário se alterar oconteúdo da mensagem.

Transient AttachmentRejected O provedor de e-mail do destinatário enviou umamensagem de devolução porque a mensagemcontinha um anexo inaceitável. Por exemplo,alguns provedores de e-mail podem rejeitarmensagens com anexos de determinado tipode arquivo ou mensagens com anexos muitograndes. Você poderá enviar uma mensagem paraesse mesmo destinatário se remover ou alterar oconteúdo da mensagem.

Objeto de reclamação

O objeto JSON que contém informações sobre reclamações tem os campos a seguir.

272

Page 280: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Nome do campo Descrição

complainedRecipients Uma lista que contém informações sobre osdestinatários que podem ter sido responsáveis pelareclamação. Para obter mais informações, consulteDestinatários que reclamaram (p. 274).

timestamp A data e a hora, no formato ISO 8601, em que oISP enviou a notificação de reclamação. A data e ahora nesse campo podem não ser iguais à data e àhora em que o Amazon SES recebeu a notificação.

feedbackId Um ID exclusivo associado à reclamação.

complaintSubType O valor do campo complaintSubType pode sernulo ou OnAccountSuppressionList. Casoo valor seja OnAccountSuppressionList,o Amazon SES aceitou a mensagem, masnão tentou enviá-la, pois ela estava na lista desupressão no nível da conta (p. 189).

Além disso, se um relatório de feedback estiver conectado à reclamação, os campos a seguir poderãoestar presentes.

Nome do campo Descrição

userAgent O valor do campo User-Agent do relatório defeedback. Isso indica o nome e versão do sistemaque gerou o relatório.

complaintFeedbackType O valor do campo Feedback-Type do relatório defeedback recebido do ISP. Aí está contido o tipo defeedback.

arrivalDate O valor do campo Arrival-Date ou Received-Date do relatório de feedback (no formatoISO8601). Esse campo pode estar ausente norelatório (e, portanto, também ausente no JSON).

Veja a seguir um exemplo de um objeto complaint.

{ "userAgent":"ExampleCorp Feedback Loop (V0.01)", "complainedRecipients":[ { "emailAddress":"[email protected]" } ], "complaintFeedbackType":"abuse", "arrivalDate":"2009-12-03T04:24:21.000-05:00", "timestamp":"2012-05-25T14:59:38.623Z", "feedbackId":"000001378603177f-18c07c78-fa81-4a58-9dd1-fedc3cb8f49a-000000"}

273

Page 281: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Destinatários que reclamaram

O campo complainedRecipients contém uma lista de destinatários que podem ter enviado areclamação. Você deve usar essas informações para determinar qual destinatário enviou a reclamação e,em seguida, remover esse destinatário imediatamente de suas listas de endereços.

Important

A maioria dos ISPs remove de sua notificação de reclamação o endereço de e-mail dodestinatário que enviou a reclamação. Por esse motivo, essa lista contém informações sobre osdestinatários que podem ter enviado a reclamação, com base nos destinatários da mensagemoriginal e no ISP do qual recebemos a reclamação. O Amazon SES executa uma consulta emrelação a mensagem original para determinar a lista de destinatários.

Os objetos JSON desta lista contêm o seguinte campo.

Nome do campo Descrição

emailAddress O endereço de e-mail do destinatário.

Veja a seguir um exemplo de um objeto de destinatário reclamado.

{ "emailAddress": "[email protected]" }

Note

Por conta desse comportamento, você pode ter mais certeza quais endereços de e-mailreclamaram sobre sua mensagem se limitar seu envio para uma mensagem por destinatário (emvez de enviar uma mensagem com 30 diferentes endereços de e-mail na linha CCO).

Tipos de reclamação

Você pode ver os seguintes tipos de reclamação no campo complaintFeedbackType conformeatribuído pelo ISP que gerou o relatório, de acordo com o site da Internet Assigned Numbers Authority:

• abuse—Indica e-mail não solicitado ou algum outro tipo de abuso de e-mail.• auth-failure—Relatório de falha de autenticação de e-mail.• fraud—Indica algum tipo de atividade de phishing ou fraude.• not-spam—Indica que a entidade que fornece o relatório não considera a mensagem como spam.

Isso pode ser usado para corrigir uma mensagem que foi incorretamente marcada ou classificada comospam.

• other—Indica qualquer outro feedback que não se adequa a outros tipos registrados.• virus—Reporta que um vírus foi encontrado na mensagem de origem.

Objeto de entregaO objeto JSON que contém informações sobre entregas sempre tem os campos a seguir.

Nome do campo Descrição

timestamp A hora em que o Amazon SES entregou o e-mailao servidor de e-mail do destinatário (em formatoISO8601).

processingTimeMillis O tempo em milissegundos entre quando oAmazon SES aceitou a solicitação do remetente

274

Page 282: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

Nome do campo Descriçãoaté transmitir a mensagem para o servidor de e-mail do destinatário.

recipients Uma lista dos destinatários pretendidos do e-mailao qual a notificação de entrega se aplica.

smtpResponse A mensagem de resposta SMTP do ISP remotoque aceitou o e-mail do Amazon SES. Essamensagem varia de acordo com o e-mail, oservidor de e-mail de recebimento e o ISP derecebimento.

reportingMTA O nome de host do servidor de e-mail do AmazonSES que enviou o e-mail.

remoteMtaIp O endereço IP da MTA para a qual o Amazon SESentregou o e-mail.

Veja a seguir um exemplo de um objeto delivery.

{ "timestamp":"2014-05-28T22:41:01.184Z", "processingTimeMillis":546, "recipients":["[email protected]"], "smtpResponse":"250 ok: Message 64111812 accepted", "reportingMTA":"a8-70.smtp-out.amazonses.com", "remoteMtaIp":"127.0.2.0"}

Exemplos de notificação do Amazon SNS para Amazon SESAs seções a seguir oferecem exemplos de três tipos de notificações:

• Para exemplos de notificação de devolução, consulte Exemplos de notificação de devolução do AmazonSNS (p. 275).

• Para exemplos de notificação de reclamação, consulte Exemplos de notificação de reclamação doAmazon SNS (p. 278).

• Para exemplos de notificação de entrega, consulte Exemplo de notificação de entrega do AmazonSNS (p. 280).

Exemplos de notificação de devolução do Amazon SNSEsta seção contém exemplos de notificações de devolução com e sem uma notificação de status deentrega (DSN) fornecida pelo receptor do e-mail que enviou o feedback.

Notificação de devolução com um DSN

A seguir está um exemplo de uma notificação de devolução que contém um DSN e os cabeçalhos de e-mail originais. Quando as notificações de devolução não estiverem configuradas para incluir os cabeçalhosde e-mail originais, o objeto mail dentro da notificação não incluirá os campos headersTruncated,headers e commonHeaders.

{ "notificationType":"Bounce", "bounce":{

275

Page 283: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

"bounceType":"Permanent", "reportingMTA":"dns; email.example.com", "bouncedRecipients":[ { "emailAddress":"[email protected]", "status":"5.1.1", "action":"failed", "diagnosticCode":"smtp; 550 5.1.1 <[email protected]>... User" } ], "bounceSubType":"General", "timestamp":"2016-01-27T14:59:38.237Z", "feedbackId":"00000138111222aa-33322211-cccc-cccc-cccc-ddddaaaa068a-000000", "remoteMtaIp":"127.0.2.0" }, "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "source":"[email protected]", "sourceArn": "arn:aws:ses:us-west-2:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "messageId":"00000138111222aa-33322211-cccc-cccc-cccc-ddddaaaa0680-000000", "destination":[ "[email protected]", "[email protected]", "[email protected]"], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <[email protected]>" }, { "name":"To", "value":"\"Jane Doe\" <[email protected]>, \"Mary Doe\" <[email protected]>, \"Richard Doe\" <[email protected]>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <[email protected]>" ], "date":"Wed, 27 Jan 2016 14:05:45 +0000", "to":[ "Jane Doe <[email protected]>, Mary Doe <[email protected]>, Richard Doe <[email protected]>"

276

Page 284: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

], "messageId":"custom-message-ID", "subject":"Hello" } } }

Notificação de devolução sem um DSN

Veja a seguir um exemplo de uma notificação de devolução que inclui cabeçalhos de e-mail originais, masnão um DSN. Quando as notificações de devolução não estiverem configuradas para incluir os cabeçalhosde e-mail originais, o objeto mail dentro da notificação não incluirá os campos headersTruncated,headers e commonHeaders.

{ "notificationType":"Bounce", "bounce":{ "bounceType":"Permanent", "bounceSubType": "General", "bouncedRecipients":[ { "emailAddress":"[email protected]" }, { "emailAddress":"[email protected]" } ], "timestamp":"2016-01-27T14:59:38.237Z", "feedbackId":"00000137860315fd-869464a4-8680-4114-98d3-716fe35851f9-000000", "remoteMtaIp":"127.0.2.0" }, "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "messageId":"00000137860315fd-34208509-5b74-41f3-95c5-22c1edc3c924-000000", "source":"[email protected]", "sourceArn": "arn:aws:ses:us-west-2:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "destination":[ "[email protected]", "[email protected]", "[email protected]" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <[email protected]>" }, { "name":"To", "value":"\"Jane Doe\" <[email protected]>, \"Mary Doe\" <[email protected]>, \"Richard Doe\" <[email protected]>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type",

277

Page 285: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

"value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <[email protected]>" ], "date":"Wed, 27 Jan 2016 14:05:45 +0000", "to":[ "Jane Doe <[email protected]>, Mary Doe <[email protected]>, Richard Doe <[email protected]>" ], "messageId":"custom-message-ID", "subject":"Hello" } } }

Exemplos de notificação de reclamação do Amazon SNSEsta seção contém exemplos de notificações de reclamação com e sem um relatório de feedbackfornecido pelo receptor do e-mail que enviou o feedback.

Notificação de reclamação com um relatório de feedback

A seguir está um exemplo de uma notificação de reclamação que contém um relatório de feedback eos cabeçalhos de e-mail originais. Quando as notificações de reclamação não estiverem configuradaspara incluir os cabeçalhos de e-mail originais, o objeto mail dentro da notificação não incluirá os camposheadersTruncated, headers e commonHeaders.

{ "notificationType":"Complaint", "complaint":{ "userAgent":"AnyCompany Feedback Loop (V0.01)", "complainedRecipients":[ { "emailAddress":"[email protected]" } ], "complaintFeedbackType":"abuse", "arrivalDate":"2016-01-27T14:59:38.237Z", "timestamp":"2016-01-27T14:59:38.237Z", "feedbackId":"000001378603177f-18c07c78-fa81-4a58-9dd1-fedc3cb8f49a-000000" }, "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "messageId":"000001378603177f-7a5433e7-8edb-42ae-af10-f0181f34d6ee-000000", "source":"[email protected]", "sourceArn": "arn:aws:ses:us-west-2:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "destination":[ "[email protected]", "[email protected]", "[email protected]" ],

278

Page 286: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

"headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <[email protected]>" }, { "name":"To", "value":"\"Jane Doe\" <[email protected]>, \"Mary Doe\" <[email protected]>, \"Richard Doe\" <[email protected]>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <[email protected]>" ], "date":"Wed, 27 Jan 2016 14:05:45 +0000", "to":[ "Jane Doe <[email protected]>, Mary Doe <[email protected]>, Richard Doe <[email protected]>" ], "messageId":"custom-message-ID", "subject":"Hello" } } }

Notificação de reclamação sem um relatório de feedback

Veja a seguir um exemplo de uma notificação de reclamação que inclui cabeçalhos de e-mail originais,mas não um relatório de feedback. Quando as notificações de reclamação não estiverem configuradaspara incluir os cabeçalhos de e-mail originais, o objeto mail dentro da notificação não incluirá os camposheadersTruncated, headers e commonHeaders.

{ "notificationType":"Complaint", "complaint":{ "complainedRecipients":[ { "emailAddress":"[email protected]" } ], "timestamp":"2016-01-27T14:59:38.237Z", "feedbackId":"0000013786031775-fea503bc-7497-49e1-881b-a0379bb037d3-000000"

279

Page 287: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

}, "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "messageId":"0000013786031775-163e3910-53eb-4c8e-a04a-f29debf88a84-000000", "source":"[email protected]", "sourceArn": "arn:aws:ses:us-west-2:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "destination":[ "[email protected]", "[email protected]", "[email protected]" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <[email protected]>" }, { "name":"To", "value":"\"Jane Doe\" <[email protected]>, \"Mary Doe\" <[email protected]>, \"Richard Doe\" <[email protected]>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <[email protected]>" ], "date":"Wed, 27 Jan 2016 14:05:45 +0000", "to":[ "Jane Doe <[email protected]>, Mary Doe <[email protected]>, Richard Doe <[email protected]>" ], "messageId":"custom-message-ID", "subject":"Hello" } } }

Exemplo de notificação de entrega do Amazon SNS

Veja a seguir um exemplo de uma notificação de entrega que inclui os cabeçalhos de e-mail originais.Quando as notificações de entrega não estiverem configuradas para incluir os cabeçalhos de e-mail

280

Page 288: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificações do por meio do Amazon SNS

originais, o objeto mail dentro da notificação não incluirá os campos headersTruncated, headers ecommonHeaders.

{ "notificationType":"Delivery", "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "messageId":"0000014644fe5ef6-9a483358-9170-4cb4-a269-f5dcdf415321-000000", "source":"[email protected]", "sourceArn": "arn:aws:ses:us-west-2:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "destination":[ "[email protected]" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <[email protected]>" }, { "name":"To", "value":"\"Jane Doe\" <[email protected]>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:58:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <[email protected]>" ], "date":"Wed, 27 Jan 2016 14:58:45 +0000", "to":[ "Jane Doe <[email protected]>" ], "messageId":"custom-message-ID", "subject":"Hello" } }, "delivery":{ "timestamp":"2016-01-27T14:59:38.237Z", "recipients":["[email protected]"], "processingTimeMillis":546, "reportingMTA":"a8-70.smtp-out.amazonses.com", "smtpResponse":"250 ok: Message 64111812 accepted", "remoteMtaIp":"127.0.2.0"

281

Page 289: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorMonitoramento usando publicação de eventos

} }

Monitoramento usando publicação de eventos doAmazon SES

Para habilitar você a rastrear seu envio de e-mails em nível granular, você pode configurar o Amazon SESpara publicar eventos de envio de e-mail no Amazon CloudWatch ou Amazon Kinesis Data Firehose combase nas características de e-mail detalhadas que você definir. Por exemplo, você pode classificar seus e-mails por finalidade (transações versus marketing), detalhes do produto, o domínio "From" do destinatárioe assim por diante.

Você pode rastrear vários tipos de eventos de envio de e-mail, incluindo envios, entregas, aberturas,cliques, devoluções, reclamações e rejeições. Essas informações podem ser úteis para fins analíticos eoperacionais. Por exemplo, você pode publicar seus dados de envio de e-mails no CloudWatch e criarpainéis que rastreiem o desempenho das suas campanhas de e-mail.

Como funciona a publicação de eventosPara usar a publicação de eventos, primeiro você deve configurar um ou mais conjuntos de configurações.Um conjunto de configurações especifica onde publicar seus eventos e quais eventos publicar. Emseguida, cada vez que você envia um e-mail, você fornece o nome do conjunto de configurações e uma oumais tags de mensagem, na forma de pares de nome/valor, para classificar o e-mail. Por exemplo, se vocêanuncia livros, poderia dar um nome a uma tag de mensagem genre e atribuir o valor sci-fi ou westernao enviar um e-mail para a campanha associada. Dependendo da interface de envio de e-mail que usa,você pode fornecer a tag da mensagem como parâmetro para a chamada de API ou como um cabeçalhode e-mail específico do Amazon SES. Para obter mais informações sobre os conjuntos de configurações,consulte Usar conjuntos de configurações do Amazon SES (p. 244).

Além das tags de mensagem que você especificar, o Amazon SES também adiciona tags automáticaspara as mensagens enviadas. Você não precisa realizar nenhuma etapa adicional para usar tagsautomáticas.

A tabela a seguir lista as tags automáticas aplicadas automaticamente às mensagens enviadas usando oAmazon SES.

Tags automáticas do Amazon SES

Nome da tag automática Descrição

ses:configuration-set O nome do conjunto de configurações associadoao e-mail.

ses:caller-identity A identidade do IAM do usuário do Amazon SESque enviou o e-mail.

ses:from-domain O domínio do endereço "From".

ses:source-ip O endereço IP que o chamador usou para enviar oe-mail.

ses:outgoing-ip O endereço IP que o Amazon SES usou paraenviar o e-mail.

282

Page 290: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorComo usar a publicação de eventos

Como usar a publicação de eventosAs seções a seguir contêm as informações necessárias para configurar e usar a publicação de eventos doAmazon SES.

• Configuração de publicação de eventos (p. 284)• Trabalhar com dados de eventos (p. 293)• Tutoriais (p. 330)

Terminologia de publicação de eventosA lista a seguir define os termos relacionados à publicação de eventos do Amazon SES.

Evento de envio de e-mails

Informações associadas ao resultado de um e-mail enviado ao Amazon SES. Os eventos de envioincluem o seguinte:• Sends (Envios) – a chamada para o Amazon SES foi bem-sucedida, e o Amazon SES tentará

entregar o e-mail.• Rejects (Rejeições) – o Amazon SES aceitou o e-mail, determinou que ele continha vírus e o

rejeitou. O Amazon SES não tentou entregar o e-mail ao servidor de e-mail do destinatário.• Bounces (Devoluções) – o servidor de e-mail do destinatário rejeitou definitivamente o e-mail. Este

evento corresponde a hard bounces. Devoluções flexíveis só são incluídas quando o Amazon SESdeixa de entregar o e-mail depois de tentar novamente por um período.

• Complaints (Reclamações) – o e-mail foi entregue com êxito ao destinatário. O destinatário marcouo e-mail como spam.

• Deliveries (Entregas) – o Amazon SES entregou com êxito o e-mail ao servidor de e-mail dodestinatário.

• Opens (Aberturas) – o destinatário recebeu a mensagem e a abriu no cliente de e-mail.• Clicks (Cliques) – o destinatário clicou em um ou mais links no e-mail.• Rendering Failures (Falhas de renderização) – o e-mail não foi enviado devido a um problema

de renderização do modelo. Esse tipo de evento só ocorre quando você envia e-mail usando asoperações de API SendTemplatedEmail ou SendBulkTemplatedEmail. Esse tipo de evento podeocorrer quando estão faltando dados no modelo ou quando há uma incompatibilidade entre osparâmetros e os dados do modelo.

Conjunto de configurações

Um conceito do Amazon SES que encapsula onde você deseja publicar os eventos de envio de e-maile quais eventos de envio de e-mail você deseja publicar. Quando você envia um e-mail que desejausar com a publicação do evento, precisa especificar o conjunto de configurações a ser associado aoe-mail.

Destino do evento

Um conceito do Amazon SES que representa um serviço da AWS no qual você publica os eventos deenvio de e-mail do Amazon SES. Cada destino de evento que você configura pertence a um, e apenasum, conjunto de configurações.

Tags de mensagens

Um par de nome/valor que você usa para classificar um e-mail para a finalidade de publicação deeventos. Alguns exemplos são campanha/livro e campanha/roupas. Quando você envia um e-mail,especifica a tag da mensagem como parâmetro para a chamada de API ou como um cabeçalho de e-mail específico do Amazon SES.

283

Page 291: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de publicação de eventos

Tag automática

Tags de mensagens que são incluídas automaticamente nos relatórios de publicação de eventos.Há uma tag automática para o nome do conjunto de configurações, o domínio do endereço "From",o endereço IP de saída do chamador, o endereço IP de saída do Amazon SES e a identidade dochamador do IAM.

Configuração de publicação de eventos do AmazonSESEsta seção descreve o que você precisa fazer para configurar o Amazon SES para publicar eventos deenvio de e-mail no Amazon CloudWatch ou Amazon Kinesis Data Firehose.

Primeiro, crie um conjunto de configurações usando o console ou a API do Amazon SES. Depois de criarum conjunto de configurações, adicione um ou mais destinos de eventos (CloudWatch ou Kinesis DataFirehose) ao conjunto de configurações e configure parâmetros exclusivos para o destino do evento.Em seguida, sempre que você enviar um e-mail, inclua o nome do conjunto de configurações e ascaracterísticas de e-mail, chamados de tags de mensagens, como parâmetros para a API ou cabeçalhosespecíficos do Amazon SES no e-mail.

Essas etapas são explicadas nos tópicos a seguir.

1. Etapa 1: Criar um conjunto de configurações (p. 284)2. Etapa 2: Adicionar destino de evento (p. 284)3. Etapa 3: Enviar e-mail (p. 291)

Etapa 1: Criar um conjunto de configurações usando o AmazonSESOs conjuntos de configurações permitem publicar eventos de envio de e-mail (devoluções, reclamações,entregas, e-mails enviados e e-mails rejeitados) para o Amazon CloudWatch ou o Amazon Kinesis DataFirehose.

Você pode usar o console do Amazon SES ou a API CreateConfigurationSet para criar um conjuntode configurações.

Para criar um conjunto de configurações (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. No painel de conteúdo, escolha Create Configuration Set.4. Digite um nome para o conjunto de configurações e escolha Create Configuration Set.5. Escolha Fechar.

Para obter informações sobre como usar a API CreateConfigurationSet para criar um conjunto deconfigurações, consulte Amazon Simple Email Service API Reference.

Etapa 2: Adicionar um destino de evento usando o Amazon SESDestinos de eventos representam os serviços da AWS em que você publica os eventos de envio de e-mail,como devoluções, reclamações, entregas e e-mails rejeitados. Cada destino de evento que você configura

284

Page 292: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de publicação de eventos

pertence a um, e apenas um, conjunto de configurações. Quando você configura um destino de eventocom o Amazon SES, escolhe o destino do serviço da AWS e especifica os parâmetros associados a essedestino.

Há três destinos de eventos: Amazon CloudWatch, Amazon Kinesis Data Firehose e Amazon SimpleNotification Service (Amazon SNS). O destino de evento que você escolhe depende do nível de detalhesque deseja sobre os eventos e da maneira como deseja receber as informações sobre o evento. Sevocê quiser apenas um total de execução de cada tipo de evento (por exemplo, para poder definir umalarme quando o total for muito alto), use o CloudWatch. Se você quiser registros de eventos detalhadospara exportar para outro serviço, como Amazon Elasticsearch Service ou Amazon Redshift para análise,escolha Kinesis Data Firehose. Se você quiser receber notificações quando certos eventos ocorrerem,escolha Amazon SNS.

Esta seção contém os seguintes tópicos• Configurar um destino de evento do CloudWatch para publicação de eventos do Amazon

SES (p. 285)• Configurar um destino de evento do Kinesis Data Firehose para publicação de eventos do Amazon

SES (p. 288)• Configurar um destino de evento do Amazon SNS para publicação de eventos do Amazon

SES (p. 290)

Configurar um destino de evento do CloudWatch para publicação de eventos doAmazon SES

Use os destinos de eventos do Amazon CloudWatch para publicar eventos de envio de e-mails do AmazonSES no CloudWatch. Como um destino de evento do CloudWatch existe apenas dentro de um conjuntode configurações, primeiro é necessário criar um conjunto de configurações (p. 284) e, em seguida,adicionar o destino de evento ao conjunto de configurações.

Ao adicionar um destino de evento do CloudWatch a um conjunto de configurações, é necessário escolheruma ou mais dimensões do CloudWatch que correspondam às tags de mensagens usadas ao enviar seuse-mails. Assim como as tags de mensagens, uma dimensão do CloudWatch é um par nome/valor queajuda a identificar com exclusividade uma métrica.

Por exemplo, você pode ter uma tag de mensagem e uma dimensão chamada campaign, que você usapara identificar sua campanha de e-mails. Ao publicar os eventos de envio de e-mails no CloudWatch, éimportante escolher as tags de mensagens e as dimensões, pois são opções que afetam seu faturamentodo CloudWatch e determinam como você pode filtrar seus dados de evento de envio de e-mails noCloudWatch.

Esta seção apresenta informações para ajudá-lo a escolher as dimensões e mostra como adicionar umdestino de evento do CloudWatch a um conjunto de configurações.

Tópicos nesta seção• Adicionar um destino de evento do CloudWatch (p. 285)• Escolher dimensões do CloudWatch (p. 287)

Adicionar um destino de evento do CloudWatch

O procedimento nesta seção mostra como adicionar um destino de evento do CloudWatch a um conjuntode configurações.

Você também pode usar a operação da API UpdateConfigurationSetEventDestination para criardestinos de eventos. Para obter mais informações sobre como usar a API, consulte a Amazon SimpleEmail Service API Reference.

285

Page 293: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de publicação de eventos

Para adicionar um destino de evento do CloudWatch a um conjunto de configurações (console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, escolha Configuration Sets.3. Na lista de conjuntos de configurações, selecione o conjunto para o qual você deseja criar um

destino de evento do CloudWatch. Se a lista estiver vazia, você primeiro deve criar um conjunto deconfigurações (p. 284).

4. Na guia Event Destinations (Destinos de eventos), em Add Destination (Adicionar destino), selecioneSelect a destination type (Selecionar um tipo de destino) e, em seguida, escolha CloudWatch.

5. Na caixa de diálogo CloudWatch Destination (Destino), selecione Enabled (Habilitado).6. Em Name, digite um nome para o destino de evento.7. Em Event types, selecione os tipos de eventos que deseja publicar no destino de evento. Os tipos de

eventos a seguir estão disponíveis:

• Sends (Envios) – a chamada para o Amazon SES foi bem-sucedida, e o Amazon SES tentaráentregar o e-mail.

• Rejects (Rejeições) – o Amazon SES aceitou o e-mail, determinou que ele continha vírus e orejeitou. O Amazon SES não tentou entregar o e-mail ao servidor de e-mail do destinatário.

• Bounces (Devoluções) – o servidor de e-mail do destinatário rejeitou definitivamente o e-mail. Esteevento corresponde a hard bounces. Devoluções flexíveis só são incluídas quando o Amazon SESdeixa de entregar o e-mail depois de tentar novamente por um período.

• Complaints (Reclamações) – o e-mail foi entregue com êxito ao destinatário. O destinatário marcouo e-mail como spam.

• Deliveries (Entregas) – o Amazon SES entregou com êxito o e-mail ao servidor de e-mail dodestinatário.

• Opens (Aberturas) – o destinatário recebeu a mensagem e a abriu no cliente de e-mail.• Clicks (Cliques) – o destinatário clicou em um ou mais links no e-mail.• Rendering Failures (Falhas de renderização) – o e-mail não foi enviado devido a um problema

de renderização do modelo. Esse tipo de evento só ocorre quando você envia e-mail usando asoperações de API SendTemplatedEmail ou SendBulkTemplatedEmail. Esse tipo de evento podeocorrer quando estão faltando dados no modelo ou quando há uma incompatibilidade entre osparâmetros e os dados do modelo.

8. Em Value Source (Origem do valor), especifique como o Amazon SES obterá os dados que passapara o CloudWatch. As origens de valores a seguir estão disponíveis:

• Message Tag (Tag de mensagem) – o Amazon SES recupera o nome e o valor da dimensão deuma tag especificada usando o cabeçalho X-SES-MESSAGE-TAGS ou o parâmetro Tags da API.Para obter mais informações sobre como usar tags de mensagem, consulte the section called“Etapa 3: Enviar e-mail” (p. 291).

Note

Tags de mensagens podem incluir números de 0–9, as letras A–Z (letras maiúsculas eminúsculas), hífens (-) e sublinhados (_).

Você também pode usar o valor de origem Message Tag (Tag de mensagem) para criar dimensõescom base nas tags automáticas do Amazon SES. Para usar uma tag automática, digite o nomecompleto da tag automática como o Dimension Name (Nome da dimensão). Por exemplo,para criar uma dimensão com base no conjunto de configuração de tags automáticas, useses:configuration-set para o Dimension Name (Nome da dimensão), e o nome do conjuntode configurações para o Default Value (Valor padrão). Para obter uma lista completa de tagsautomáticas, consulte Como funciona a publicação de eventos (p. 282).

286

Page 294: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de publicação de eventos

• Email Header (Cabeçalho do e-mail) – o Amazon SES recupera o nome e o valor da dimensão deum cabeçalho do e-mail.

Note

Nenhum dos cabeçalhos de e-mail a seguir pode ser usado como Dimension Name:Received, To, From, DKIM-Signature, CC, message-id ou Return-Path.

• Link Tag (Tag de link) – o Amazon SES recupera o nome e o valor da dimensão de uma tagespecificada em um link. Para obter mais informações sobre a adição de tags em links, consultePosso usar tags em links com identificadores exclusivos? (p. 495).

9. Em Dimension Name (Nome da dimensão), digite o nome da dimensão que você deseja passar para oCloudWatch. Em Default Value (Valor padrão), digite o valor da dimensão.

Note

Nomes e valores de dimensão podem conter apenas letras de A a Z, números de 0 a 9,sublinhados (_), arrobas (@), hifens (-) e pontos (.). Espaços, caracteres acentuados,caracteres não latinos e outros caracteres especiais não são permitidos.

10. Para adicionar mais dimensões, selecione Add Dimension (Adicionar dimensão). Caso contrário,selecione Salvar.

Escolher dimensões do CloudWatch

Quando você escolher nomes e valores para usar como dimensões do CloudWatch, considere osseguintes fatores:

• Preço por métrica – você pode visualizar métricas básicas do Amazon SES no CloudWatchgratuitamente. No entanto, ao coletar métricas usando a publicação de eventos, você cria métricaspersonalizadas no CloudWatch. Cada combinação única de tipo de evento, nome de dimensão e valorde dimensão cria uma métrica personalizada diferente no CloudWatch. Ao usar o CloudWatch, vocêé cobrado por cada métrica personalizada que você cria. Por esse motivo, você pode querer evitar aescolha de dimensões que tenham muitos valores diferentes. Por exemplo, a menos que você estejamuito interessado em rastrear seus eventos de envio de e-mails pelo domínio "From", você pode nãoquerer definir uma dimensão para a tag automática ses:from-domain do Amazon SES, pois elapode ter muitos valores diferentes. Para obter mais informações, consulte a Definição de preço doCloudWatch.

• Filtro de métrica – se uma métrica tiver várias dimensões, não será possível acessar a métrica noCloudWatch com base em cada dimensão separadamente. Por esse motivo, pense cuidadosamenteantes de adicionar mais de uma dimensão a um único destino de evento do CloudWatch. Por exemplo,se desejar métricas por campaign e por uma combinação de campaign e genre, você precisaráadicionar dois destinos de eventos: um com apenas campaign como uma dimensão, e um comcampaign e genre como dimensões.

• Origem de valor da dimensão – como alternativa a especificar os valores de dimensão usandocabeçalhos específicos do Amazon SES ou um parâmetro para a API, você também pode escolher queo Amazon SES extraia os valores de dimensão de seus próprios cabeçalhos de mensagens MIME. Vocêpode usar essa opção caso já esteja usando cabeçalhos personalizados e não queira alterar seus e-mails ou chamadas para a API de envio de e-mail para coletar métricas com base em seus valores decabeçalho. Se você usa seus próprios cabeçalhos de mensagem MIME para a publicação de eventos doAmazon SES, os nomes e valores de cabeçalhos usados para a publicação de eventos do Amazon SESsó podem incluir letras de A a Z, números de 0 a 9, sublinhados (_), arrobas (@), hifens (-) e pontos (.).Se você especificar um nome ou valor contendo outros caracteres, a chamada de envio de e-mail aindaacontecerá, mas as métricas de eventos não serão enviadas para o Amazon CloudWatch.

Para obter mais informações sobre os conceitos do CloudWatch, consulte Conceitos do AmazonCloudWatch no Guia do usuário do Amazon CloudWatch.

287

Page 295: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de publicação de eventos

Configurar um destino de evento do Kinesis Data Firehose para publicação deeventos do Amazon SES

Um destino de evento do Amazon Kinesis Data Firehose representa uma entidade que publica eventosespecíficos de envio de e-mails do Amazon SES no Kinesis Data Firehose. Como um destino de eventodo Kinesis Data Firehose existe apenas dentro de um conjunto de configurações, primeiro é necessáriocriar um conjunto de configurações (p. 284) e, em seguida, adicionar o destino de evento ao conjunto deconfigurações.

Use o console do Amazon SES ou a API UpdateConfigurationSetEventDestination paraadicionar um destino de evento do Kinesis Data Firehose.

Para adicionar um destino de evento do Kinesis Data Firehose a um conjunto de configurações(console)

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. Escolha um conjunto de configurações da lista. Se a lista estiver vazia, você primeiro deve criar um

conjunto de configurações (p. 284).4. Em Add Destination (Adicionar destino), selecione Select a destination type (Selecionar um tipo de

destino) e, em seguida, escolha Kinesis Data Firehose.5. Em Name, digite um nome para o destino de evento.6. Em Event types, selecione ao menos um tipo de evento para publicar no destino de evento:

• Sends (Envios) – a chamada para o Amazon SES foi bem-sucedida, e o Amazon SES tentaráentregar o e-mail.

• Rejects (Rejeições) – o Amazon SES aceitou o e-mail, determinou que ele continha vírus e orejeitou. O Amazon SES não tentou entregar o e-mail ao servidor de e-mail do destinatário.

• Bounces (Devoluções) – o servidor de e-mail do destinatário rejeitou definitivamente o e-mail. Esteevento corresponde a hard bounces. Devoluções flexíveis só são incluídas quando o Amazon SESdeixa de entregar o e-mail depois de tentar novamente por um período.

• Complaints (Reclamações) – o e-mail foi entregue com êxito ao destinatário. O destinatário marcouo e-mail como spam.

• Deliveries (Entregas) – o Amazon SES entregou com êxito o e-mail ao servidor de e-mail dodestinatário.

• Opens (Aberturas) – o destinatário recebeu a mensagem e a abriu no cliente de e-mail.• Clicks (Cliques) – o destinatário clicou em um ou mais links no e-mail.• Rendering Failures (Falhas de renderização) – o e-mail não foi enviado devido a um problema

de renderização do modelo. Esse tipo de evento só ocorre quando você envia e-mail usando asoperações de API SendTemplatedEmail ou SendBulkTemplatedEmail. Esse tipo de evento podeocorrer quando estão faltando dados no modelo ou quando há uma incompatibilidade entre osparâmetros e os dados do modelo.

7. Selecione Enabled.8. Em Stream (Fluxo), selecione um fluxo de entrega do Kinesis Data Firehose existente ou escolha

Create new stream (Criar novo fluxo) para criar um usando o console do Kinesis Data Firehose.

Para obter informações sobre como criar de um fluxo usando o console do Kinesis Data Firehose,consulte Criar um fluxo de entrega do Amazon Kinesis Firehose no Guia do desenvolvedor do AmazonKinesis Data Firehose.

9. Em IAM role (Função do IAM), selecione uma função do IAM para a qual o Amazon SES tenhapermissão para publicar no Kinesis Data Firehose em seu nome. Você pode escolher uma funçãoexistente, deixar que o Amazon SES crie uma função para você ou criar sua própria função.

288

Page 296: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de publicação de eventos

Se você escolher uma função existente ou criar a sua própria, deverá modificar manualmente aspolíticas para conceder à função permissão para acessar o fluxo de entrega do Kinesis Data Firehosee permitir que o Amazon SES assuma a função. Para obter exemplos de políticas do , consulteConcessão de permissão ao Amazon SES para publicar em seu fluxo de entrega do Kinesis DataFirehose (p. 289).

10. Escolha Salvar.

Para obter informações sobre como usar a API UpdateConfigurationSetEventDestination paraadicionar um destino de evento do Kinesis Data Firehose, consulte Amazon Simple Email Service APIReference.

Concessão de permissão ao Amazon SES para publicar em seu fluxo de entrega do Kinesis DataFirehose

Para permitir que o Amazon SES publique registros no fluxo de entrega do Kinesis Data Firehose, use umafunção do AWS Identity and Access Management (IAM) e anexe ou modifique a política de permissõese a política de confiança da função. A política de permissões permite que a função publique registros nofluxo de entrega do Kinesis Data Firehose e a política de confiança permite que o Amazon SES assuma afunção.

Esta seção apresenta exemplos das duas políticas. Para obter mais informações sobre como anexarpolíticas a funções do IAM, consulte Modificar uma função no Guia do usuário do IAM.

Política de permissões

A política de permissões a seguir permite que a função publique registros de dados em seu fluxo deentrega do Kinesis Data Firehose.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Action": [ "firehose:PutRecordBatch" ], "Resource": [ "arn:aws:firehose:REGION:ACCOUNT-ID:deliverystream/DELIVERY-STREAM-NAME " ] } ]}

Política de confiança

A seguinte política de confiança permite que o Amazon SES assuma a função.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": {

289

Page 297: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de publicação de eventos

"sts:ExternalId": "ACCOUNT-ID" } } } ]}

Configurar um destino de evento do Amazon SNS para publicação de eventos doAmazon SESUm destino de evento notifica você sobre eventos específicos de envio de e-mail usando o Amazon SNS.Como um destino de evento do Amazon SNS existe apenas em um conjunto de configurações, primeiroé necessário criar um conjunto de configurações (p. 284) e, depois, adicionar o destino de evento aoconjunto de configurações.

Use o console do Amazon SES ou a operação da API UpdateConfigurationSetEventDestinationpara adicionar um destino de evento do Amazon SNS.

Note

Também é possível receber notificações por meio do Amazon SNS no nível da conta. Issosignifica que você pode receber notificações do Amazon SNS sempre que um evento deenvio ocorrer em toda a conta do Amazon SES. Ao usar a publicação de eventos em vezdas notificações no nível de conta, você pode configurar o Amazon SES para apenas enviarnotificações sobre tipos de eventos específicos ou apenas para e-mails enviados usandodeterminado conjunto de configurações. Para obter mais informações sobre como configurarnotificações do Amazon SNS no nível da conta, consulte Monitoramento com o uso denotificações do Amazon SES (p. 258).

Há cobranças adicionais para enviar mensagens para os endpoints que estão inscritos em seus tópicos doAmazon SNS. Para obter mais informações, consulte Definição de preços do Amazon SNS.

Para adicionar um destino de evento do Amazon SNS a um conjunto de configurações

1. Se você ainda não tiver feito isso, crie um tópico do Amazon SNS e inscreva-se nele. Para obter maisinformações, consulte Conceitos básicos no Guia do desenvolvedor do Amazon Simple NotificationService.

2. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.3. No painel de navegação, escolha Configuration Sets.4. Escolha um conjunto de configurações da lista. Se a lista estiver vazia, você primeiro deve criar um

conjunto de configurações (p. 284).5. Em Add Destination, escolha Select a destination type e escolha SNS.6. Em Name, digite um nome para o destino de evento.7. Em Event types, selecione ao menos um tipo de evento para publicar no destino de evento:

• Sends (Envios) – a chamada para o Amazon SES foi bem-sucedida, e o Amazon SES tentaráentregar o e-mail.

• Rejects (Rejeições) – o Amazon SES aceitou o e-mail, determinou que ele continha vírus e orejeitou. O Amazon SES não tentou entregar o e-mail ao servidor de e-mail do destinatário.

• Bounces (Devoluções) – o servidor de e-mail do destinatário rejeitou definitivamente o e-mail. Esteevento corresponde a hard bounces. Devoluções flexíveis só são incluídas quando o Amazon SESdeixa de entregar o e-mail depois de tentar novamente por um período.

• Complaints (Reclamações) – o e-mail foi entregue com êxito ao destinatário. O destinatário marcouo e-mail como spam.

• Deliveries (Entregas) – o Amazon SES entregou com êxito o e-mail ao servidor de e-mail dodestinatário.

• Opens (Aberturas) – o destinatário recebeu a mensagem e a abriu no cliente de e-mail.

290

Page 298: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de publicação de eventos

• Clicks (Cliques) – o destinatário clicou em um ou mais links no e-mail.• Rendering Failures (Falhas de renderização) – o e-mail não foi enviado devido a um problema

de renderização do modelo. Esse tipo de evento só ocorre quando você envia e-mail usando asoperações de API SendTemplatedEmail ou SendBulkTemplatedEmail. Esse tipo de evento podeocorrer quando estão faltando dados no modelo ou quando há uma incompatibilidade entre osparâmetros e os dados do modelo.

8. Selecione Enabled.9. Em Topic (Tópico), selecione um tópico existente do Amazon SNS ou escolha Create new topic (Criar

novo tópico) para criar um.

Para obter informações sobre como criar um tópico, consulte Criar um tópico no Guia dodesenvolvedor do Amazon Simple Notification Service.

10. Escolha Salvar.

Etapa 3: Enviar e-mail usando a publicação de evento doAmazon SESDepois de criar um conjunto de configurações (p. 284) e adicionar um destino de evento (p. 284), aúltima etapa na publicação de evento será enviar seus e-mails.

Para publicar eventos associados a um e-mail, informe o nome do conjunto de configurações para associarao e-mail. Como opção, informe as tags de mensagens para classificar o e-mail.

Forneça essas informações para o Amazon SES como parâmetros para a API de envio de e-mail,cabeçalhos específicos de e-mail do Amazon SES ou cabeçalhos personalizados em sua mensagemMIME. O método escolhido depende da interface de envio de e-mail que você usa, como mostrado natabela a seguir.

Interface de envio de e-mails Formas de publicar eventos

SendEmail Parâmetros de API

SendRawEmail Parâmetros de API, cabeçalhos específicos dee-mail do Amazon SES ou cabeçalhos MIMEpersonalizados

Important

Se você especificar tags de mensagensusando os cabeçalhos e os parâmetrosda API, o Amazon SES usará apenasas tags de mensagens fornecidas pelosparâmetros da API. O Amazon SES nãoune tags de mensagens especificadaspelos parâmetros da API e cabeçalhos.

Interface SMTP Cabeçalhos de e-mail específicos do Amazon SES

As seções a seguir descrevem como especificar o conjunto de configurações e as tags de mensagensusando cabeçalhos e parâmetros de API.

• Uso de parâmetros de API do Amazon SES (p. 292)• Uso de cabeçalhos de e-mail específicos do Amazon SES (p. 292)• Uso de cabeçalhos de e-mail personalizados (p. 292)

291

Page 299: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorConfiguração de publicação de eventos

Além disso, este guia contém vários exemplos de códigos que demonstram como enviar e-mails de formaprogramática com o Amazon SES. Cada um desses exemplos de código inclui um método de passarum conjunto de configurações ao enviar um e-mail. Para obter mais informações, consulte Amazon SESExemplos de código (p. 409).

Note

Opcionalmente, você pode incluir as tags de mensagens nos cabeçalhos de seus e-mails. Tagsde mensagens podem incluir números de 0–9, as letras A–Z (letras maiúsculas e minúsculas),hífens (-) e sublinhados (_).

Uso de parâmetros de API do Amazon SESPara usar SendEmail ou SendRawEmail com a publicação de evento, especifique o conjunto deconfigurações e as tags de mensagens ao transmitir estruturas de dados chamadas de ConfigurationSet eMessageTag para a chamada de API.

Para obter mais informações sobre como usar a API do Amazon SES, consulte a Amazon Simple EmailService API Reference.

Uso de cabeçalhos de e-mail específicos do Amazon SESAo usar SendRawEmail ou a interface SMTP, especifique o conjunto de configurações e as tags demensagens adicionando cabeçalhos específicos do Amazon SES ao e-mail. O Amazon SES remove oscabeçalhos antes de enviar o e-mail. A tabela a seguir mostra os nomes dos cabeçalhos para usar.

Informações de publicação de eventos Cabeçalho

Conjunto de configurações X-SES-CONFIGURATION-SET

Tags de mensagens X-SES-MESSAGE-TAGS

O exemplo a seguir mostra como os cabeçalhos podem aparecer em um e-mail bruto que você envia parao Amazon SES.

X-SES-MESSAGE-TAGS: tagName1=tagValue1, tagName2=tagValue2X-SES-CONFIGURATION-SET: myConfigurationSetFrom: [email protected]: [email protected]: SubjectContent-Type: multipart/alternative; boundary="----=_boundary"

------=_boundaryContent-Type: text/plain; charset=UTF-8Content-Transfer-Encoding: 7bit

body------=_boundaryContent-Type: text/html; charset=UTF-8Content-Transfer-Encoding: 7bit

body------=_boundary--

Uso de cabeçalhos de e-mail personalizadosEmbora seja necessário especificar o nome do conjunto de configurações usando o cabeçalho X-SES-CONFIGURATION-SET específico do Amazon SES, você pode especificar tags de mensagens usandoseus próprios cabeçalhos MIME.

292

Page 300: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Note

Os nomes e os valores de cabeçalho que você usa para publicação de evento do Amazon SESdevem estar em ASCII. Se você especificar um nome do cabeçalho ou valor para a publicaçãode evento do Amazon SES não ASCII, a chamada de envio de e-mail ainda acontecerá, mas asmétricas de eventos não serão emitidas para o Amazon CloudWatch.

Trabalhar com dados de eventos do Amazon SESDepois de configurar o evento de publicação (p. 284) e especificar um conjunto de configuraçõespara envio de e-mails, você poderá recuperar os eventos de envio de e-mail do destino do evento queespecificou ao fazer o conjunto de configurações associado ao e-mail.

Esta seção descreve como recuperar seus eventos de envio de e-mail do Amazon CloudWatch e doAmazon Kinesis Data Firehose e como interpretar dados de eventos fornecidos pelo Amazon SNS.

• Recuperação de dados de eventos do Amazon SES no CloudWatch (p. 293)• Recuperação de dados de eventos do Amazon SES no Kinesis Data Firehose (p. 294)• Interpretação de dados de evento do Amazon SES pelo Amazon SNS (p. 312)

Recuperação de dados de eventos do Amazon SES noCloudWatchO Amazon SES pode publicar métricas para seus eventos de envio de e-mail no Amazon CloudWatch.Quando você publica dados de eventos no CloudWatch, ele fornece essas métricas como um conjuntoordenado de dados de séries temporais. Você pode usar essas métricas para monitorar o desempenhodo envio de e-mails. Por exemplo, você pode monitorar a métrica de reclamação e definir um alarme doCloudWatch para ser acionado quando a métrica exceder determinado valor.

Há dois níveis de granularidade na qual o Amazon SES pode publicar esses eventos no CloudWatch:

• Através de sua conta da AWS – essas métricas aproximadas, que correspondem às métricasmonitoradas usando o console do Amazon SES e a API GetSendStatistics, são totais em toda asua conta da AWS. O Amazon SES publica essas métricas no CloudWatch automaticamente.

• Minucioso – essas métricas são categorizadas por características de e-mail definidas usando as tagsde mensagem. Para publicar essas métricas no CloudWatch, é necessário configurar a publicaçãode eventos (p. 284) com um destino de evento do CloudWatch e especificar um conjunto deconfigurações (p. 291) ao enviar um e-mail. Você também pode especificar tags de mensagens ouusar tags automáticas (p. 282) que o Amazon SES fornece automaticamente.

Esta seção descreve as métricas disponíveis e como visualizá-las no CloudWatch.

Métricas disponíveisVocê pode publicar as seguintes métricas de e-mail do Amazon SES no CloudWatch:

• Sends (Envios) – a chamada para o Amazon SES foi bem-sucedida, e o Amazon SES tentará entregar oe-mail.

• Rejects (Rejeições) – o Amazon SES aceitou o e-mail, determinou que ele continha vírus e o rejeitou. OAmazon SES não tentou entregar o e-mail ao servidor de e-mail do destinatário.

• Bounces (Devoluções) – o servidor de e-mail do destinatário rejeitou definitivamente o e-mail. Esteevento corresponde a hard bounces. Devoluções flexíveis só são incluídas quando o Amazon SES deixade entregar o e-mail depois de tentar novamente por um período.

• Complaints (Reclamações) – o e-mail foi entregue com êxito ao destinatário. O destinatário marcou o e-mail como spam.

293

Page 301: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

• Deliveries (Entregas) – o Amazon SES entregou com êxito o e-mail ao servidor de e-mail do destinatário.• Opens (Aberturas) – o destinatário recebeu a mensagem e a abriu no cliente de e-mail.• Clicks (Cliques) – o destinatário clicou em um ou mais links no e-mail.• Rendering Failures (Falhas de renderização) – o e-mail não foi enviado devido a um problema de

renderização do modelo. Esse tipo de evento só ocorre quando você envia e-mail usando as operaçõesde API SendTemplatedEmail ou SendBulkTemplatedEmail. Esse tipo de evento pode ocorrer quandoestão faltando dados no modelo ou quando há uma incompatibilidade entre os parâmetros e os dadosdo modelo.

Dimensões disponíveisO CloudWatch usa os nomes de dimensão especificados ao adicionar um destino de evento doCloudWatch a uma configuração definida no Amazon SES. Para obter mais informações, consulteConfigurar um destino de evento do CloudWatch para publicação de eventos do Amazon SES (p. 285).

Visualização das métricas do Amazon SES no console do CloudWatchO procedimento a seguir descreve como visualizar suas métricas de publicação de eventos do AmazonSES usando o console do CloudWatch.

Para visualizar as métricas usando o console do CloudWatch

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudWatch em https://console.aws.amazon.com/cloudwatch/.

2. Se necessário, altere a região. Na barra de navegação, selecione a região em que os seus recursosda AWS residem. Para obter mais informações, consulte Regiões e endpoints.

3. No painel de navegação, selecione Métricas.4. No painel All metrics, expanda AWS Namespaces e, em seguida, escolha SES.5. Para visualizar métricas em toda a sua conta da AWS, que o Amazon SES publica automaticamente,

selecione Account Sending Metrics (Métricas de envio da conta). Para ver métricas de publicação deeventos (p. 282) minuciosas, selecione a combinação de dimensões especificada ao configurar seuevento de destino do CloudWatch (p. 285).

6. Escolha a métrica que você deseja visualizar.

O gráfico exibirá a métrica ao longo do tempo.

Para visualizar métricas usando o AWS CLI

• Em um prompt de comando, use o seguinte comando:

aws cloudwatch list-metrics --namespace "AWS/SES"

Recuperação de dados de eventos do Amazon SES no KinesisData FirehoseO Amazon SES publica os eventos de envio de e-mail no Kinesis Data Firehose como registros JSON.Em seguida, o Kinesis Data Firehose publica os registros no destino do serviço da AWS que vocêescolheu quando configurou o fluxo de entrega no Kinesis Data Firehose. Para obter informações sobrea configuração de fluxos de entrega do Kinesis Data Firehose, consulte Criar um fluxo de entrega doAmazon Kinesis Firehose no Guia do desenvolvedor do Amazon Kinesis Data Firehose.

Para obter exemplos de como você pode usar o Kinesis Data Firehose para publicar seu eventos de enviode e-mail no Amazon Redshift e no Amazon Elasticsearch Service, consulte Tutoriais (p. 330).

294

Page 302: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Para obter uma descrição do conteúdo do registro para registros de exemplo, consulte as seções a seguir.

• Conteúdo de registo de evento (p. 295)• Exemplos de registro de evento (p. 302)

Conteúdo de dados de eventos do Amazon SES publicados no Kinesis DataFirehoseO Amazon SES publica registros de evento de envio de e-mail no Amazon Kinesis Data Firehose emformato JSON. Ao publicar eventos no Kinesis Data Firehose, o Amazon SES segue cada registro JSONcom um caractere de nova linha.

O objeto JSON de nível superior contém uma string eventType, um objeto mail e um objeto bounce,complaint, delivery, send, reject, open ou click, dependendo do tipo de evento.

Consulte as seções a seguir para obter descrições dos diferentes tipos de objetos:

• Objeto JSON de nível superior (p. 295)• Objeto mail (p. 296)• Objeto bounce (p. 297)• Objeto complaint (p. 299)• Objeto delivery (p. 301)• Objeto send (p. 301)• Objeto reject (p. 301)• Objeto open (p. 302)• Objeto click (p. 302)

Objeto JSON de nível superior

O objeto JSON de nível superior em um registro de evento de envio de e-mail contém os campos a seguir.

Nome do campo Descrição

eventType Uma string que descreve o tipo de evento.Os valores possíveis são: Delivery, Send,Reject, Open, Click, Bounce, Complaint ouRendering Failure.

mail Um objeto JSON que contém informações sobre oe-mail que produziu o evento.

bounce Esse campo estará presente apenas seeventType for Bounce. Ele contém informaçõessobre a devolução.

complaint Esse campo estará presente apenas seeventType for Complaint. Ele contéminformações sobre a reclamação.

delivery Esse campo estará presente apenas seeventType for Delivery. Ele contéminformações sobre a entrega.

send Esse campo estará presente apenas seeventType for Send.

295

Page 303: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

reject Esse campo estará presente apenas seeventType for Reject. Ele contém informaçõessobre a rejeição.

open Esse campo estará presente apenas seeventType for Open. Ele contém informaçõessobre o evento aberto.

click Esse campo estará presente apenas seeventType for Click. Ele contém informaçõessobre o evento de clique.

failure Esse campo estará presente apenas seeventType for Rendering Failure. Elecontém informações sobre o evento de Falha derenderização.

Objeto de e-mail

Cada registro de evento de envio de e-mail contém informações sobre o e-mail original no objeto mail. Oobjeto JSON que contém informações sobre um objeto mail tem os seguintes campos.

Nome do campo Descrição

timestamp A data e a hora, no formato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ), em que a mensagem foienviada.

messageId Um ID exclusivo que o Amazon SES atribuiu àmensagem. O Amazon SES retornou esse valorquando você enviou a mensagem.

Note

Esse ID de mensagem foi atribuído peloAmazon SES. Você pode encontrar oID da mensagem do e-mail original noscampos headers e commonHeaders doobjeto mail.

source O endereço de e-mail do qual a mensagem foienviada (o endereço MAIL FROM no envelope).

sourceArn O nome de recurso da Amazon (ARN) daidentidade que foi usada para enviar o e-mail. Nocaso de autorização de envio, o sourceArn é oARN da identidade que o proprietário de identidadeautorizou o remetente delegado a usar para enviaro e-mail. Para obter mais informações sobre aautorização de envio, consulte Uso de autorizaçãode envio (p. 153).

sendingAccountId O ID da conta da AWS da conta que foi usada paraenviar o e-mail. No caso de autorização de envio,sendingAccountId é o ID da conta do remetentedelegado.

296

Page 304: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

destination Uma lista de endereços de e-mail que foramdestinatários da mensagem original.

headersTruncated Uma string que especifica se os cabeçalhos foramtruncados na notificação, o que ocorre se oscabeçalhos tiverem mais de 10 KB. Os possíveisvalores são true e false.

headers Uma lista com os cabeçalhos originais do e-mail.Cada cabeçalho tem um campo name e um campovalue.

Note

Qualquer ID de mensagem no campoheaders é da mensagem original quevocê passou ao Amazon SES. O IDda mensagem que o Amazon SESsubsequentemente atribuiu à mensagemestá no campo messageId do objetomail.

commonHeaders Uma lista com os cabeçalhos de e-mail originaise comumente utilizados. Cada cabeçalho tem umcampo name e um campo value.

Note

Qualquer ID de mensagem no campocommonHeaders é da mensagem originalque você passou ao Amazon SES. OID da mensagem que o Amazon SESsubsequentemente atribuiu à mensagemestá no campo messageId do objetomail.

Objeto de devolução

O objeto JSON que contém informações sobre um evento Bounce tem sempre os seguintes campos.

Nome do campo Descrição

bounceType O tipo de devolução, conforme determinado peloAmazon SES.

bounceSubType O subtipo da devolução, conforme determinadopelo Amazon SES.

bouncedRecipients Uma lista que contém informações sobre osdestinatários da mensagem original que foidevolvida.

timestamp A data e a hora, no formato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ), em que a notificação dedevolução foi enviada pelo ISP.

297

Page 305: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

feedbackId Um ID exclusivo para a devolução.

reportingMTA O valor do campo Reporting-MTA a partirdo DSN. Esse é o valor da Message TransferAuthority (MTA) que tentou executar a operaçãode entrega, transmissão ou gateway descritas noDSN.

Note

Esse campo só será exibido se umanotificação do status de entrega (DSN)tiver sido conectada à devolução.

Destinatários devolvidos

Um evento de devolução pode pertencer a um único destinatário ou a vários destinatários. O campobouncedRecipients contém uma lista de objetos — um objeto por destinatário a quem o evento dedevolução pertence — e sempre conterá o seguinte campo.

Nome do campo Descrição

emailAddress O endereço de e-mail do destinatário. Se um DSNestiver disponível, esse será o valor do campoFinal-Recipient do DSN.

Opcionalmente, se um DSN estiver conectado à devolução, os seguintes campos também poderão estarpresentes.

Nome do campo Descrição

action O valor do campo Action a partir do DSN. Issoindica a ação realizada pelo MTA que gera orelatório como resultado da sua tentativa de enviara mensagem a esse destinatário.

status O valor do campo Status a partir do DSN. Esseé o código de status independente do transportepor destinatário que indica o status de entrega damensagem.

diagnosticCode O código de status emitido pelo MTA de relatório.Esse é o valor do campo Diagnostic-Code apartir do DSN. Esse campo pode estar ausente noDSN (e, portanto, também ausente no JSON).

Tipos de devolução

Cada evento de devolução será de um dos tipos mostrados na tabela a seguir.

O sistema de publicação de eventos só publica devoluções definitivas e devoluções flexíveis que nãoserão mais repetidas pelo Amazon SES. Ao receber devoluções marcadas como Permanent, remova os

298

Page 306: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

endereços de e-mail correspondentes da sua lista de e-mails; não será possível enviar para eles no futuro.As devoluções Transient são enviadas a você quando uma mensagem é devolvida de modo flexíveldiversas vezes e o Amazon SES para de tentar enviá-la novamente. Você talvez consiga reenviar comsucesso para um endereço que inicialmente resultou em uma devolução Transient no futuro.

bounceType bounceSubType Descrição

Undetermined Undetermined O Amazon SES não foi capaz de determinar omotivo específico da devolução.

Permanent General O Amazon SES recebeu uma devolução definitivageral. Se você receber esse tipo de devolução,deverá remover o endereço de e-mail dodestinatário da sua lista de correspondência.

Permanent NoEmail O Amazon SES recebeu uma devolução definitivapermanente, pois o endereço de e-mail dedestino não existe. Se você receber esse tipo dedevolução, deverá remover o endereço de e-maildo destinatário da sua lista de correspondência.

Permanent Suppressed O Amazon SES suprimiu o envio para esteendereço, pois ele tem um histórico recente dedevolução como endereço inválido. Para obterinformações sobre como remover um endereçoda lista de supressões, consulte Usar a lista desupressão global do Amazon SES (p. 192).

Permanent OnAccountSuppressionList O Amazon SES suprimiu o envio para esteendereço porque ele está na lista de supressão nonível da conta (p. 189).

Transient General O Amazon SES recebeu uma devolução geral.Você pode enviar com êxito para esse destinatáriono futuro.

Transient MailboxFull O Amazon SES recebeu uma devolução de caixapostal cheia. Você pode enviar com êxito paraesse destinatário no futuro.

Transient MessageTooLarge O Amazon SES recebeu uma devolução demensagem muito grande. Você pode enviar comêxito a esse destinatário se reduzir o tamanho damensagem.

Transient ContentRejected O Amazon SES recebeu uma devolução deconteúdo rejeitado. Você pode enviar com êxitoa esse destinatário se alterar o conteúdo damensagem.

Transient AttachmentRejected O Amazon SES recebeu uma devolução de anexorejeitado. Você pode enviar com êxito a essedestinatário se remover ou alterar o anexo.

Objeto de reclamação

O objeto JSON que contém informações sobre um evento Complaint tem os seguintes campos.

299

Page 307: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

complainedRecipients Uma lista que contém informações sobre osdestinatários que podem ter enviado a reclamação.

timestamp A data e a hora, no formato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ), em que a notificação dereclamação foi enviada pelo ISP.

feedbackId Um ID exclusivo para a reclamação.

complaintSubType O subtipo da reclamação, conforme determinadopelo Amazon SES.

Além disso, se um relatório de feedback estiver conectado à reclamação, os campos a seguir poderãoestar presentes.

Nome do campo Descrição

userAgent O valor do campo User-Agent do relatório defeedback. Isso indica o nome e versão do sistemaque gerou o relatório.

complaintFeedbackType O valor do campo Feedback-Type do relatório defeedback recebido do ISP. Aí está contido o tipo defeedback.

arrivalDate O valor do campo Arrival-Date ou Received-Date do relatório de feedback no formato ISO8601(AAAA-MM-DDThh:mm:ss.sZ). Esse campo podeestar ausente no relatório (e, portanto, tambémausente no JSON).

Destinatários que reclamaram

O campo complainedRecipients contém uma lista de destinatários que podem ter enviado areclamação.

Important

Como a maioria dos ISPs redige o endereço de e-mail do destinatário que enviou a reclamaçãode sua notificação de reclamação, esta lista contém informações sobre os destinatários quepodem ter enviado a reclamação, com base nos destinatários da mensagem original e o ISP doqual recebemos a reclamação. O Amazon SES executa uma consulta em relação a mensagemoriginal para determinar a lista de destinatários.

Os objetos JSON desta lista contêm o seguinte campo.

Nome do campo Descrição

emailAddress O endereço de e-mail do destinatário.

Tipos de reclamação

Você pode ver os seguintes tipos de reclamação no campo complaintFeedbackType conformeatribuído pelo ISP que gerou o relatório, de acordo com o site da Internet Assigned Numbers Authority:

300

Page 308: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

abuse Indica e-mail não solicitado ou algum outro tipo deabuso de e-mail.

auth-failure Relatório de falha de autenticação de e-mail.

fraud Indica algum tipo de atividade de phishing oufraude.

not-spam Indica que a entidade que fornece o relatório nãoconsidera a mensagem como spam. Isso podeser usado para corrigir uma mensagem que foiincorretamente marcada ou classificada comospam.

other Indica qualquer outro feedback que não se adequaa outros tipos registrados.

virus Reporta que um vírus foi encontrado na mensagemde origem.

Objeto de entrega

O objeto JSON que contém informações sobre um evento Delivery tem sempre os seguintes campos.

Nome do campo Descrição

timestamp A data e hora em que o Amazon SES entregouo e-mail ao servidor de e-mail do destinatário, noformato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ).

processingTimeMillis O tempo em milissegundos entre quando oAmazon SES aceitou a solicitação do remetenteaté quando o Amazon SES passou a mensagempara o servidor de e-mail do destinatário.

recipients Uma lista dos destinatários previstos à qual oevento de entrega se aplica.

smtpResponse A mensagem de resposta SMTP do ISP remotoque aceitou o e-mail do Amazon SES. Estamensagem poderá variar por e-mail, porservidor de e-mail de recebimento e por ISP derecebimento.

reportingMTA O nome de host do servidor de e-mail do AmazonSES que enviou o e-mail.

Objeto de envio

O objeto JSON que contém informações sobre um evento send está sempre vazio.

Objeto de rejeição

O objeto JSON que contém informações sobre um evento Reject tem sempre os seguintes campos.

301

Page 309: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

reason O motivo pelo qual o e-mail foi rejeitado. O únicovalor possível é Bad content, o que significaque o Amazon SES detectou que o e-mail continhavírus. Quando uma mensagem é rejeitada, oAmazon SES interrompe o seu processamentoe não tenta entregá-la ao servidor de e-mail dodestinatário.

Objeto de abertura

O objeto JSON que contém informações sobre um evento Open tem sempre os seguintes campos.

Nome do campo Descrição

ipAddress O endereço IP do destinatário.

timestamp A data e horário em que o evento ocorreu, noformato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ).

userAgent O agente do usuário do dispositivo ou cliente de e-mail que o destinatário usou para abrir o e-mail.

Objeto de clique

O objeto JSON que contém informações sobre um evento Click tem sempre os seguintes campos.

Nome do campo Descrição

ipAddress O endereço IP do destinatário.

timestamp A data e horário em que o evento de clique, noformato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ).

userAgent O agente do usuário do cliente que o destinatáriousou para clicar em um link no e-mail.

link O URL do link em que o destinatário clicou.

linkTags Uma lista de tags que foram adicionadas ao linkusando o atributo ses:tags. Para obter maisinformações sobre como adicionar tags aos linksnos seus e-mails, consulte P5. Posso usar tags emlinks com identificadores exclusivos? (p. 495) noPerguntas frequentes sobre métricas de envio dee-mails do Amazon SES (p. 493).

Exemplos de dados de eventos do Amazon SES publicados no Kinesis DataFirehose

Esta seção fornece exemplos de cada tipo de registro de evento de envio de e-mail que o Amazon SESpublica no Kinesis Data Firehose.

302

Page 310: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Os tipos de evento são os seguintes:

• Registro de devolução (p. 303)• Registro de reclamação (p. 304)• Registro de entrega (p. 305)• Registro de e-mail de envio (p. 307)• Registro de evento de rejeição (p. 308)• Registro de evento de abertura (p. 309)• Registro de evento de clique (p. 310)

Registro de devolução

A seguir encontra-se um exemplo de um registro de evento bounce que o Amazon SES publica no KinesisData Firehose.

{ "eventType":"Bounce", "bounce":{ "bounceType":"Permanent", "bounceSubType":"General", "bouncedRecipients":[ { "emailAddress":"[email protected]", "action":"failed", "status":"5.1.1", "diagnosticCode":"smtp; 550 5.1.1 user unknown" } ], "timestamp":"2017-08-05T00:41:02.669Z", "feedbackId":"01000157c44f053b-61b59c11-9236-11e6-8f96-7be8aexample-000000", "reportingMTA":"dsn; mta.example.com" }, "mail":{ "timestamp":"2017-08-05T00:40:02.012Z", "source":"Sender Name <[email protected]>", "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId":"123456789012", "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination":[ "[email protected]" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"Sender Name <[email protected]>" }, { "name":"To", "value":"[email protected]" }, { "name":"Subject", "value":"Message sent from Amazon SES" }, { "name":"MIME-Version", "value":"1.0" }, { "name":"Content-Type",

303

Page 311: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"value":"multipart/alternative; boundary=\"----=_Part_7307378_1629847660.1516840721503\"" } ], "commonHeaders":{ "from":[ "Sender Name <[email protected]>" ], "to":[ "[email protected]" ], "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject":"Message sent from Amazon SES" }, "tags":{ "ses:configuration-set":[ "ConfigSet" ], "ses:source-ip":[ "192.0.2.0" ], "ses:from-domain":[ "example.com" ], "ses:caller-identity":[ "ses_user" ] } }}

Registro de reclamação

A seguir encontra-se um exemplo de um registro de evento complaint que o Amazon SES publica noKinesis Data Firehose.

{ "eventType":"Complaint", "complaint": { "complainedRecipients":[ { "emailAddress":"[email protected]" } ], "timestamp":"2017-08-05T00:41:02.669Z", "feedbackId":"01000157c44f053b-61b59c11-9236-11e6-8f96-7be8aexample-000000", "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36", "complaintFeedbackType":"abuse", "arrivalDate":"2017-08-05T00:41:02.669Z" }, "mail":{ "timestamp":"2017-08-05T00:40:01.123Z", "source":"Sender Name <[email protected]>", "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId":"123456789012", "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination":[ "[email protected]" ], "headersTruncated":false, "headers":[ { "name":"From",

304

Page 312: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"value":"Sender Name <[email protected]>" }, { "name":"To", "value":"[email protected]" }, { "name":"Subject", "value":"Message sent from Amazon SES" }, { "name":"MIME-Version","value":"1.0" }, { "name":"Content-Type", "value":"multipart/alternative; boundary=\"----=_Part_7298998_679725522.1516840859643\"" } ], "commonHeaders":{ "from":[ "Sender Name <[email protected]>" ], "to":[ "[email protected]" ], "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject":"Message sent from Amazon SES" }, "tags":{ "ses:configuration-set":[ "ConfigSet" ], "ses:source-ip":[ "192.0.2.0" ], "ses:from-domain":[ "example.com" ], "ses:caller-identity":[ "ses_user" ] } }}

Registro de entrega

A seguir encontra-se um exemplo de um registro de evento delivery que o Amazon SES publica noKinesis Data Firehose.

{ "eventType": "Delivery", "mail": { "timestamp": "2016-10-19T23:20:52.240Z", "source": "[email protected]", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId": "123456789012", "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination": [ "[email protected]" ], "headersTruncated": false, "headers": [

305

Page 313: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

{ "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "text/html; charset=UTF-8" }, { "name": "Content-Transfer-Encoding", "value": "7bit" } ], "commonHeaders": { "from": [ "[email protected]" ], "to": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:configuration-set": [ "ConfigSet" ], "ses:source-ip": [ "192.0.2.0" ], "ses:from-domain": [ "example.com" ], "ses:caller-identity": [ "ses_user" ], "ses:outgoing-ip": [ "192.0.2.0" ], "myCustomTag1": [ "myCustomTagValue1" ], "myCustomTag2": [ "myCustomTagValue2" ] } }, "delivery": { "timestamp": "2016-10-19T23:21:04.133Z", "processingTimeMillis": 11893, "recipients": [ "[email protected]" ], "smtpResponse": "250 2.6.0 Message received",

306

Page 314: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"reportingMTA": "mta.example.com" }}

Registro de e-mail de envio

A seguir encontra-se um exemplo de um registro de evento send que o Amazon SES publica no KinesisData Firehose.

{ "eventType": "Send", "mail": { "timestamp": "2016-10-14T05:02:16.645Z", "source": "[email protected]", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId": "123456789012", "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination": [ "[email protected]" ], "headersTruncated": false, "headers": [ { "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/mixed; boundary=\"----=_Part_0_716996660.1476421336341\"" }, { "name": "X-SES-MESSAGE-TAGS", "value": "myCustomTag1=myCustomTagValue1, myCustomTag2=myCustomTagValue2" } ], "commonHeaders": { "from": [ "[email protected]" ], "to": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:configuration-set": [ "ConfigSet" ], "ses:source-ip": [ "192.0.2.0" ],

307

Page 315: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"ses:from-domain": [ "example.com" ], "ses:caller-identity": [ "ses_user" ], "myCustomTag1": [ "myCustomTagValue1" ], "myCustomTag2": [ "myCustomTagValue2" ] } }, "send": {}}

Registro de evento de rejeição

A seguir encontra-se um exemplo de um registro de evento reject que o Amazon SES publica no KinesisData Firehose.

{ "eventType": "Reject", "mail": { "timestamp": "2016-10-14T17:38:15.211Z", "source": "[email protected]", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId": "123456789012", "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination": [ "[email protected]" ], "headersTruncated": false, "headers": [ { "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/mixed; boundary=\"qMm9M+Fa2AknHoGS\"" }, { "name": "X-SES-MESSAGE-TAGS", "value": "myCustomTag1=myCustomTagValue1, myCustomTag2=myCustomTagValue2" } ], "commonHeaders": { "from": [ "[email protected]" ],

308

Page 316: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"to": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:configuration-set": [ "ConfigSet" ], "ses:source-ip": [ "192.0.2.0" ], "ses:from-domain": [ "example.com" ], "ses:caller-identity": [ "ses_user" ], "myCustomTag1": [ "myCustomTagValue1" ], "myCustomTag2": [ "myCustomTagValue2" ] } }, "reject": { "reason": "Bad content" }}

Registro de evento de abertura

A seguir encontra-se um exemplo de um registro de evento open que o Amazon SES publica no KinesisData Firehose.

{ "eventType": "Open", "mail": { "commonHeaders": { "from": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES", "to": [ "[email protected]" ] }, "destination": [ "[email protected]" ], "headers": [ { "name": "X-SES-CONFIGURATION-SET", "value": "ConfigSet" }, { "name":"X-SES-MESSAGE-TAGS", "value":"myCustomTag1=myCustomValue1, myCustomTag2=myCustomValue2" }, { "name": "From",

309

Page 317: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/alternative; boundary=\"XBoundary\"" } ], "headersTruncated": false, "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "sendingAccountId": "123456789012", "source": "[email protected]", "tags": { "myCustomTag1":[ "myCustomValue1" ], "myCustomTag2":[ "myCustomValue2" ], "ses:caller-identity": [ "ses-user" ], "ses:configuration-set": [ "ConfigSet" ], "ses:from-domain": [ "example.com" ], "ses:source-ip": [ "192.0.2.0" ] }, "timestamp": "2017-08-09T21:59:49.927Z" }, "open": { "ipAddress": "192.0.2.1", "timestamp": "2017-08-09T22:00:19.652Z", "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_3 like Mac OS X) AppleWebKit/603.3.8 (KHTML, like Gecko) Mobile/14G60" }}

Registro de evento de clique

A seguir encontra-se um exemplo de um registro de evento click que o Amazon SES publica no KinesisData Firehose.

{ "eventType": "Click", "click": { "ipAddress": "192.0.2.1", "link": "http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp.html", "linkTags": {

310

Page 318: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"samplekey0": [ "samplevalue0" ], "samplekey1": [ "samplevalue1" ] }, "timestamp": "2017-08-09T23:51:25.570Z", "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36" }, "mail": { "commonHeaders": { "from": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES", "to": [ "[email protected]" ] }, "destination": [ "[email protected]" ], "headers": [ { "name": "X-SES-CONFIGURATION-SET", "value": "ConfigSet" }, { "name":"X-SES-MESSAGE-TAGS", "value":"myCustomTag1=myCustomValue1, myCustomTag2=myCustomValue2" }, { "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/alternative; boundary=\"XBoundary\"" }, { "name": "Message-ID", "value": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000" } ], "headersTruncated": false, "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "sendingAccountId": "123456789012", "source": "[email protected]", "tags": { "myCustomTag1":[ "myCustomValue1"

311

Page 319: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

], "myCustomTag2":[ "myCustomValue2" ], "ses:caller-identity": [ "ses_user" ], "ses:configuration-set": [ "ConfigSet" ], "ses:from-domain": [ "example.com" ], "ses:source-ip": [ "192.0.2.0" ] }, "timestamp": "2017-08-09T23:50:05.795Z" }}

Interpretação de dados de evento do Amazon SES pelo AmazonSNSO Amazon SES publica os eventos de envio de e-mail no Amazon Simple Notification Service (AmazonSNS) na forma de registros JSON. O Amazon SNS então, entrega notificações aos endpoints inscritos notópico do Amazon SNS associado ao evento de destino. Para obter informações sobre a configuração detópicos e assinaturas no Amazon SNS, consulte Conceitos básicos no Guia do desenvolvedor do AmazonSimple Notification Service.

Para obter uma descrição do conteúdo do registro para registros de exemplo, consulte as seções a seguir.

• Conteúdo de registo de evento (p. 312)• Exemplos de registro de evento (p. 320)

Conteúdo de dados de eventos do Amazon SES publicados no Amazon SNS

O Amazon SES publica registros de evento de envio de e-mail no Amazon Simple Notification Service emformato JSON.

O objeto JSON de nível superior contém uma eventType string, um objeto mail e um objeto bounce,complaint, delivery, send, reject, open, click ou failure, dependendo do tipo de evento.

Tópicos nesta seção:• Objeto JSON de nível superior (p. 313)• Objeto de e-mail (p. 313)• Objeto de devolução (p. 315)• Objeto de reclamação (p. 317)• Objeto de entrega (p. 319)• Objeto de envio (p. 319)• Objeto de rejeição (p. 319)• Objeto de abertura (p. 320)• Objeto de clique (p. 320)• Objeto de falha (p. 320)

312

Page 320: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Objeto JSON de nível superior

O objeto JSON de nível superior em um registro de evento de envio de e-mail contém os campos a seguir.

Nome do campo Descrição

eventType Uma string que descreve o tipo de evento.Os valores possíveis são: Delivery, Send,Reject, Open, Click, Bounce, Complaint ouRendering Failure.

mail Um objeto JSON que contém informações sobre oe-mail que produziu o evento.

bounce Esse campo estará presente apenas seeventType for Bounce. Ele contém informaçõessobre a devolução.

complaint Esse campo estará presente apenas seeventType for Complaint. Ele contéminformações sobre a reclamação.

delivery Esse campo estará presente apenas seeventType for Delivery. Ele contéminformações sobre a entrega.

send Esse campo estará presente apenas seeventType for Send.

reject Esse campo estará presente apenas seeventType for Reject. Ele contém informaçõessobre a rejeição.

open Esse campo estará presente apenas seeventType for Open. Ele contém informaçõessobre o evento aberto.

click Esse campo estará presente apenas seeventType for Click. Ele contém informaçõessobre o evento de clique.

failure Esse campo estará presente apenas seeventType for Rendering Failure. Elecontém informações sobre o evento de Falha derenderização.

Objeto de e-mail

Cada registro de evento de envio de e-mail contém informações sobre o e-mail original no objeto mail. Oobjeto JSON que contém informações sobre um objeto mail tem os seguintes campos.

Nome do campo Descrição

timestamp A data e a hora, no formato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ), em que a mensagem foienviada.

313

Page 321: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

messageId Um ID exclusivo que o Amazon SES atribuiu àmensagem. O Amazon SES retornou esse valorquando você enviou a mensagem.

Note

Esse ID de mensagem foi atribuído peloAmazon SES. Você pode encontrar oID da mensagem do e-mail original noscampos headers e commonHeaders doobjeto mail.

source O endereço de e-mail do qual a mensagem foienviada (o endereço MAIL FROM no envelope).

sourceArn O nome de recurso da Amazon (ARN) daidentidade que foi usada para enviar o e-mail. Nocaso de autorização de envio, o sourceArn é oARN da identidade que o proprietário de identidadeautorizou o remetente delegado a usar para enviaro e-mail. Para obter mais informações sobre aautorização de envio, consulte Uso de autorizaçãode envio (p. 153).

sendingAccountId O ID da conta da AWS da conta que foi usada paraenviar o e-mail. No caso de autorização de envio,sendingAccountId é o ID da conta do remetentedelegado.

destination Uma lista de endereços de e-mail que foramdestinatários da mensagem original.

headersTruncated Uma string que especifica se os cabeçalhos foramtruncados na notificação, o que ocorre se oscabeçalhos tiverem mais de 10 KB. Os possíveisvalores são true e false.

headers Uma lista com os cabeçalhos originais do e-mail.Cada cabeçalho tem um campo name e um campovalue.

Note

Qualquer ID de mensagem no campoheaders é da mensagem original quevocê passou ao Amazon SES. O IDda mensagem que o Amazon SESsubsequentemente atribuiu à mensagemestá no campo messageId do objetomail.

314

Page 322: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

commonHeaders Uma lista com os cabeçalhos de e-mail originaise comumente utilizados. Cada cabeçalho tem umcampo name e um campo value.

Note

Qualquer ID de mensagem no campocommonHeaders é da mensagem originalque você passou ao Amazon SES. OID da mensagem que o Amazon SESsubsequentemente atribuiu à mensagemestá no campo messageId do objetomail.

Objeto de devolução

O objeto JSON que contém informações sobre um evento Bounce tem os seguintes campos.

Nome do campo Descrição

bounceType O tipo de devolução, conforme determinado peloAmazon SES.

bounceSubType O subtipo da devolução, conforme determinadopelo Amazon SES.

bouncedRecipients Uma lista que contém informações sobre osdestinatários da mensagem original que foidevolvida.

timestamp A data e a hora, no formato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ), em que a notificação dedevolução foi enviada pelo ISP.

feedbackId Um ID exclusivo para a devolução.

reportingMTA O valor do campo Reporting-MTA a partirdo DSN. Esse é o valor da Message TransferAuthority (MTA) que tentou executar a operaçãode entrega, transmissão ou gateway descritas noDSN.

Note

Esse campo só será exibido se umanotificação do status de entrega (DSN)tiver sido conectada à devolução.

Destinatários devolvidos

Um evento de devolução pode pertencer a um único destinatário ou a vários destinatários. O campobouncedRecipients possui uma lista de objetos – um objeto por destinatário cujo endereço de e-mailproduziu uma devolução – e contém o campo a seguir.

315

Page 323: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

emailAddress O endereço de e-mail do destinatário. Se um DSNestiver disponível, esse será o valor do campoFinal-Recipient do DSN.

Opcionalmente, se um DSN estiver conectado à devolução, os seguintes campos também poderão estarpresentes.

Nome do campo Descrição

action O valor do campo Action a partir do DSN. Issoindica a ação realizada pelo MTA que gera orelatório como resultado da sua tentativa de enviara mensagem a esse destinatário.

status O valor do campo Status a partir do DSN. Esseé o código de status independente do transportepor destinatário que indica o status de entrega damensagem.

diagnosticCode O código de status emitido pelo MTA de relatório.Esse é o valor do campo Diagnostic-Code apartir do DSN. Esse campo pode estar ausente noDSN (e, portanto, também ausente no JSON).

Tipos de devolução

Cada evento de devolução é de um dos tipos mostrados na tabela a seguir.

O sistema de publicação de eventos publica apenas devoluções definitivas e devoluções flexíveis que nãosão mais repetidas pelo Amazon SES. Ao receber devoluções marcadas como Permanent, remova osendereços de e-mail correspondentes da sua lista de e-mails; não será possível enviar para eles no futuro.As devoluções Transient são enviadas a você quando uma mensagem é devolvida de modo flexíveldiversas vezes e o Amazon SES para de tentar enviá-la novamente. Você talvez consiga reenviar comsucesso para um endereço que inicialmente resultou em uma devolução Transient no futuro.

bounceType bounceSubType Descrição

Undetermined Undetermined O Amazon SES não foi capaz de determinar omotivo específico da devolução.

Permanent General O Amazon SES recebeu uma devolução definitivageral. Se você receber esse tipo de devolução,deverá remover o endereço de e-mail dodestinatário da sua lista de correspondência.

Permanent NoEmail O Amazon SES recebeu uma devolução definitivapermanente, pois o endereço de e-mail dedestino não existe. Se você receber esse tipo dedevolução, deverá remover o endereço de e-maildo destinatário da sua lista de correspondência.

Permanent Suppressed O Amazon SES suprimiu o envio para esteendereço, pois ele tem um histórico recente de

316

Page 324: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

bounceType bounceSubType Descriçãodevolução como endereço inválido. Para obterinformações sobre como remover um endereçoda lista de supressões, consulte Usar a lista desupressão global do Amazon SES (p. 192).

Permanent OnAccountSuppressionList O Amazon SES suprimiu o envio para esteendereço porque ele está na lista de supressão nonível da conta (p. 189).

Transient General O Amazon SES recebeu uma devolução geral.Você pode enviar com êxito para esse destinatáriono futuro.

Transient MailboxFull O Amazon SES recebeu uma devolução de caixapostal cheia. Você pode enviar com êxito paraesse destinatário no futuro.

Transient MessageTooLarge O Amazon SES recebeu uma devolução demensagem muito grande. Você pode enviar comêxito a esse destinatário se reduzir o tamanho damensagem.

Transient ContentRejected O Amazon SES recebeu uma devolução deconteúdo rejeitado. Você pode enviar com êxitoa esse destinatário se alterar o conteúdo damensagem.

Transient AttachmentRejected O Amazon SES recebeu uma devolução de anexorejeitado. Você pode enviar com êxito a essedestinatário se remover ou alterar o anexo.

Objeto de reclamação

O objeto JSON que contém informações sobre um evento Complaint tem os seguintes campos.

Nome do campo Descrição

complainedRecipients Uma lista que contém informações sobre osdestinatários que podem ter enviado a reclamação.

timestamp A data e a hora, no formato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ), em que a notificação dereclamação foi enviada pelo ISP.

feedbackId Um ID exclusivo para a reclamação.

complaintSubType O subtipo da reclamação, conforme determinadopelo Amazon SES.

Além disso, se um relatório de feedback estiver conectado à reclamação, os campos a seguir poderãoestar presentes.

317

Page 325: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

userAgent O valor do campo User-Agent do relatório defeedback. Isso indica o nome e versão do sistemaque gerou o relatório.

complaintFeedbackType O valor do campo Feedback-Type do relatório defeedback recebido do ISP. Aí está contido o tipo defeedback.

arrivalDate O valor do campo Arrival-Date ou Received-Date do relatório de feedback no formato ISO8601(AAAA-MM-DDThh:mm:ss.sZ). Esse campo podeestar ausente no relatório (e, portanto, tambémausente no JSON).

Destinatários que reclamaram

O campo complainedRecipients contém uma lista de destinatários que podem ter enviado areclamação.

Important

A maioria dos ISPs redigem endereços de e-mail dos destinatários que enviam reclamações. Poristo, o campo complainedRecipients inclui uma lista de todos aqueles que recebeu o e-mailcujo endereço está no domínio que emitiu a notificação de reclamação.

Os objetos JSON desta lista contêm o seguinte campo.

Nome do campo Descrição

emailAddress O endereço de e-mail do destinatário.

Tipos de reclamação

Você pode ver os seguintes tipos de reclamação no campo complaintFeedbackType conformeatribuído pelo ISP que gerou o relatório, de acordo com o site da Internet Assigned Numbers Authority:

Nome do campo Descrição

abuse Indica e-mail não solicitado ou algum outro tipo deabuso de e-mail.

auth-failure Relatório de falha de autenticação de e-mail.

fraud Indica algum tipo de atividade de phishing oufraude.

not-spam Indica que a entidade que fornece o relatório nãoconsidera a mensagem como spam. Isso podeser usado para corrigir uma mensagem que foiincorretamente marcada ou classificada comospam.

other Indica qualquer outro feedback que não se adequaa outros tipos registrados.

318

Page 326: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Nome do campo Descrição

virus Reporta que um vírus foi encontrado na mensagemde origem.

Subtipos de reclamação

O valor do campo complaintSubType pode ser nulo ou OnAccountSuppressionList. Caso o valorseja OnAccountSuppressionList, o Amazon SES aceitou a mensagem, mas não tentou enviá-la, poisela estava na lista de supressão no nível da conta (p. 189).

Objeto de entrega

O objeto JSON que contém informações sobre um evento Delivery tem os seguintes campos.

Nome do campo Descrição

timestamp A data e hora em que o Amazon SES entregouo e-mail ao servidor de e-mail do destinatário, noformato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ).

processingTimeMillis O tempo em milissegundos entre quando oAmazon SES aceitou a solicitação do remetenteaté quando o Amazon SES passou a mensagempara o servidor de e-mail do destinatário.

recipients Uma lista dos destinatários previstos à qual oevento de entrega se aplica.

smtpResponse A mensagem de resposta SMTP do ISP remotoque aceitou o e-mail do Amazon SES. Estamensagem poderá variar por e-mail, porservidor de e-mail de recebimento e por ISP derecebimento.

reportingMTA O nome de host do servidor de e-mail do AmazonSES que enviou o e-mail.

Objeto de envio

O objeto JSON que contém informações sobre um evento send está sempre vazio.

Objeto de rejeição

O objeto JSON que contém informações sobre um evento Reject tem os seguintes campos.

Nome do campo Descrição

reason O motivo pelo qual o e-mail foi rejeitado. O únicovalor possível é Bad content, o que significaque o Amazon SES detectou que o e-mail continhavírus. Quando uma mensagem é rejeitada, oAmazon SES interrompe o seu processamentoe não tenta entregá-la ao servidor de e-mail dodestinatário.

319

Page 327: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Objeto de abertura

O objeto JSON que contém informações sobre um evento Open tem os seguintes campos.

Nome do campo Descrição

ipAddress O endereço IP do destinatário.

timestamp A data e horário em que o evento ocorreu, noformato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ).

userAgent O agente do usuário do dispositivo ou cliente de e-mail que o destinatário usou para abrir o e-mail.

Objeto de clique

O objeto JSON que contém informações sobre um evento Click tem os seguintes campos.

Nome do campo Descrição

ipAddress O endereço IP do destinatário.

timestamp A data e horário em que o evento de clique, noformato ISO8601 (AAAA-MM-DDThh:mm:ss.sZ).

userAgent O agente do usuário do cliente que o destinatáriousou para clicar em um link no e-mail.

link O URL do link em que o destinatário clicou.

linkTags Uma lista de tags que foram adicionadas ao linkusando o atributo ses:tags. Para obter maisinformações sobre como adicionar tags aos linksnos seus e-mails, consulte P5. Posso usar tags emlinks com identificadores exclusivos? (p. 495) noPerguntas frequentes sobre métricas de envio dee-mails do Amazon SES (p. 493).

Objeto de falha

O objeto JSON que contém informações sobre um evento Rendering Failure tem os seguintescampos.

Nome do campo Descrição

templateName O nome do modelo usado para enviar o e-mail.

errorMessage Uma mensagem que fornece mais informaçõessobre a Falha de renderização.

Exemplos de dados de eventos do Amazon SES publicados no Amazon SNS

Esta seção fornece exemplos de cada tipo de registro de evento de envio de e-mail que o Amazon SESpublica no Amazon SNS.

320

Page 328: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

Tópicos nesta seção:• Registro de devolução (p. 321)• Registro de reclamação (p. 322)• Registro de entrega (p. 323)• Registro de e-mail de envio (p. 325)• Registro de evento de rejeição (p. 326)• Registro de evento de abertura (p. 327)• Registro de evento de clique (p. 328)• Registro de evento de Falha de renderização (p. 330)

Registro de devolução

A seguir encontra-se um exemplo de um registro de evento bounce que o Amazon SES publica noAmazon SNS.

{ "eventType":"Bounce", "bounce":{ "bounceType":"Permanent", "bounceSubType":"General", "bouncedRecipients":[ { "emailAddress":"[email protected]", "action":"failed", "status":"5.1.1", "diagnosticCode":"smtp; 550 5.1.1 user unknown" } ], "timestamp":"2017-08-05T00:41:02.669Z", "feedbackId":"01000157c44f053b-61b59c11-9236-11e6-8f96-7be8aexample-000000", "reportingMTA":"dsn; mta.example.com" }, "mail":{ "timestamp":"2017-08-05T00:40:02.012Z", "source":"Sender Name <[email protected]>", "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId":"123456789012", "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination":[ "[email protected]" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"Sender Name <[email protected]>" }, { "name":"To", "value":"[email protected]" }, { "name":"Subject", "value":"Message sent from Amazon SES" }, { "name":"MIME-Version", "value":"1.0" }, {

321

Page 329: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"name":"Content-Type", "value":"multipart/alternative; boundary=\"----=_Part_7307378_1629847660.1516840721503\"" } ], "commonHeaders":{ "from":[ "Sender Name <[email protected]>" ], "to":[ "[email protected]" ], "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject":"Message sent from Amazon SES" }, "tags":{ "ses:configuration-set":[ "ConfigSet" ], "ses:source-ip":[ "192.0.2.0" ], "ses:from-domain":[ "example.com" ], "ses:caller-identity":[ "ses_user" ] } }}

Registro de reclamação

A seguir encontra-se um exemplo de um registro de evento complaint que o Amazon SES publica noAmazon SNS.

{ "eventType":"Complaint", "complaint": { "complainedRecipients":[ { "emailAddress":"[email protected]" } ], "timestamp":"2017-08-05T00:41:02.669Z", "feedbackId":"01000157c44f053b-61b59c11-9236-11e6-8f96-7be8aexample-000000", "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36", "complaintFeedbackType":"abuse", "arrivalDate":"2017-08-05T00:41:02.669Z" }, "mail":{ "timestamp":"2017-08-05T00:40:01.123Z", "source":"Sender Name <[email protected]>", "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId":"123456789012", "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination":[ "[email protected]" ], "headersTruncated":false, "headers":[ {

322

Page 330: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"name":"From", "value":"Sender Name <[email protected]>" }, { "name":"To", "value":"[email protected]" }, { "name":"Subject", "value":"Message sent from Amazon SES" }, { "name":"MIME-Version","value":"1.0" }, { "name":"Content-Type", "value":"multipart/alternative; boundary=\"----=_Part_7298998_679725522.1516840859643\"" } ], "commonHeaders":{ "from":[ "Sender Name <[email protected]>" ], "to":[ "[email protected]" ], "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject":"Message sent from Amazon SES" }, "tags":{ "ses:configuration-set":[ "ConfigSet" ], "ses:source-ip":[ "192.0.2.0" ], "ses:from-domain":[ "example.com" ], "ses:caller-identity":[ "ses_user" ] } }}

Registro de entrega

A seguir encontra-se um exemplo de um registro de evento delivery que o Amazon SES publica noAmazon SNS.

{ "eventType": "Delivery", "mail": { "timestamp": "2016-10-19T23:20:52.240Z", "source": "[email protected]", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId": "123456789012", "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination": [ "[email protected]" ], "headersTruncated": false,

323

Page 331: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"headers": [ { "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "text/html; charset=UTF-8" }, { "name": "Content-Transfer-Encoding", "value": "7bit" } ], "commonHeaders": { "from": [ "[email protected]" ], "to": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:configuration-set": [ "ConfigSet" ], "ses:source-ip": [ "192.0.2.0" ], "ses:from-domain": [ "example.com" ], "ses:caller-identity": [ "ses_user" ], "ses:outgoing-ip": [ "192.0.2.0" ], "myCustomTag1": [ "myCustomTagValue1" ], "myCustomTag2": [ "myCustomTagValue2" ] } }, "delivery": { "timestamp": "2016-10-19T23:21:04.133Z", "processingTimeMillis": 11893, "recipients": [ "[email protected]" ],

324

Page 332: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"smtpResponse": "250 2.6.0 Message received", "reportingMTA": "mta.example.com" }}

Registro de e-mail de envio

A seguir encontra-se um exemplo de um registro de evento send que o Amazon SES publica no AmazonSNS.

{ "eventType": "Send", "mail": { "timestamp": "2016-10-14T05:02:16.645Z", "source": "[email protected]", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId": "123456789012", "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination": [ "[email protected]" ], "headersTruncated": false, "headers": [ { "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/mixed; boundary=\"----=_Part_0_716996660.1476421336341\"" }, { "name": "X-SES-MESSAGE-TAGS", "value": "myCustomTag1=myCustomTagValue1, myCustomTag2=myCustomTagValue2" } ], "commonHeaders": { "from": [ "[email protected]" ], "to": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:configuration-set": [ "ConfigSet" ], "ses:source-ip": [ "192.0.2.0"

325

Page 333: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

], "ses:from-domain": [ "example.com" ], "ses:caller-identity": [ "ses_user" ], "myCustomTag1": [ "myCustomTagValue1" ], "myCustomTag2": [ "myCustomTagValue2" ] } }, "send": {}}

Registro de evento de rejeição

A seguir encontra-se um exemplo de um registro de evento reject que o Amazon SES publica noAmazon SNS.

{ "eventType": "Reject", "mail": { "timestamp": "2016-10-14T17:38:15.211Z", "source": "[email protected]", "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId": "123456789012", "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination": [ "[email protected]" ], "headersTruncated": false, "headers": [ { "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/mixed; boundary=\"qMm9M+Fa2AknHoGS\"" }, { "name": "X-SES-MESSAGE-TAGS", "value": "myCustomTag1=myCustomTagValue1, myCustomTag2=myCustomTagValue2" } ], "commonHeaders": { "from": [ "[email protected]"

326

Page 334: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

], "to": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES" }, "tags": { "ses:configuration-set": [ "ConfigSet" ], "ses:source-ip": [ "192.0.2.0" ], "ses:from-domain": [ "example.com" ], "ses:caller-identity": [ "ses_user" ], "myCustomTag1": [ "myCustomTagValue1" ], "myCustomTag2": [ "myCustomTagValue2" ] } }, "reject": { "reason": "Bad content" }}

Registro de evento de abertura

A seguir encontra-se um exemplo de um registro de evento open que o Amazon SES publica no AmazonSNS.

{ "eventType": "Open", "mail": { "commonHeaders": { "from": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES", "to": [ "[email protected]" ] }, "destination": [ "[email protected]" ], "headers": [ { "name": "X-SES-CONFIGURATION-SET", "value": "ConfigSet" }, { "name":"X-SES-MESSAGE-TAGS", "value":"myCustomTag1=myCustomValue1, myCustomTag2=myCustomValue2" }, {

327

Page 335: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/alternative; boundary=\"XBoundary\"" } ], "headersTruncated": false, "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "sendingAccountId": "123456789012", "source": "[email protected]", "tags": { "myCustomTag1":[ "myCustomValue1" ], "myCustomTag2":[ "myCustomValue2" ], "ses:caller-identity": [ "ses-user" ], "ses:configuration-set": [ "ConfigSet" ], "ses:from-domain": [ "example.com" ], "ses:source-ip": [ "192.0.2.0" ] }, "timestamp": "2017-08-09T21:59:49.927Z" }, "open": { "ipAddress": "192.0.2.1", "timestamp": "2017-08-09T22:00:19.652Z", "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_3 like Mac OS X) AppleWebKit/603.3.8 (KHTML, like Gecko) Mobile/14G60" }}

Registro de evento de clique

A seguir encontra-se um exemplo de um registro de evento click que o Amazon SES publica no AmazonSNS.

{ "eventType": "Click", "click": { "ipAddress": "192.0.2.1", "link": "http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp.html",

328

Page 336: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTrabalhar com dados de eventos

"linkTags": { "samplekey0": [ "samplevalue0" ], "samplekey1": [ "samplevalue1" ] }, "timestamp": "2017-08-09T23:51:25.570Z", "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36" }, "mail": { "commonHeaders": { "from": [ "[email protected]" ], "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "subject": "Message sent from Amazon SES", "to": [ "[email protected]" ] }, "destination": [ "[email protected]" ], "headers": [ { "name": "X-SES-CONFIGURATION-SET", "value": "ConfigSet" }, { "name":"X-SES-MESSAGE-TAGS", "value":"myCustomTag1=myCustomValue1, myCustomTag2=myCustomValue2" }, { "name": "From", "value": "[email protected]" }, { "name": "To", "value": "[email protected]" }, { "name": "Subject", "value": "Message sent from Amazon SES" }, { "name": "MIME-Version", "value": "1.0" }, { "name": "Content-Type", "value": "multipart/alternative; boundary=\"XBoundary\"" }, { "name": "Message-ID", "value": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000" } ], "headersTruncated": false, "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "sendingAccountId": "123456789012", "source": "[email protected]", "tags": { "myCustomTag1":[

329

Page 337: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

"myCustomValue1" ], "myCustomTag2":[ "myCustomValue2" ], "ses:caller-identity": [ "ses_user" ], "ses:configuration-set": [ "ConfigSet" ], "ses:from-domain": [ "example.com" ], "ses:source-ip": [ "192.0.2.0" ] }, "timestamp": "2017-08-09T23:50:05.795Z" }}

Registro de evento de Falha de renderização

A seguir encontra-se um exemplo de um registro de evento Rendering Failure que o Amazon SESpublica no Amazon SNS.

{ "eventType":"Rendering Failure", "mail":{ "timestamp":"2018-01-22T18:43:06.197Z", "source":"[email protected]", "sourceArn":"arn:aws:ses:us-east-1:123456789012:identity/[email protected]", "sendingAccountId":"123456789012", "messageId":"EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000", "destination":[ "[email protected]" ], "headersTruncated":false, "tags":{ "ses:configuration-set":[ "ConfigSet" ] } }, "failure":{ "errorMessage":"Attribute 'attributeName' is not present in the rendering data.", "templateName":"MyTemplate" }}

Tutoriais de publicação de eventos do Amazon SESEsta seção fornece tutoriais que demonstram como usar a publicação de eventos do Amazon SES comserviços da AWS que permitem analisar e visualizar seus dados.

Estes tutoriais estão contidos nas seções a seguir.

Analisar eventos de envio de e-mail com o Amazon RedshiftNeste tutorial, publique os eventos de envio de e-mail no Amazon SES para um fluxo de entrega doAmazon Kinesis Data Firehose que publica dados no Amazon Redshift. Em seguida, conecte-se ao banco

330

Page 338: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

de dados do Amazon Redshift e use uma ferramenta de consulta SQL para consultar o banco de dadospara eventos de envio de e-mail do Amazon SES que atenderem a determinados critérios.

As seções a seguir o instruem ao longo do processo.

• Pré-requisitos (p. 331)• Etapa 1: Criar um cluster do Amazon Redshift (p. 332)• Etapa 2: Conectar-se ao cluster do Amazon Redshift (p. 332)• Etapa 3: Criar uma tabela de banco de dados (p. 335)• Etapa 4: Criar um fluxo de entrega do Kinesis Data Firehose (p. 337)• Etapa 5: Definir um conjunto de configurações (p. 340)• Etapa 6: Enviar e-mails (p. 341)• Etapa 7: Consulta de eventos de envio de e-mail (p. 342)

Pré-requisitos

Para este tutorial, você precisará do seguinte:

• Uma conta da AWS – para acessar qualquer serviço da web oferecido pela AWS, primeiro é preciso criaruma conta da AWS em https://aws.amazon.com/.

• Endereço de e-mail verificado – para enviar e-mails usando o Amazon SES, é necessário verificaro domínio ou endereço "From" para mostrar que você é o proprietário. Se você estiver na sandbox,precisará também verificar seus endereços "To". Você pode verificar endereços de e-mail ou domíniosinteiros, mas este tutorial exige um endereço de e-mail verificado para que você possa enviar um e-mail pelo console do Amazon SES, que é a maneira mais simples de enviar um e-mail. Para obter maisinformações sobre como verificar um endereço de e-mail, consulte Verificar endereços de e-mail noAmazon SES (p. 47).

• Uma ferramenta de consulta SQL – o Amazon Redshift não fornece nem instala ferramentas oubibliotecas SQL de clientes; portanto, você deve instalar uma que possa usar para acessar os clustersdo Amazon Redshift que contêm seus eventos do Amazon SES. Neste tutorial, usamos o SQLWorkbench/J, uma ferramenta de consulta SQL interplataforma, gratuita e independente de DBMS. Estaseção inclui procedimentos para instalar o SQL Workbench/J.

Para instalar o SQL Workbench/J

1. Consulte a licença de software do SQL Workbench/J.2. Acesse o site do SQL Workbench/J e faça download do pacote apropriado para o seu sistema

operacional.3. Acesse Instalar e iniciar o SQL Workbench/J e instale o SQL Workbench/J.

Important

Veja quais são os pré-requisitos da versão do tempo de execução de Java para o SQLWorkbench/J e verifique se você está usando essa versão. Se não estiver, esse aplicativocliente não será executado.

4. Acesse Configurar uma conexão JDBC e faça download de um driver JDBC do Amazon Redshift parapermitir que o SQL Workbench/J se conecte ao seu cluster.

Próxima etapa

Etapa 1: Criar um cluster do Amazon Redshift (p. 332)

331

Page 339: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Etapa 1: Criar um cluster do Amazon Redshift

Para criar um cluster do Amazon Redshift, acesse o console do Amazon Redshift e selecione LaunchCluster (Ativar cluster). Um assistente orienta você durante a escolha de opções para seu cluster e fornecevalores padrão para a maioria das opções.

Para este tutorial simples, digite um nome de cluster e uma senha e, em seguida, você poderá usar todosos valores padrão. Você não precisa definir nenhum valor específico para a publicação de eventos doAmazon SES.

Important

O cluster que você implantar para este tutorial será executado em um ambiente ao vivo. Enquantoele estiver sendo executado, acumulará cobranças na sua conta da AWS. Para evitar despesasdesnecessárias, exclua o seu cluster quando terminar de usá-lo. Para obter informações sobre adefinição de preço, vá até a página de definição de preço do Amazon Redshift.

Próxima etapa

Etapa 2: Conectar-se ao cluster do Amazon Redshift (p. 332)

Etapa 2: Conectar-se ao cluster do Amazon Redshift

Agora, você poderá se conectar ao seu cluster usando uma ferramenta do cliente SQL. Para este tutorial,você usará o cliente SQL Workbench/J que instalou na seção de pré-requisitos (p. 331) deste tutorial.

Siga as etapas a seguir para concluir a seção:

• Obtenção da sua string de conexão (p. 332)• Conexão ao seu cluster pelo SQL Workbench/J (p. 333)

Obtenção da sua string de conexão

O procedimento a seguir mostra como obter a string de conexão de que você precisará para se conectarao seu cluster do Amazon Redshift pelo SQL Workbench/J.

Para obter a string de conexão

1. No console do Amazon Redshift, no painel de navegação, selecione Clusters.2. Para abrir o cluster, escolha o nome do cluster.3. Na guia Configuration, em Cluster Database Properties, copie o URL JDBC do cluster.

Note

O endpoint do seu cluster só será disponibilizado depois que o cluster for criado e estiver noestado disponível.

332

Page 340: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Conexão ao seu cluster pelo SQL Workbench/J

O procedimento a seguir mostra como se conectar ao cluster pelo SQL Workbench/J. Este procedimentopressupõe que você instalou o SQL Workbench/J no seu computador, conforme descrito em Pré-requisitos (p. 331).

Para conectar-se ao seu cluster pelo SQL Workbench/J

1. Abra o SQL Workbench/J.2. Escolha File e depois Connect window.3. Selecione o botão Create a new connection profile.

4. Na caixa de texto New profile, digite um nome para o perfil.5. Na parte inferior da janela, à esquerda, escolha Manage Drivers.6. Na caixa de diálogo Manage Drivers, escolha o botão Create a new entry e, em seguida, adicione o

driver como se segue.

333

Page 341: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

a. Na caixa Name, digite o nome do driver.b. Ao lado de Library, selecione o ícone de pasta.c. Navegue até o local do driver obtido por download em Configuração de uma conexão JDBC,

selecione o driver e, então, selecione Open (Abrir).d. Escolha OK.

Você será direcionado de volta para a caixa de diálogo Select Connection Profile.7. Em Driver, escolha o driver que você acabou de adicionar.8. Em URL, cole o URL do JDBC que você copiou do console do Amazon Redshift.9. Em Username (Nome do usuário), digite o nome de usuário escolhido ao configurar o cluster do

Amazon Redshift (p. 332).10. Em Password (Senha), digite a senha escolhida ao configurar o cluster do Amazon Redshift.11. Selecione Autocommit.12. Para testar a conexão, escolha Test.

Note

Se a tentativa de conexão atingir o limite de tempo, será necessário adicionar o endereçoIP ao security group que permite o tráfego de entrada de endereços IP. Para obter maisinformações, consulte A conexão é recusada ou falha no Amazon Redshift DatabaseDeveloper Guide.

334

Page 342: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

13. Na barra de menus superior, escolha o botão Save profile list.14. Escolha OK.

O SQL Workbench/J se conectará ao seu cluster do Amazon Redshift.

Próxima etapa

Etapa 3: Criar uma tabela de banco de dados (p. 335)

Etapa 3: Criar uma tabela de banco de dados

Depois de se conectar ao banco de dados inicial no Amazon Redshift, você tipicamente usará esse bancode dados inicial como base para a criação de um novo banco de dados. No entanto, neste tutorial simples,criamos uma tabela para armazenar os dados de publicação do seu evento do Amazon SES diretamentedentro do banco de dados inicial.

Para este tutorial, vamos pressupor que estamos interessados nos campos a seguir dentro dos registrosde eventos de envio de e-mail (p. 295). Todos esses campos, com exceção de mail.tags.campaign,são fornecidos automaticamente pelo Amazon SES. Apresentamos o campo mail.tags.campaignquando enviamos um e-mail usando campaign como tag de mensagem em Etapa 6: Enviar e-mails (p. 341).

• mail.messageId

• eventType

• mail.sendingAccountId

• mail.timestamp

• mail.destination

• mail.tags.ses:configuration-set

335

Page 343: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

• mail.tags.campaign

Para acessar essas informações dentro do seu banco de dados, é preciso criar uma tabela. Oprocedimento a seguir mostra como especificar essas informações ao criar a tabela no seu banco dedados.

Note

Pressupomos que o SQL Workbench/J está aberto no seu computador e conectado ao cluster doAmazon Redshift, conforme descrito na etapa anterior (p. 332).

Para criar uma tabela usando o SQL Workbench/J

1. No SQL Workbench/J, copie o código a seguir e cole-o na janela Statement 1.

create table ses ( message_id varchar(200) not null, event_type varchar(20) not null, sending_account_id char(12), timestamp varchar(50), destination text, configuration_set text, campaign text);

2. Coloque o cursor dentro da declaração (em algum lugar antes do ponto e vírgula) e, em seguida,escolha o botão Execute current statement, conforme mostrado na figura a seguir.

3. No painel Messages, verifique se sua tabela foi criada com êxito.

336

Page 344: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Próxima etapa

Etapa 4: Criar um fluxo de entrega do Kinesis Data Firehose (p. 337)

Etapa 4: Criar um fluxo de entrega do Kinesis Data Firehose

Para publicar eventos de envio de e-mail ao Amazon Kinesis Data Firehose, é necessário criar umfluxo de entrega do Kinesis Data Firehose. Ao configurar um fluxo de entrega do Kinesis Data Firehose,selecione onde o Kinesis Data Firehose publica os dados. Para este tutorial, vamos configurar o KinesisData Firehose para publicar os dados no Amazon Redshift e escolher o Kinesis Data Firehose parapublicar os registros no Amazon S3, como uma etapa intermediária. No processo, precisamos especificarcomo o Amazon Redshift deve copiar registros do Amazon S3 para a tabela que criamos na etapaanterior (p. 335).

Esta seção mostra como criar um fluxo de entrega do Kinesis Data Firehose que envie dados para oAmazon Redshift e como editar o fluxo de entrega para especificar como o Amazon Redshift deve copiaros dados de publicação do evento do Amazon SES para o Amazon S3.

Note

É preciso que você já tenha configurado o cluster do Amazon Redshift (p. 332), se conectadoao seu cluster (p. 332) e criado uma tabela de banco de dados (p. 335), como explicado nasetapas anteriores.

Criação de um fluxo de entrega do Kinesis Data Firehose

O procedimento a seguir mostra como criar um fluxo de entrega do Kinesis Data Firehose que publicadados no Amazon Redshift, usando o Amazon S3 como local intermediário dos dados.

Para criar um fluxo de entrega do Kinesis Data Firehose para o Amazon Redshift

1. Faça login no Console de gerenciamento da AWS e abra o console da Kinesis Data Firehose emhttps://console.aws.amazon.com/firehose/.

2. Escolha Create Delivery Stream.3. Na página Destination, escolha as opções a seguir+

• Destination (Destino) – selecione Amazon Redshift.• Delivery stream name (Nome do fluxo de entrega) – digite um nome para o fluxo de entrega.• S3 bucket (Bucket do S3) – selecione New S3 bucket (Novo bucket do S3), digite um nome para o

bucket, escolha a região e, em seguida, selecione Create Bucket (Criar bucket).• Redshift cluster (Cluster do Redshift) – selecione o cluster do Amazon Redshift criado na etapa

anterior.• Redshift database (Banco de dados do Redshift) – digite dev, que é o nome padrão do banco de

dados.• Redshift table (Tabela do Redshift) – digite ses, que é a tabela criada em Etapa 3: Criar uma tabela

de banco de dados (p. 335).• Redshift table columns (Colunas da tabela do Redshift) – deixe este campo vazio.• Redshift username (Nome de usuário do Redshift) – digite o nome do usuário escolhido ao

configurar o cluster do Amazon Redshift (p. 332).• Redshift password (Senha do Redshift) – digite a senha escolhida ao configurar o cluster do

Amazon Redshift.• Redshift COPY options (Opções COPY do Redshift) – deixe este campo vazio.• Retry duration (Duração da repetição) – deixe este campo com o valor padrão.• COPY command (Comando COPY) – deixe este campo no valor padrão. Você o atualizará no

próximo procedimento.

337

Page 345: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

4. Escolha Next.5. Na página Configuration, deixe os campos nas configurações padrão para este tutorial simples. A

única etapa que você precisa fazer é selecionar uma função do IAM que permite ao Kinesis DataFirehose acessar seus recursos, conforme explicado no procedimento a seguir.

a. Para IAM Role, escolha Select an IAM role.b. No menu suspenso, sob Create/Update existing IAM role, escolha Firehose delivery IAM role.

Você será levado para o console do IAM.c. No console do IAM, deixe os campos nas configurações padrão e escolha Allow (Permitir).

Você retornará às etapas de configuração do fluxo de entrega do Kinesis Data Firehose noconsole do Kinesis Data Firehose.

6. Escolha Next.7. Na página Review, revise as configurações e escolha Create Delivery Stream.

Configuração das opções de cópia do Amazon Redshift

Em seguida, especifique para o Amazon Redshift como copiar os registros JSON de publicação de eventosdo Amazon SES para a tabela de banco de dados criada em Etapa 3: Criar uma tabela de banco dedados (p. 335). Isso é feito ao editar as opções de cópia no fluxo de entrega do Kinesis Data Firehose.

Para esse procedimento, você deve criar um arquivo JSONPaths. JSONPaths é um arquivo de textoque especifica para o comando COPY do Amazon Redshift como analisar os dados-fonte do JSON.Fornecemos um arquivo JSONPaths no procedimento. Para obter mais informações sobre arquivosJSONPaths, consulte COPY do formato JSON no Amazon Redshift Database Developer Guide.

Faça upload do arquivo JSONPaths para o bucket do Amazon S3 configurado ao criar o fluxo de entregado Kinesis Data Firehose e, em seguida, edite as opções de COPY do fluxo de entrega do Kinesis DataFirehose para o arquivo JSONPaths que você carregou. Essas etapas estão explicadas no procedimento aseguir.

338

Page 346: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Para definir as opções do comando COPY do Amazon Redshift

1. Crie um arquivo JSONPaths – no seu computador, crie um arquivo chamado jsonpaths.json. Copie otexto a seguir para o arquivo e, em seguida, salve-o.

{ "jsonpaths": [ "$.mail.messageId", "$.eventType", "$.mail.sendingAccountId", "$.mail.timestamp", "$.mail.destination", "$.mail.tags.ses:configuration-set", "$.mail.tags.campaign" ]}

2. Faça upload do arquivo JSONPaths para o bucket do Amazon S3 – Acesse o console do AmazonS3 e faça upload do arquivo para o bucket criado ao configurar o fluxo de entrega do Kinesis DataFirehose em Criação de um fluxo de entrega do Kinesis Data Firehose (p. 337).

3. Defina o comando COPY nas configurações do fluxo de entrega do Kinesis Data Firehose – agoravocê tem as informações de que precisa para definir a sintaxe do comando COPY que o AmazonRedshift usa quando coloca os dados na tabela que você criou. O procedimento a seguir mostra comoatualizar as informações do comando COPY nas configurações do fluxo de entrega do Kinesis DataFirehose.

1. Acesse o console do Kinesis Data Firehose.2. Em Redshift Delivery Streams (Fluxos de entrega do Redshift), selecione o fluxo de entrega do

Kinesis Data Firehose criado para a publicação de eventos do Amazon SES.3. Na página Details, selecione Edit.4. Na caixa Redshift COPY options, digite o texto abaixo, substituindo os valores a seguir pelos seus

próprios valores:• S3-BUCKET-NAME – o nome do bucket do Amazon S3 onde o Kinesis Data Firehose coloca

seus dados para que o Amazon Redshift acesse. Este bucket foi criado ao configurar o fluxode entrega do Kinesis Data Firehose em Etapa 4: Criar um fluxo de entrega do Kinesis DataFirehose (p. 337). Um exemplo é my-bucket.

• REGION – a região onde seus recursos do Amazon SES, do Kinesis Data Firehose, do AmazonS3 e do Amazon Redshift estão localizados. Um exemplo é us-west-2.

json 's3://S3-BUCKET-NAME/jsonpaths.json' region 'REGION';

5. Escolha Salvar.

339

Page 347: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Próxima etapa

Etapa 5: Definir um conjunto de configurações (p. 340)

Etapa 5: Definir um conjunto de configurações

Para configurar o Amazon SES para publicar seus eventos de envio de e-mail no Amazon Kinesis DataFirehose, primeiro crie um conjunto de configurações e, em seguida, adicione um destino do evento doKinesis Data Firehose ao conjunto de configurações. Esta seção mostra como realizar essas tarefas.

Se você já tiver um conjunto de configurações, poderá adicionar um destino do Kinesis Data Firehose aoseu conjunto de configurações existente. Neste caso, pule para Adicionar um destino de evento do KinesisData Firehose (p. 340).

Criação de um conjunto de configurações

O procedimento a seguir mostra como criar um conjunto de configurações.

Para criar um conjunto de configurações

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. No painel de conteúdo, escolha Create Configuration Set.4. Digite um nome para o conjunto de configurações e escolha Create Configuration Set.5. Escolha Fechar.

Adicionar um destino de evento do Kinesis Data Firehose

O procedimento a seguir mostra como adicionar um destino de evento do Kinesis Data Firehose aoconjunto de configurações que você criou.

340

Page 348: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Para adicionar um destino de evento do Kinesis Data Firehose ao conjunto de configurações

1. Escolha o conjunto de configurações da lista.2. Em Add Destination (Adicionar destino), selecione Select a destination type (Selecionar um tipo de

destino) e, em seguida, escolha Kinesis Data Firehose.3. Em Name, digite um nome para o destino de evento.4. Selecione todos os Event types.5. Selecione Enabled.6. Para Stream, selecione o fluxo de entrega criado em Etapa 4: Criar um fluxo de entrega do Kinesis

Data Firehose (p. 337).7. Para IAM role, escolha Let SES make a new role e digite um nome para a função.8. Escolha Salvar.9. Para sair da página Edit Configuration Set, use o botão Voltar do navegador.

Próxima etapa

Etapa 6: Enviar e-mails (p. 341)

Etapa 6: Enviar e-mails

Para o Amazon SES publicar eventos associados a um e-mail, você deve especificar um conjunto deconfigurações ao enviar o e-mail. Você também pode incluir as tags de mensagens para classificar o e-mail. Esta seção mostra como enviar um e-mail simples que especifica um conjunto de configurações etags de mensagem usando o console do Amazon SES. Você envia o e-mail para o simulador de caixapostal do Amazon SES, de forma que possa testar devoluções, reclamações e outros resultados de enviode e-mail.

Para enviar um e-mail usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação do console do Amazon SES, em Identity Management (Gerenciamento deidentidades), selecione Email Addresses (Endereços de e-mail).

3. Na lista de identidades, selecione a caixa de um endereço de e-mail que tenha verificado com êxitocom o Amazon SES (p. 47).

4. Escolha Send a Test Email.5. Na caixa de diálogo Send Test Email, para Email Format, escolha Raw.6. Para o endereço To (Para), digite um endereço do simulador de caixa postal do Amazon SES (p. 187),

como [email protected] ou [email protected]. Copie e cole a mensagem a seguir em sua integridade na caixa de texto Message, substituindo

CONFIGURATION-SET-NAME pelo nome do conjunto de configurações criado em Etapa 5: Definir umconjunto de configurações (p. 340), e substituindo FROM-ADDRESS pelo endereço verificado do qualvocê está enviando este e-mail.

X-SES-MESSAGE-TAGS: campaign=bookX-SES-CONFIGURATION-SET: CONFIGURATION-SET-NAMESubject: Amazon SES Event Publishing TestFrom: Amazon SES User <FROM-ADDRESS>MIME-Version: 1.0Content-Type: text/plain

This is a test message.

341

Page 349: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

8. Escolha Send Test Email.9. Repita esse procedimento algumas vezes para gerar vários eventos de envio de e-mail. Para alguns

dos e-mails, altere o valor da tag de mensagem campaign para clothing para simular o enviode uma campanha de e-mails diferente. Dessa forma, quando você consultar seu banco de dadosAmazon Redshift quanto a registros do evento de envio de e-mails na última etapa deste tutorial,poderá experimentar consultas baseadas na campanha de e-mail.

Próxima etapa

Etapa 7: Consulta de eventos de envio de e-mail (p. 342)

Etapa 7: Consulta de eventos de envio de e-mail

Agora que você gerou alguns eventos de envio de e-mail ao enviar e-mails com o seu conjunto deconfigurações e tags de mensagem, pode consultar os registros no Amazon Redshift.

Note

Pressupomos que o SQL Workbench/J está aberto no seu computador e conectado ao clusterdo Amazon Redshift, conforme descrito em Etapa 2: Conectar-se ao cluster do AmazonRedshift (p. 332).

Para consultar dados do evento de envio de e-mails no Amazon Redshift pelo SQL Workbench/J

1. Para exibir todos os registros de envio de e-mail, copie a consulta a seguir e cole-a na janelaStatement 1.

select * from ses;

2. Coloque o cursor dentro da instrução (em algum lugar antes do ponto e vírgula) e, em seguida,escolha o botão Execute current statement.

Você verá os registros de envio de e-mail para todos os e-mails enviados em Etapa 6: Enviar e-mails (p. 341). Os registros na figura a seguir mostram que nossa campanha book tinha duasreclamações e a campanha clothing tinha uma devolução.

3. Para contar os registros de complaint para a campanha do tipo book, copie a consulta a seguir ecole-a na janela Statement 1.

select count(*) as numberOfComplaint from ses where event_type = 'Complaint' and campaign like '%book%';

4. Coloque o cursor dentro da instrução (em algum lugar antes do ponto e vírgula) e, em seguida,escolha o botão Execute current statement.

342

Page 350: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Os resultados estão a seguir, mostrando que a campanha do livro teve duas reclamações.

Gráficos de eventos no Amazon CloudWatchNeste tutorial, publique os eventos de envio de e-mail do Amazon SES para o Amazon CloudWatch e, emseguida, crie um gráfico dos eventos usando o console do CloudWatch.

As seções a seguir o instruem ao longo do processo.

• Pré-requisitos (p. 343)• Etapa 1: Definir um conjunto de configurações (p. 343)• Etapa 2: Enviar e-mails (p. 344)• Etapa 3: Criar gráficos de eventos (p. 345)

Pré-requisitos

Para este tutorial, você precisará do seguinte:

• Uma conta da AWS – para acessar qualquer serviço da web oferecido pela AWS, primeiro é preciso criaruma conta da AWS em https://aws.amazon.com/.

• Endereço de e-mail verificado – para enviar e-mails usando o Amazon SES, é necessário verificaro domínio ou endereço "From" para mostrar que você é o proprietário. Se você estiver na sandbox,precisará também verificar seus endereços "To". Você pode verificar endereços de e-mail ou domíniosinteiros, mas este tutorial exige um endereço de e-mail verificado para que você possa enviar um e-mail pelo console do Amazon SES, que é a maneira mais simples de enviar um e-mail. Para obter maisinformações sobre como verificar um endereço de e-mail, consulte Verificar endereços de e-mail noAmazon SES (p. 47).

Próxima etapa

Etapa 1: Definir um conjunto de configurações (p. 343)

Etapa 1: Definir um conjunto de configurações

Para configurar o Amazon SES para publicar seus eventos de envio de e-mail no Amazon CloudWatch,primeiro crie um conjunto de configurações e, em seguida, adicione um destino do evento do CloudWatchao conjunto de configurações. Esta seção mostra como realizar essas tarefas.

Se você já tiver um conjunto de configurações, poderá adicionar um destino do CloudWatch aoseu conjunto de configurações existente. Neste caso, pule para Adicionar um destino de evento doCloudWatch (p. 344).

343

Page 351: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Criação de um conjunto de configurações

O procedimento a seguir mostra como criar um conjunto de configurações.

Para criar um conjunto de configurações

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, escolha Configuration Sets.3. Escolha Create Configuration Set.4. Digite um nome para o conjunto de configurações e escolha Create Configuration Set.

Adicionar um destino de evento do CloudWatch

O procedimento a seguir mostra como adicionar um destino de evento do CloudWatch ao conjunto deconfigurações que você criou.

Para adicionar um destino de evento do CloudWatch a um conjunto de configurações

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, escolha Configuration Sets.3. Escolha o conjunto de configurações criado na seção anterior.4. Em Add Destination (Adicionar destino), selecione Select a destination type (Selecionar um tipo de

destino) e, em seguida, escolha CloudWatch.5. Em Name (Nome), insira um nome para o destino de evento.6. Em Event types (Tipos de eventos), escolha as métricas que você deseja relatar no Amazon

CloudWatch.7. Selecione Enabled (Habilitado).8. Em Value Source (Origem do valor), escolha o valor que você deseja usar para categorizar as

métricas no CloudWatch. Por exemplo, se você escolher Message Tag (Tag de mensagem), seránecessário especificar um par de chave-valor. O Amazon SES enviará as métricas selecionadas parao CloudWatch se o e-mail contiver esse par de chave-valor como uma tag de mensagem. Quandovocê visualiza as métricas no CloudWatch, elas são categorizadas pela chave da tag da mensagem.

Note

Se você escolher Link Tag (Tag de link) como a origem do valor, só poderá enviar eventosde clique ao CloudWatch. É possível usar a origem do valor Link Tag (Tag de link) paradeterminar quais links em seus e-mails são clicados com mais frequência.

9. Escolha Salvar.10. Para sair da página Edit Configuration Set, use o botão Voltar do navegador.

Etapa 2: Enviar e-mails

Para o Amazon SES publicar eventos associados a um e-mail, você deve especificar um conjunto deconfigurações ao enviar o e-mail. Você também pode incluir as tags de mensagens para classificar o e-mail. Esta seção mostra como enviar um e-mail simples que especifica um conjunto de configurações etags de mensagem usando o console do Amazon SES. Você envia o e-mail para o simulador de caixapostal do Amazon SES, de forma que possa testar devoluções, reclamações e outros resultados de enviode e-mail.

344

Page 352: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Para enviar um e-mail usando o console do Amazon SES

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel Navigation (Navegação) do console do Amazon SES, em Identity Management(Gerenciamento de identidades), selecione Email Addresses (Endereços de e-mail).

3. Na lista de identidades, selecione a caixa de um endereço de e-mail que tenha verificado com êxitocom o Amazon SES (p. 47).

4. Escolha Send a Test Email.5. Na caixa de diálogo Send Test Email, para Email Format, escolha Raw.6. Para o endereço To (Para), digite um endereço do simulador de caixa postal do Amazon SES (p. 187),

como [email protected] ou [email protected]. Copie e cole a mensagem a seguir em sua integridade na caixa de texto Message (Mensagem),

substituindo CONFIGURATION-SET-NAME pelo nome do conjunto de configurações criado em Etapa1: Definir um conjunto de configurações (p. 343), e substituindo FROM-ADDRESS pelo endereçoverificado do qual você está enviando este e-mail.

X-SES-MESSAGE-TAGS: campaign=bookX-SES-CONFIGURATION-SET: CONFIGURATION-SET-NAMESubject: Amazon SES Event Publishing TestFrom: Amazon SES User <FROM-ADDRESS>MIME-Version: 1.0Content-Type: text/plain

This is a test message.

8. Escolha Send Test Email.9. Repita esse procedimento algumas vezes para gerar vários eventos de envio de e-mail. Para alguns

dos e-mails, altere o valor da tag de mensagem campaign para clothing para simular o envio deuma campanha de e-mails diferente.

Próxima etapa

Etapa 3: Criar um gráfico dos eventos de envio de e-mail (p. 345)

Etapa 3: Criar um gráfico dos eventos de envio de e-mail

Agora que você publicou alguns eventos de envio de e-mail do Amazon SES no CloudWatch enviando e-mails com o seu conjunto de configurações e tags de mensagem, pode criar um gráfico com as métricaspara esses eventos usando o console do CloudWatch.

Para criar um gráfico com as métricas de eventos de envio de e-mail

1. Faça login no Console de gerenciamento da AWS e abra o console do CloudWatch em https://console.aws.amazon.com/cloudwatch/.

2. No painel de navegação à esquerda, escolha Metrics.3. Na guia All metrics, escolha SES.

Tip

Você também pode digitar SES no campo de pesquisas.4. Escolha a origem do valor especificado em Adicionar um destino de evento do CloudWatch (p. 344).

Por exemplo, se você especificou a tag de mensagem "category: books" como a origem do valor,escolha category (categoria).

345

Page 353: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

5. Escolha a métrica que você deseja visualizar. Um gráfico é exibido no painel de detalhes.

Analisar eventos de envio de e-mail com o Amazon Kinesis DataAnalyticsO Amazon Kinesis Data Analytics permite processar e analisar dados em streaming usando o SQL. Use oAmazon Kinesis Data Analytics para analisar seus eventos de envio de e-mail do Amazon SES.

Neste tutorial, primeiro configure um conjunto de configurações do Amazon SES para publicar os eventosde envio de e-mail em um fluxo de entrega do Amazon Kinesis Data Firehose e depois envie e-mails peloAmazon SES usando esse conjunto de configurações. Em seguida, configure o Amazon Kinesis DataAnalytics para capturar os eventos de envio de e-mail do fluxo do Kinesis Data Firehose e use SQL paraextrair informações importantes dos e-mails enviados.

Note

Este tutorial requer que você tenha um aplicativo capaz de enviar um fluxo estável de e-mails pormeio do Amazon SES. Esse requisito é explicado em Pré-requisitos (p. 346).

As seções a seguir o instruem ao longo do tutorial.

• Pré-requisitos (p. 346)• Etapa 1: Criar um fluxo de entrega do Kinesis Data Firehose (p. 347)• Etapa 2: Definir um conjunto de configurações (p. 348)• Etapa 3: Enviar e-mails (p. 349)• Etapa 4: Criar um aplicativo Amazon Kinesis Data Analytics (p. 349)• Etapa 5: Executar uma consulta SQL (p. 354)• (Opcional) Etapa 6: Salvar os resultados da consulta SQL (p. 355)

Pré-requisitos

Para este tutorial, você precisa do seguinte:

• Uma conta da AWS – para acessar qualquer serviço da web oferecido pela AWS, primeiro é preciso criaruma conta da AWS em https://aws.amazon.com/.

• Endereço de e-mail verificado – para enviar e-mails usando o Amazon SES, é necessário verificaro domínio ou endereço "From" para mostrar que você é o proprietário. Se você estiver na sandbox,precisará também verificar seus endereços "To". Você pode verificar endereços de e-mail ou domíniosinteiros, mas este tutorial exige um endereço de e-mail verificado para que você possa enviar um e-mail pelo console do Amazon SES, que é a maneira mais simples de enviar um e-mail. Para obter maisinformações sobre como verificar um endereço de e-mail, consulte Verificar endereços de e-mail noAmazon SES (p. 47).

• E-mail do aplicativo – para usar o Amazon Kinesis Data Analytics como descrito neste tutorial, você deveenviar um fluxo estável de e-mails por meio do Amazon SES para gerar um fluxo estável de eventosde envio de e-mail. Isso permite que o Amazon Kinesis Data Analytics detecte automaticamente oesquema e processe os registros de eventos com o SQL. Enviar um e-mail a cada dez segundos porcinco minutos é suficiente para este tutorial.

Important

Se você não tiver uma campanha de e-mail existente para enviar a destinatários reais,recomendamos enfaticamente que você envie e-mails a um endereço do simulador de caixapostal do Amazon SES (p. 187). Os e-mails enviados ao simulador de caixa postal não contampara suas taxas de devolução e reclamação do Amazon SES nem para a cota de envio diário.

346

Page 354: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Próxima etapa

Etapa 1: Criar um fluxo de entrega do Kinesis Data Firehose (p. 347)

Etapa 1: Criar um fluxo de entrega do Kinesis Data Firehose

Para analisar os eventos de envio de e-mail do Amazon SES com o Amazon Kinesis Data Analytics, énecessário configurar o Amazon SES para publicar os eventos em um fluxo de entrega do Amazon KinesisData Firehose e, em seguida, configurar Amazon Kinesis Data Analytics para obter os dados de eventosdo Kinesis Data Firehose.

Quando você configurar um fluxo de entrega do Kinesis Data Firehose, deverá escolher o destino final dosdados. Suas opções de destino são Amazon Simple Storage Service (Amazon S3), Amazon ElasticsearchService e Amazon Redshift. Se você simplesmente quiser analisar os eventos de envio de e-mail como Amazon Kinesis Data Analytics, não importa qual o destino escolher. Para este tutorial, configuramoso Kinesis Data Firehose para publicar os dados no Amazon S3, mas você pode usar as outras opçõesde destino se elas estiverem na mesma região que seu fluxo de envio do Amazon SES e de entrega doKinesis Data Firehose.

Esta seção mostra como criar o fluxo de entrega do Kinesis Data Firehose usando o console do KinesisData Firehose. Para este tutorial, você escolhe opções básicas. Para obter informações sobre todasas opções disponíveis, consulte Criar um fluxo de entrega do Amazon Kinesis Firehose no Guia dodesenvolvedor do Amazon Kinesis Data Firehose.

Para criar um fluxo de entrega do Kinesis Data Firehose para o Amazon S3

1. Faça login no Console de gerenciamento da AWS e abra o console da Kinesis Data Firehose emhttps://console.aws.amazon.com/firehose/.

2. Escolha Create Delivery Stream.3. Na página Destination, escolha as opções a seguir+

• Destination (Destino) – selecione Amazon S3.• Delivery stream name (Nome do fluxo de entrega) – digite um nome para o fluxo de entrega.• S3 bucket (Bucket do S3) – selecione um bucket existente ou New S3 Bucket (Novo bucket do S3).

Se você criar um novo bucket, digite um nome para ele e escolha a região que seu console estiverusando no momento.

• S3 prefix (Prefixo do S3) – deixe esse campo vazio.4. Escolha Next.5. Na página Configuration, deixe os campos nas configurações padrão. A única etapa necessária para

selecionar uma função do IAM que permite ao Kinesis Data Firehose acessar aos seus recursos,como se segue:

a. Para IAM Role, escolha Select an IAM role.b. No menu suspenso, sob Create/Update existing IAM role, escolha Firehose delivery IAM role.

Você será direcionado para o console do IAM.c. No console do IAM, deixe os campos nas configurações padrão e escolha Allow (Permitir).

347

Page 355: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Você retornará às etapas de configuração do fluxo de entrega do Kinesis Data Firehose noconsole do Kinesis Data Firehose.

6. Escolha Next.7. Na página Review, revise as configurações e escolha Create Delivery Stream.

Próxima etapa

Etapa 2: Definir um conjunto de configurações (p. 348)

Etapa 2: Definir um conjunto de configurações

Para configurar o Amazon SES para publicar seus eventos de envio de e-mail no Amazon Kinesis DataFirehose, crie um conjunto de configurações e, em seguida, adicione um destino do evento do Kinesis DataFirehose ao conjunto de configurações. Esta seção descreve como realizar essas tarefas.

Se você já tiver um conjunto de configurações, poderá adicionar um destino do Kinesis Data Firehose aoseu conjunto de configurações existente. Neste caso, pule para Adicionar um destino de evento do KinesisData Firehose (p. 349).

Criação de um conjunto de configurações

O procedimento a seguir descreve como criar um conjunto de configurações.

Para criar um conjunto de configurações

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação à esquerda, escolha Configuration Sets.3. No painel de conteúdo, escolha Create Configuration Set.4. Digite um nome para o conjunto de configurações e escolha Create Configuration Set.5. Escolha Fechar.

348

Page 356: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Adicionar um destino de evento do Kinesis Data Firehose

O procedimento a seguir mostra como adicionar um destino de evento do Kinesis Data Firehose aoconjunto de configurações que você criou.

Para adicionar um destino de evento do Kinesis Data Firehose ao conjunto de configurações

1. Escolha o conjunto de configurações da lista.2. Em Add Destination (Adicionar destino), selecione Select a destination type (Selecionar um tipo de

destino) e, em seguida, escolha Kinesis Data Firehose.3. Em Name, digite um nome para o destino de evento.4. Selecione todos os Event types.5. Selecione Enabled.6. Para Stream, selecione o fluxo de entrega criado em Etapa 1: Criar um fluxo de entrega do Kinesis

Data Firehose (p. 347).7. Para IAM role, escolha Let SES make a new role e digite um nome para a função.8. Escolha Salvar.9. Para sair da página Edit Configuration Set, use o botão Voltar do navegador.

Próxima etapa

Etapa 3: Enviar e-mails (p. 349)

Etapa 3: Enviar e-mails

Como este tutorial usa o console do Amazon Kinesis Data Analytics para processar e analisardados em streaming, é necessário configurar um fluxo constante de e-mails por meio do AmazonSES. Este tutorial pressupõe que você tenha um aplicativo capaz de enviar esses e-mails. Enviarum e-mail a cada dez segundos por cinco minutos é suficiente para este tutorial. É altamenterecomendável usar um endereço "To" do simulador de caixa postal do Amazon SES (p. 187), [email protected].

Para habilitar a publicação de eventos para um e-mail, você fornece o nome do conjunto de configuraçõespara o Amazon SES ao enviar o e-mail. Você também pode, como opção, incluir as tags de mensagenspara classificar o e-mail. Forneça essas informações para o Amazon SES como parâmetros para a API deenvio de e-mail, cabeçalhos específicos de e-mail do Amazon SES ou cabeçalhos personalizados em suamensagem MIME. Para obter mais informações, consulte Enviar e-mail usando a publicação de eventos doAmazon SES (p. 291).

Por exemplo, você pode adicionar os seguintes cabeçalhos de e-mail específicos do Amazon SES aoseu e-mail para simular uma campanha de livro. Substitua CONFIGURATION-SET-NAME pelo nome doconjunto de configurações que você criou em Etapa 2: Definir um conjunto de configurações (p. 348).

X-SES-CONFIGURATION-SET: CONFIGURATION-SET-NAMEX-SES-MESSAGE-TAGS: campaign=book

Próxima etapa

Etapa 4: Criar um aplicativo Amazon Kinesis Data Analytics (p. 349)

Etapa 4: Criar um aplicativo Amazon Kinesis Data Analytics

Agora que você configurou a publicação de eventos com o Amazon SES, configure o Amazon Kinesis DataAnalytics para capturar os dados de eventos de envio de e-mail pelo fluxo de entrega do Amazon KinesisData Firehose. Para fazer isso, você cria um aplicativo do Amazon Kinesis Data Analytics.

349

Page 357: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

O procedimento a seguir mostra como usar o console do Amazon Kinesis Data Analytics para criar umaplicativo que captura os dados do evento de envio de e-mail do Amazon SES a partir do fluxo de entregado Kinesis Data Firehose, e como executar uma consulta SQL simples nos dados para retornar os eventosdo tipo "Enviar".

Note

Os eventos de envio de e-mail de diferentes tipos de eventos (envio, devolução, reclamação eentrega) têm diferentes esquemas JSON (p. 295). Em um ambiente de produção, você podeexaminar vários campos desse esquema, mas neste tutorial, limitamos nosso exame a umpequeno conjunto de campos presentes em todos os tipos de evento.

Para criar um aplicativo do Amazon Kinesis Data Analytics

1. Inicie o envio de um fluxo estável de e-mails configurados para a publicação de eventos pelo AmazonSES e continue enviando os e-mails durante esse procedimento. Isso é necessário para que oAmazon Kinesis Data Analytics possa detectar automaticamente o esquema dos registros de eventos.Enviar um e-mail a cada dez segundos por cinco minutos é suficiente para este tutorial. Para obtermais informações, consulte Etapa 3: Enviar e-mails (p. 349).

Após o seu programa de e-mail enviar alguns e-mails, vá para a próxima etapa.2. Faça login no Console de gerenciamento da AWS e abra o console do Kinesis Data Analytics em

https://console.aws.amazon.com/kinesisanalytics.3. Escolha Create new application.4. Insira um nome de aplicativo e uma descrição para ele e, em seguida, escolha Save and continue.5. Escolha Connect to a source.6. Selecione o fluxo do Kinesis Data Firehose criado em Etapa 2: Definir um conjunto de

configurações (p. 348).

O Amazon Kinesis Data Analytics tenta descobrir o esquema dos registros de eventos de enviode e-mail com base nos registros de entrada. Se o Amazon Kinesis Data Analytics exibir Errordiscovering input schema (Erro ao descobrir o esquema de entrada), isso significa que o AmazonKinesis Data Analytics não recebeu nenhum registro de envio de e-mails ainda. Escolha Rediscoverschema. Talvez você precise escolher esse botão várias vezes. Se a descoberta do esquema nãofor bem-sucedida após várias tentativas, verifique se o aplicativo de envio de e-mails está enviandoconstantemente e-mails e que os e-mails especificam um conjunto de configurações.

Quando o Amazon Kinesis Data Analytics detectar um esquema, ele exibirá uma mensagem de êxito elistará os registros detectados.

Important

Não escolha Save and continue. Isso causará erros, pois o esquema descoberto não adotaas restrições de nomes do SQL. Você deve editar o esquema como descrito na próximaetapa.

7. Escolha Edit schema.

350

Page 358: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

8. Para este tutorial, removemos a maioria das linhas. Escolha X ao lado de todas as linhas , excetodaquelas com os seguintes nomes de coluna:

• eventType• timestamp• messageId• to• ses:configuration-set

Important

Não escolha Save schema and update stream samples. Isso causará erros, pois o esquemadescoberto não adota as restrições de nomes do SQL. Você deve editar o esquema comodescrito na próxima etapa.

351

Page 359: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

9. Examine as entradas restantes em Column name e compare-as com os requisitos de definição denomes SQL a seguir:

• Formato – Conforme descrito em Identificadores no Amazon Kinesis Data Analytics SQL Reference,identificadores sem aspas devem começar com uma letra ou sublinhado e serem seguidos porletras, números ou sublinhados. Os nomes de tags automáticas do Amazon SES não estão emconformidade com esses requisitos, pois contêm dois pontos e traços. Você os editará na próximaetapa.

• Palavras reservadas – Os nomes de colunas não devem entrar em conflito com as palavrasreservadas do SQL listadas em Palavras e palavras-chave reservadas no Amazon Kinesis DataAnalytics SQL Reference. Entre os exemplos de palavras-chave reservadas que entram em conflitocom registros de eventos do Amazon SES estão timestamp, value, date, from e to.

10. Edite os nomes de coluna restantes em conformidade com os requisitos do SQL, da seguinte forma:

• Renomeie ses:configuration-set para ses_configuration_set.• Renomeie timestamp para ses_timestamp.• Renomeie to para ses_to.

352

Page 360: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

11. Escolha Save schema and update stream samples. Se você encontrar erros de validação, será precisoter executado corretamente a etapa 10. Se você encontrar o erro No rows in source stream, verifiquese ainda está enviando o fluxo de e-mail que começou no início deste procedimento e escolhaRetrieve rows. Talvez você precise escolher Retrieve rows (Recuperar linhas) várias vezes antes de oAmazon Kinesis Data Analytics capturar os registros.

12. Após a recuperação bem-sucedida das linhas, escolha Exit (done).

Próxima etapa

Etapa 5: Executar uma consulta SQL (p. 354)

353

Page 361: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Etapa 5: Executar uma consulta SQL

Agora que você criou um aplicativo do Amazon Kinesis Data Analytics e o configurou para usar seu fluxode entrega do Amazon Kinesis Data Firehose como origem, consulte os dados do evento de envio de e-mail que o fluxo de entrega do Kinesis Data Firehose recebe.

Este tópico mostra como executar uma consulta SQL no e-mail que envia os dados do evento.

Important

Este procedimento exige que você continue a enviar um fluxo estável de e-mails configuradospara publicação de eventos por meio do Amazon SES, conforme descrito em Etapa 3: Enviar e-mails (p. 349).

Para executar uma consulta SQL no Amazon Kinesis Data Analytics

1. Supondo que você tenha movido para esse procedimento após concluir a última etapa (p. 349),acesse o menu superior do console do Amazon Kinesis Data Analytics e escolha o seu aplicativo.

2. Escolha Go to SQL editor.

O Amazon Kinesis Data Analytics tenta ler os dados dos eventos pelo fluxo do Kinesis Data Firehose.Se você encontrar o erro No rows in source stream, verifique se ainda está enviando o fluxo de e-mailque começou no início deste procedimento e escolha Retrieve rows.

354

Page 362: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

3. Na caixa de editor de código, cole o seguinte.

CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" ("eventType" VARCHAR(16), "ses_timestamp" timestamp, "messageId" VARCHAR(64), "ses_to" VARCHAR(64), "ses_configuration_set" VARCHAR(32));

CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM"

SELECT STREAM "eventType", "ses_timestamp", "messageId", "ses_to", "ses_configuration_set"FROM "SOURCE_SQL_STREAM_001"WHERE "eventType" = 'Send'

4. Escolha Save and run SQL.

Após o Amazon Kinesis Data Analytics recuperar e processar os registros de entrada, você verá umalista de registros de eventos do tipo "Send".

Próxima etapa

(Opcional) Etapa 6: Salvar os resultados da consulta SQL (p. 355)

(Opcional) Etapa 6: Salvar os resultados da consulta SQL

Você pode configurar seu aplicativo do Amazon Kinesis Data Analytics para gravar a saída das suasconsultas SQL para um fluxo de entrega do Amazon Kinesis Data Firehose. Para fazer isso, você devecriar outro fluxo de entrega do Kinesis Data Firehose, pois não pode usar o mesmo fluxo de entrega quea origem e o destino de um aplicativo do Amazon Kinesis Data Analytics. Assim como com qualquer fluxode entrega do Kinesis Data Firehose, você pode escolher Amazon Simple Storage Service (Amazon S3),Amazon Elasticsearch Service ou Amazon Redshift como destino.

O procedimento a seguir mostra como configurar o Amazon Kinesis Data Analytics para salvar osresultados da consulta SQL em formato JSON para um fluxo de entrega do Kinesis Data Firehose quegrava os dados para o Amazon S3. Em seguida, você executa uma consulta SQL e acessa os dadossalvos.

355

Page 363: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

Para salvar os resultados das consultas SQL para o Amazon S3

1. Configure um novo fluxo de Kinesis Data Firehose que use Amazon S3 como destino. É o mesmoprocedimento que Etapa 1: Criar um fluxo de entrega do Kinesis Data Firehose (p. 347).

2. Acesse o console do Amazon Kinesis Data Analytics, selecione a seta ao lado do seu aplicativo eselecione Application details (Detalhes do aplicativo).

3. Escolha Connect to a destination.

4. Selecione o fluxo do Kinesis Data Firehose criado na etapa 1, deixe o restante das opções em suasconfigurações padrão e, em seguida, escolha Save and continue (Salvar e continuar).

Em alguns segundos, você retorna para a página principal do aplicativo.

356

Page 364: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

5. Escolha Go to SQL results.

6. Escolha Save and run SQL para executar novamente a consulta executada em Etapa 5: Executar umaconsulta SQL (p. 354).

O Amazon Kinesis Data Analytics tenta processar dados de eventos que recebe do fluxo de entregado Kinesis Data Firehose. Se você encontrar o erro No rows have arrived yet (Nenhuma linha chegouaté o momento), garanta que ainda esteja enviando e-mails, de forma que o Amazon Kinesis DataAnalytics tenha eventos de envio de e-mail para processar.

357

Page 365: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

À medida que o Amazon Kinesis Data Analytics processa registros, os resultados aparecem na guiaReal-time analytics (Análise em tempo real). O Amazon Kinesis Data Analytics salva automaticamenteos resultados no bucket do Amazon S3 especificado ao configurar o fluxo de entrega do Kinesis DataFirehose na etapa 1.

7. Para recuperar os resultados, acesse o console do Amazon S3.8. Selecione o bucket do Amazon S3 associado ao fluxo de entrega do Kinesis Data Firehose que o

aplicativo Amazon Kinesis Data Analytics usa como destino.9. Navegue até os dados que, por padrão, estão organizados em uma hierarquia de pastas com base na

data em que os resultados são salvos no bucket.

Se o bucket estiver vazio, aguarde alguns minutos e tente novamente. Pode levar vários minutos atéque os dados cheguem do Amazon Kinesis Data Analytics até o seu bucket do Amazon S3.

10. Escolha um arquivo e, em seguida, no menu Actions, escolha Download.

358

Page 366: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorTutoriais

11. Siga as instruções na tela para baixar o arquivo para o seu computador.12. No seu computador, abra o arquivo com um editor de texto. Os registros estão em formato JSON

e cada registro está contido em chaves. Veja a seguir um exemplo de um arquivo que contém doisregistros.

{"eventType":"Send","ses_timestamp":"2016-12-08 18:51:12.092","messageId":"EXAMPLE8dfc6695c-5f048b74-ca83-4052-8348-4e7da9669fc3-000000","ses_to":"[\"[email protected]\" ]","ses_configuration_set":"[\"MyConfigSet\" ]"}{"eventType":"Send","ses_timestamp":"2016-12-08 18:50:42.181","messageId":"EXAMPLEdfc5f485-d40a2543-2cac-4b84-8a8f-30bebdf3820c-000000","ses_to":"[\"[email protected]\" ]","ses_configuration_set":"[\"MyConfigSet\" ]"}

Tópicos nesta seção:

359

Page 367: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorUso do painel de reputação

Monitoramento da sua reputação doremetente do Amazon SES

O Amazon SES rastreia ativamente várias métricas que podem fazer com que sua reputação comoremetente seja prejudicada ou que podem fazer com que suas taxas de entrega de e-mail declinem. Duasmétricas importantes que consideramos neste processo são as taxas de devolução e de reclamação parasua conta. Se as taxas de devolução ou de reclamação de sua conta forem muito altas, poderemos colocarsua conta em análise ou pausar a capacidade de sua conta para enviar e-mails.

Como as taxas de devolução e de reclamação são tão importantes para o status de sua conta, oAmazon SES inclui um painel de reputação que você pode usar para rastrear essas métricas. O painelde reputação também pode exibir informações sobre fatores não relacionados a devoluções nem areclamações que podem danificar sua reputação de remetente. Por exemplo, se você enviar e-mail paraum spamtrap conhecido, verá uma mensagem nesse painel.

Esta seção contém informações sobre como acessar o painel de reputação, interpretar as informaçõescontidas nele e a configurar sistemas para notificá-lo ativamente de fatores que podem afetar suareputação de remetente.

Nesta seção, você encontrará os seguintes tópicos:• Uso do painel de reputação para acompanhar as taxas de devolução e reclamação (p. 360)• Mensagens do painel de reputação (p. 361)• Criação de alarmes de monitoramento de reputação com o CloudWatch (p. 374)• Como pausar o envio de e-mails automaticamente (p. 377)

Uso do painel de reputação para acompanhar astaxas de devolução e reclamação

O painel de reputação contém as mesmas informações que a equipe do Amazon SES vê ao determinar oestado de contas individuais.

Para visualizar o painel de reputação

1. Faça login no Console de gerenciamento da AWS e abra o console da Amazon SES em https://console.aws.amazon.com/ses/.

2. No painel de navegação, do lado esquerdo da tela, selecione Reputation Dashboard.

O painel exibirá as seguintes informações:

• Account status – Uma breve descrição do estado da sua conta. Os possíveis valores incluem:• Healthy – não há problemas que estejam afetando sua conta.• Under review – sua conta está sob análise. Se os problemas que nos fizeram colocar sua

conta sob análise não forem resolvidos até o final do período de análise, poderemos pausar acapacidade de sua conta enviar e-mails.

• Pending end of review decision – sua conta está sob análise. Devido à natureza dos problemasque nos fizeram colocar sua conta sob análise, será necessário realizar uma análise manual dasua conta antes de tomar qualquer outra ação.

• Sending paused – pausamos a capacidade de envio de e-mails da sua conta. Enquanto acapacidade da sua conta para enviar e-mails estiver pausada, não será possível enviar e-mails

360

Page 368: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorMensagens do painel de reputação

usando o Amazon SES. Você poderá solicitar que revisemos essa decisão. Para saber maissobre como solicitar uma revisão, consulte Perguntas frequentes sobre o processo de análise deenvios do Amazon SES (p. 474).

• Pending sending pause – sua conta está sob análise. Os problemas que nos fizeram colocar suaconta sob análise não foram resolvidos. Nesta situação, normalmente pausamos a capacidadede envio de e-mails da sua conta. No entanto, devido à natureza da sua conta, será necessárioanalisar sua conta antes que qualquer outra ação seja tomada.

• Bounce Rate – A porcentagem de e-mails enviados a partir de sua conta que resultaram em umadevolução definitiva.

• Complaint Rate – A porcentagem de e-mails enviados a partir de sua conta que resultaram emdestinatários os marcando como spam.

Note

As seções Bounce Rate e Complaint Rate também incluem mensagens de status paraas respectivas métricas. A seguir está uma lista de mensagens de status que podem serexibidas para essas métricas:• Healthy – A métrica está dentro dos níveis normais.• Almost healed – A métrica fez com que sua conta fosse colocada sob análise. Desde

que o período de análise começou, a métrica permaneceu abaixo da taxa máxima. Se amétrica permanecer abaixo da taxa máxima, o status dessa métrica será alterado paraHealthy antes do término do período de análise.

• Under review – A métrica fez com que sua conta fosse colocada sob análise e aindaestá acima da taxa máxima. Se o problema que fez com que a métrica excedesse a taxamáxima não estiver resolvido até o final do período de análise, poderemos pausar acapacidade da sua conta para enviar e-mails.

• Sending pause – A métrica causou a pausa da capacidade da sua conta para enviar e-mails. Enquanto a capacidade da sua conta para enviar e-mails estiver pausada, vocênão pode enviar e-mails usando o Amazon SES. Você poderá solicitar que revisemosessa decisão. Para saber mais sobre como enviar uma solicitação para análise, consultePerguntas frequentes sobre o processo de análise de envios do Amazon SES (p. 474).

• Pending sending pause – A métrica fez com que sua conta fosse colocada sob análise.Os problemas que causaram esse período de análise não foram resolvidos. Essesproblemas podem causar a pausa da capacidade da sua conta para enviar e-mails.Um membro da equipe do Amazon SES precisa analisar sua conta antes de tomarmosqualquer outra ação.

• Other Notifications – Se sua conta estiver enfrentando problemas relacionados à reputação que nãoestejam relacionados a devoluções nem a reclamações, será exibida aqui uma breve mensagem.Para obter mais informações sobre as notificações que podem ser mostradas nesta área, consulteMensagens do painel de reputação (p. 361).

Note

O painel de reputação está disponível para todos os usuários que têm acesso ao console daAWS. Você não pode usar políticas do IAM para restringir o acesso ao painel de reputação.

Mensagens do painel de reputaçãoO painel de reputação do Amazon SES fornece métricas importantes relacionadas à sua conta. As seçõesa seguir descrevem as mensagens que podem ser exibidas nesse painel e fornecem dicas e informaçõesque você pode usar para resolver problemas relacionados à reputação do remetente.

Esta seção contém informações sobre os seguintes tipos de notificações:

361

Page 369: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorMensagens de status geral

• Mensagens de status (p. 362)• Notificação da taxa de devolução (p. 363)• Notificação da taxa de reclamação (p. 364)• Notificação da organização antispam (p. 365)• Notificação de feedback direto (p. 366)• Notificação da lista de bloqueio de domínio (p. 367)• Notificação de revisões internas (p. 368)• Notificação do provedor de caixa postal (p. 369)• Notificação de feedback do destinatário (p. 370)• Notificação de contas relacionadas (p. 371)• Notificação de spamtrap (p. 371)• Notificação de site vulnerável (p. 372)• Outra notificação (p. 373)

Mensagens de statusAo usar o painel de reputação, você verá uma mensagem que descreve o status da sua conta do AmazonSES. A seguir, encontra-se uma lista de possíveis valores de status da conta:

• Healthy – não há problemas que estejam afetando sua conta.• Under review – sua conta está sob análise. Se os problemas que nos fizeram colocar sua conta sob

análise não forem resolvidos até o final do período de análise, poderemos pausar a capacidade de suaconta enviar e-mails.

• Pending end of review decision – sua conta está sob análise. Devido à natureza dos problemas que nosfizeram colocar sua conta sob análise, será necessário realizar uma análise manual da sua conta antesde tomar qualquer outra ação.

• Sending paused – pausamos a capacidade de envio de e-mails da sua conta. Enquanto a capacidade dasua conta para enviar e-mails estiver pausada, não será possível enviar e-mails usando o Amazon SES.Você poderá solicitar que revisemos essa decisão. Para saber mais sobre como solicitar uma revisão,consulte Perguntas frequentes sobre o processo de análise de envios do Amazon SES (p. 474).

• Pending sending pause – sua conta está sob análise. Os problemas que nos fizeram colocar sua contasob análise não foram resolvidos. Nesta situação, normalmente pausamos a capacidade de envio dee-mails da sua conta. No entanto, devido à natureza da sua conta, será necessário analisar sua contaantes que qualquer outra ação seja tomada.

Além disso, as seções Bounce Rate e Complaint Rate do painel de reputação exibem os resumos dostatus para suas respectivas métricas. A seguir, encontra-se uma lista de possíveis valores de status damétrica:

• Healthy – A métrica está dentro dos níveis normais.• Almost healed – A métrica fez com que sua conta fosse colocada sob análise. Desde que o período de

análise começou, a métrica permaneceu abaixo da taxa máxima. Se a métrica permanecer abaixo dataxa máxima, o status dessa métrica será alterado para Healthy antes do término do período de análise.

• Under review – A métrica fez com que sua conta fosse colocada sob análise e ainda está acima da taxamáxima. Se o problema que fez com que a métrica excedesse a taxa máxima não estiver resolvido até ofinal do período de análise, poderemos pausar a capacidade da sua conta para enviar e-mails.

• Sending pause – A métrica causou a pausa da capacidade da sua conta para enviar e-mails. Enquantoa capacidade da sua conta para enviar e-mails estiver pausada, você não pode enviar e-mails usandoo Amazon SES. Você poderá solicitar que revisemos essa decisão. Para saber mais sobre como enviaruma solicitação para análise, consulte Perguntas frequentes sobre o processo de análise de envios doAmazon SES (p. 474).

362

Page 370: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação da taxa de devolução

• Pending sending pause – A métrica fez com que sua conta fosse colocada sob análise. Os problemasque causaram esse período de análise não foram resolvidos. Esses problemas podem causar a pausada capacidade da sua conta para enviar e-mails. Um membro da equipe do Amazon SES precisaanalisar sua conta antes de tomarmos qualquer outra ação.

Notificação da taxa de devoluçãoEsta seção contém informações adicionais sobre as notificações de taxa de devolução mostradas nopainel de reputação do Amazon SES.

Por que você recebeu esta notificaçãoVocê deve manter uma taxa de devolução abaixo de 5%. Taxas de devolução mais altas podem afetar aentrega de seus e-mails. Se a taxa de devolução for de 5% ou superior, colocaremos automaticamente suaconta sob análise. Se a taxa de devolução for de 10% ou superior, poderemos pausar a capacidade da suaconta enviar e-mails adicionais até que você resolva o problema que causou a alta taxa de devolução.

A taxa de devolução é baseada no número de devoluções definitivas geradas pela conta do AmazonSES. Uma devolução definitiva ocorre quando um e-mail é enviado para um endereço que não existe.As devoluções flexíveis, que ocorrem quando o endereço de um destinatário está temporariamenteindisponível para receber a mensagem, não são consideradas neste cálculo. E-mails devolvidos enviadospara endereços e domínios verificados, bem como e-mails enviados para o simulador de caixa de entradado Amazon SES, também não são considerados neste cálculo.

A maioria dos provedores de e-mail interpreta uma alta taxa de devolução como um sinal de que umremetente não está gerenciando de maneira adequada a lista de destinatários, e que o remetente podeestar enviando e-mail não solicitado. Como os provedores de e-mail levam a sério as taxas de devolução,o Amazon SES toma uma ação rápida para proteger a reputação do remetente.

O que pode ser feito para resolver o problemaSe você ainda não tiver feito isso, implemente um processo para capturar e gerenciar devoluções ereclamações. Todas as contas do Amazon SES devem ter esses processos implementados. Para obtermais informações, consulte Métricas de êxito para programas de e-mail (p. 449).

Em seguida, determine quais endereços de e-mail estão gerando devoluções, e crie e implemente umplano para reduzir ou eliminar essas devoluções. Se a capacidade de sua conta para enviar e-mails já foipausada, envie um e-mail para [email protected] para solicitar uma lista de reclamações recentes.

Se sua conta estiver sob análiseNo final do período de análise, se a taxa de devolução de sua conta permanecer acima de 10%,poderemos pausar a capacidade de sua conta para enviar e-mails até que você resolva o problema.

Se você implementou alterações que acredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Em seu e-mail,descreva as alterações implementadas. Se nós concordarmos que as alterações reduzirão sua taxa dedevolução, ajustaremos nossos cálculos para considerar apenas as devoluções recebidas depois que asalterações foram implementadas.

Se a capacidade de sua conta para enviar e-mails estiverpausadaVocê poderá solicitar que reconsideremos essa decisão. Para obter mais informações, consulte Perguntasfrequentes sobre o processo de análise de envios do Amazon SES (p. 474).

363

Page 371: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação da taxa de reclamação

Quando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mail [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Inclua detalhesdas ações tomadas para resolver este problema, bem como detalhes dos seus planos para garantir queesse problema não ocorra novamente. Vamos analisar sua solicitação e alterar o status da sua conta, senecessário.

Notificação da taxa de reclamaçãoEsta seção contém informações adicionais sobre as notificações de taxas de reclamação mostradas nopainel de reputação do Amazon SES.

Por que você recebeu esta notificaçãoVocê deve manter uma taxa de reclamação abaixo de 0,1%. Se a taxa de reclamação for de 0,1% ousuperior, colocaremos automaticamente sua conta sob análise. Se a taxa de reclamação for de 0,5% ousuperior, poderemos pausar a capacidade da sua conta enviar e-mails adicionais até que você resolva oproblema que causou a alta taxa de reclamação.

A taxa de reclamação é baseada no número de relatórios de reclamação gerados pelos e-mails enviadosda sua conta do Amazon SES. Nem todos os provedores de e-mail enviam informações ao AmazonSES sobre o número de reclamações que recebem, logo, este valor é ajustado com base no número deprovedores que fornecem estas informações.

A maioria dos provedores de e-mail interpretam uma alta taxa de reclamação como um sinal de que umremetente está enviando e-mails não solicitados ou indesejados. Como os provedores de e-mail levama sério as taxas de reclamação, o Amazon SES toma uma ação rápida para proteger a reputação doremetente.

O que pode ser feito para resolver o problemaSe você ainda não tiver feito isso, implemente um processo para capturar e gerenciar devoluções ereclamações. Todas as contas do Amazon SES devem ter esses processos implementados. Para obtermais informações, consulte Métricas de êxito para programas de e-mail (p. 449).

Em seguida, determine quais mensagens enviadas estão gerando reclamações, e implemente um planopara reduzi-las. Se a capacidade de sua conta para enviar e-mails já foi pausada, envie um e-mail [email protected] para solicitar uma lista de reclamações recentes.

Embora você deva imediatamente interromper o envio para endereços que possuem reclamações,é importante que você identifique os fatores que estão fazendo com que os destinatários enviemreclamações. Após identificar esses fatores, ajuste seus comportamentos de envio de e-mail parasolucioná-los.

Se sua conta estiver sob análiseNo final do período de análise, se a taxa de reclamação de sua conta permanecer acima de 0,5%,poderemos pausar a capacidade de sua conta para enviar e-mails até que você resolva o problema.

Se você implementou alterações que acredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Em seu e-mail,descreva as alterações implementadas. Se nós concordarmos que as alterações reduzirão sua taxa dereclamação, ajustaremos nossos cálculos para considerar apenas as reclamações recebidas depois queas alterações foram implementadas.

364

Page 372: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação da organização antispam

Se a capacidade de sua conta para enviar e-mails estiverpausadaVocê poderá solicitar que reconsideremos essa decisão. Para obter mais informações, consulte Perguntasfrequentes sobre o processo de análise de envios do Amazon SES (p. 474).

Quando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mail [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Inclua detalhesdas ações tomadas para resolver este problema, bem como detalhes dos seus planos para garantir queesse problema não ocorra novamente. Vamos analisar sua solicitação e alterar o status da sua conta, senecessário.

Notificação da organização antispamEsta seção contém informações adicionais sobre notificações da organização antispam mostradas nopainel de reputação do Amazon SES.

Por que você recebeu esta notificaçãoUma organização antispam confiável informou que alguns dos conteúdos que estão sendo enviados apartir da sua conta do Amazon SES foram sinalizados como não solicitados ou problemáticos por seussistemas.

O Amazon SES não tem informações detalhadas relacionadas às mensagens específicas que fizeramcom que a organização antispam sinalizasse seu conteúdo como problemático. Não podemos fornecero nome da organização que emitiu o relatório. Normalmente, as organizações antispam consideram umacombinação dos seguintes fatores: feedback do destinatário, métricas de engajamento da mensagem,tentativas de entregas para endereços inválidos, conteúdo sinalizado pelos seus filtros de spam eocorrências em spamtrap. Esta não é uma lista completa, outros fatores podem fazer com que essasorganizações sinalizem o seu conteúdo.

O que pode ser feito para resolver o problemaPara resolver este problema, você precisa determinar quais aspectos do seu programa de envio de e-mailpode estar fazendo com que a organização antispam sinalize seu e-mail como problemático. Em seguida,você precisa alterar o programa de envio para solucionar esses problemas.

Se sua conta estiver sob análiseNo final do período de análise, se a organização antispam continuar a identificar o email enviado da suaconta como problemático, poderemos pausar a capacidade de sua conta para enviar e-mails até vocêresolver o problema.

Se você implementou alterações que acredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Em sua mensagem,forneça detalhes das alterações feitas. Quando recebermos essas informações, vamos estender operíodo de análise para garantir que só estamos analisando as notificações de organização antispam querecebemos depois que você implementou as alterações. No final do período de análise estendido, suaconta não será mais listada pela organização antispam e removeremos o período de análise da sua conta.

Se a capacidade de sua conta para enviar e-mails estiverpausadaVocê poderá solicitar que reconsideremos essa decisão. Para obter mais informações, consulte Perguntasfrequentes sobre o processo de análise de envios do Amazon SES (p. 474).

365

Page 373: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação de feedback direto

Quando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mail [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Inclua detalhesdas ações tomadas para resolver este problema, bem como detalhes dos seus planos para garantir queesse problema não ocorra novamente. Vamos analisar sua solicitação e alterar o status da sua conta, senecessário.

Notificação de feedback diretoEsta seção contém informações adicionais sobre as notificações de feedback direto mostradas no painelde reputação do Amazon SES.

Por que você recebeu esta notificaçãoUm número significativo de usuários entrou em contato com o Amazon SES diretamente para relatarmensagens que são recebidas de um endereço ou domínio associado à sua conta do Amazon SES. Essetipo de feedback não é visível nas reclamações relatadas por provedores de caixa postal diretamente enão está incluído nas métricas de devolução e reclamação mostradas no painel de reputação.

Para proteger a privacidade dos usuários que relataram estes problemas, não podemos fornecer seusendereços de e-mail.

Os destinatários podem reclamar para o Amazon SES quando recebem mensagens que não secadastraram para receber, quando não recebem o tipo de e-mail que esperavam receber, quando nãoacham que o e-mail que recebem é útil ou interessante, quando não reconhecem que as mensagenssão algo que eles se cadastraram ou quando estiverem recebendo uma quantidade muito grande demensagens. Esta lista não está completa. Os fatores que são relevantes no seu caso dependem do seuprograma de envio de e-mail específico.

O que pode ser feito para resolver o problemaRecomendamos que você implemente uma estratégia de inclusão dupla, conforme descrito em Construire manter suas listas (p. 453), para a aquisição de novos endereços e que apenas envie e-mails paraendereços que concluam o processo de inclusão dupla.

Além disso, você deve limpar sua lista de endereços que não interagiu com seus e-mails recentemente.Você pode usar o rastreamento abra e clique, conforme descrito em Monitoramento da atividade de enviodo Amazon SES (p. 252), para determinar quais usuários estão vendo e interagindo com o conteúdoenviado.

Se sua conta estiver sob análiseNo final do período de análise, se o Amazon SES continuar a receber um número significativo dereclamações diretas sobre mensagens enviadas de sua conta, poderemos pausar a capacidade de suaconta para enviar e-mails até você resolver o problema.

Se você implementou alterações que acredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Forneça informaçõesdetalhadas sobre as etapas que tiver feito para resolver o problema e descreva como essas etapas evitamque o problema ocorra novamente no futuro. Se nós concordarmos que as alterações feitas resolvem oproblema de forma adequada, cancelaremos o período de análise da sua conta.

Se a capacidade de sua conta para enviar e-mails estiverpausadaVocê poderá solicitar que reconsideremos essa decisão. Para obter mais informações, consulte Perguntasfrequentes sobre o processo de análise de envios do Amazon SES (p. 474).

366

Page 374: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação da lista de bloqueio de domínio

Quando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mail [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Inclua detalhesdas ações tomadas para resolver este problema, bem como detalhes dos seus planos para garantir queesse problema não ocorra novamente. Vamos analisar sua solicitação e alterar o status da sua conta, senecessário.

Notificação da lista de bloqueio de domínioEsta seção contém informações adicionais sobre as notificações da lista de bloqueio de domíniomostradas no painel de reputação do Amazon SES.

Por que você recebeu esta notificaçãoOs e-mails enviados a partir da sua conta do Amazon SES contêm referências a domínios que foramlistados em uma lista de bloqueio de domínio confiável. Domínios nestas listas são normalmenteassociados a comportamentos ofensivos ou mal-intencionados. Os domínios em questão podem ou nãoser os domínios a partir dos quais você está enviando e-mails. As mensagens que incluem referências oulinks para um domínio em uma lista de bloqueio ou que incluem imagens hospedadas em um domínio dalista, também podem ser sinalizadas.

O Amazon SES não pode fornecer os nomes dos domínios que estão fazendo com que sua mensagemseja sinalizada, ou identificar quais e-mails foram marcados dessa forma.

O que pode ser feito para resolver o problemaCrie uma lista de todos os domínios mencionados nos e-mails enviados por meio do Amazon SES euse a ferramenta Spamhaus Domain Lookup em https://www.spamhaus.org/lookup/ para determinarquais domínios mencionados em seu e-mail estão na lista de bloqueio de domínio. Mais de um domíniomencionado nos e-mails enviados por você pode estar nesta lista de bloqueio.

O Amazon SES não está afiliado à lista de bloqueio de domínio Spamhaus e não garante a precisão dosdomínios na lista. A lista de bloqueio de domínio Spamhaus e a Domain Lookup Tool são operadas emantidas sob propriedade do Spamhaus Project.

Se sua conta estiver sob análiseNo final do período de análise, se uma parte significativa dos e-mails enviados por meio do Amazon SESainda contiver referências a domínios presentes na lista negra, poderemos pausar a capacidade de suaconta para enviar e-mails até você resolver o problema.

Se você implementou alterações que acredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Em sua mensagem,forneça detalhes das alterações feitas. Quando recebermos essas informações, estenderemos o períodode análise para garantir que só estamos analisando a quantidade de domínios presentes na lista debloqueios no seu e-mail depois que você implementou as alterações. No final do período de análiseestendido, se a quantidade de notificações da lista de bloqueio de domínio for reduzida ou eliminada econsiderarmos que você realizou etapas para evitar que esse problema ocorra novamente no futuro,cancelaremos o período de análise da sua conta.

Se a capacidade de sua conta para enviar e-mails estiverpausadaVocê poderá solicitar que reconsideremos essa decisão. Para obter mais informações, consulte Perguntasfrequentes sobre o processo de análise de envios do Amazon SES (p. 474).

367

Page 375: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação de revisões internas

Quando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mail [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Inclua detalhesdas ações tomadas para resolver este problema, bem como detalhes dos seus planos para garantir queesse problema não ocorra novamente. Vamos analisar sua solicitação e alterar o status da sua conta, senecessário.

Notificação de revisões internasEsta seção contém informações adicionais sobre as notificações de revisão interna mostradas no painel dereputação do Amazon SES.

Por que você recebeu esta notificaçãoUma análise abrangente da sua conta identificou diversas características que podem fazer com queprovedores de caixa postal ou destinatários identifiquem suas mensagens como spam.

Para proteger o nosso processo de detecção de abuso, não podemos revelar os fatores específicos quelevaram a sua conta a ser sinalizada desta forma.

Fatores comuns que podem levar a essa determinação incluem o seguinte:

• Mensagens que estão sendo sinalizadas por sistemas antispam comerciais.• Conteúdo da mensagem que implica que o destinatário não solicitou explicitamente o e-mail.• Incompatibilidades entre a mensagem do remetente e a marca no corpo do e-mail.• Conteúdo que não deixa claro quem é o remetente.• Envio de mensagens que lidam com conteúdo que está associado com um e-mail não solicitado.• Padrões de formatação associados com e-mails não solicitados.• Enviar de ou fazer referência a domínios que tenham má reputação.

Essa não é uma lista completa. O motivo específico para esta notificação pode ser uma combinação dequalquer um destes fatores ou também pode ser algo não listado.

O que pode ser feito para resolver o problemaAs sugestões a seguir podem ajudar a reduzir a gravidade do problema:

• Certificar-se de que os destinatários que você está entrando em contato são aqueles que explicitamentesolicitaram receber e-mail.

• Nunca compre, alugue ou empreste listas de destinatários de e-mails.• Não tente ocultar sua identidade ou o objetivo da comunicação nas mensagens que enviar.• Crie uma lista de todos os domínios mencionados nos e-mails enviados por meio do Amazon SES e

use a ferramenta Spamhaus Domain Lookup em https://www.spamhaus.org/lookup/ para determinar sealgum desses domínios está na lista de bloqueio de domínio Spamhaus.

• Certifique-se de que você está seguindo as melhores práticas do setor ao projetar seus e-mails.

Esta lista não é abrangente, mas deve ajudá-lo a identificar alguns dos mais comuns fatores que podemfazer com que seus e-mails sejam marcados.

O Amazon SES não está afiliado à lista de bloqueio de domínio Spamhaus e não garante a precisão dosdomínios na lista. A lista de bloqueio de domínio Spamhaus e a Domain Lookup Tool são operadas emantidas sob propriedade do Spamhaus Project.

368

Page 376: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação do provedor de caixa postal

Se a sua conta estiver sob análise ou se a capacidade da suaconta para enviar e-mails for pausadaQuando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mailpara [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Forneçainformações detalhadas sobre as etapas que tiver feito para resolver o problema e descreva como essasetapas evitam que o problema ocorra novamente no futuro. Se nós concordarmos que as alterações feitasresolvem o problema de forma adequada, cancelaremos o período de análise ou removeremos o pausa deenvio da sua conta.

Se removermos um período de análise ou uma pausa de envios de sua conta e observarmos o mesmoproblema posteriormente, poderemos colocar sua conta sob análise ou pausar sua capacidade de enviare-mails novamente. Em casos extremos, ou se observamos repetidas ocorrências do mesmo problema,poderemos suspender permanentemente a capacidade da sua conta para enviar e-mails.

Consulte Perguntas frequentes sobre o processo de análise de envios do Amazon SES (p. 474) paraobter mais informações sobre o que fazer se sua conta estiver sob análise ou se a capacidade da suaconta para enviar e-mails for pausada.

Notificação do provedor de caixa postalEsta seção contém informações adicionais sobre as notificações do provedor de caixa postal mostradas nopainel de reputação do Amazon SES.

Por que você recebeu esta notificaçãoUm grande provedor de caixa postal relatou que e-mails não solicitados ou mal-intencionados estão sendoenviados a partir de um endereço ou domínio associado à sua conta do Amazon SES.

Não podemos compartilhar a identidade da organização que emitiu este relatório. Além disso, nãotemos informações sobre fatores específicos que fizeram com que o provedor de caixa postal enviasseo relatório. Normalmente, os provedores de caixa postal tomam estas decisões com base no feedbackdos clientes, métricas de envolvimento do cliente, tentativa de entregas para endereços inválidos e noconteúdo que é sinalizado pelos filtros de spam. Esta lista não é abrangente, podem haver outros fatoresque fizeram com que o provedor de caixa postal sinalizasse seu conteúdo.

O que pode ser feito para resolver o problemaPara resolver este problema, você precisa determinar quais aspectos do seu programa de envio de e-mailpode estar fazendo com que os provedores de caixa postal sinalizem seu e-mail como problemático. Vocêprecisa, em seguida, alterar o programa de envio para solucionar esses problemas.

Se sua conta estiver sob análiseNo final do período de análise, se o provedor de caixa postal continuar a identificar o e-mail enviado dasua conta como problemático, poderemos pausar a capacidade de sua conta para enviar e-mails até vocêresolver o problema.

Se você implementou alterações que acredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Em sua mensagem,forneça detalhes das alterações feitas. Quando recebermos essas informações, vamos estender operíodo de análise para garantir que só estamos analisando a quantidade de notificações do provedor decaixa postal que recebemos depois que você implementou as alterações. No final do período de análiseestendido, se o provedor de caixa postal não reportar mais sua conta como problemática, poderemosremover o período de análise da sua conta.

369

Page 377: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação de feedback do destinatário

Se a capacidade de sua conta para enviar e-mails estiverpausadaVocê poderá solicitar que reconsideremos essa decisão. Para obter mais informações, consulte Perguntasfrequentes sobre o processo de análise de envios do Amazon SES (p. 474).

Quando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mail [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Inclua detalhesdas ações tomadas para resolver este problema, bem como detalhes dos seus planos para garantir queesse problema não ocorra novamente. Vamos analisar sua solicitação e alterar o status da sua conta, senecessário.

Notificação de feedback do destinatárioEsta seção contém informações adicionais sobre as notificações de feedback do destinatário mostradas nopainel de reputação do Amazon SES.

Por que você recebeu esta notificaçãoUm grande provedor de caixa postal relatou para nós que um grande número de seus usuários têmreportado e-mails enviados da sua conta do Amazon SES como não solicitado. Esse tipo de feedback nãoestá visível na reclamações relatadas por provedores de caixa postal diretamente e não esta incluído nasnotificações de devolução e reclamação do Amazon SES.

Um grande número de reclamações pode ter um impacto negativo em todos os usuários do Amazon SES.Para proteger sua reputação também de outros clientes do Amazon SES, tomamos medidas imediatasquando uma conta receber um determinado número de reclamações.

Não é possível fornecer uma lista de endereços de e-mail específicos que estão marcando seus e-mailscomo não solicitado. Além disso, não é possível compartilhar o nome do provedor de caixa postal querelatou este problema para nós.

O que pode ser feito para resolver o problemaPara resolver este problema, você precisa para determinar quais aspectos do seu programa de envio de e-mail pode estar fazendo com que seus destinatários enviem reclamações em relação a mensagens de e-mail que recebem. Após identificar esses fatores, altere suas práticas de envio de e-mail para solucioná-los.

Para adquirir novos endereços, recomendamos que você implemente uma estratégia de inclusão dupla,conforme descrito em Construir e manter suas listas (p. 453). Recomendamos que você apenas envie e-mails para endereços que tenham concluído o processo de inclusão dupla.

Além disso, você deve limpar sua lista de endereços que não interagiu com seus e-mails recentemente.Você pode usar o rastreamento abra e clique, conforme descrito em Monitoramento da atividade de enviodo Amazon SES (p. 252), para determinar quais usuários estão vendo e interagindo com o conteúdoenviado.

Se sua conta estiver sob análiseNo final do período de análise, se o provedor de caixa postal continuar a reportar um número significativode reclamações, poderemos pausar a capacidade de sua conta para enviar e-mails até você resolver oproblema.

Se você implementou alterações que acredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Em sua mensagem,forneça detalhes das alterações feitas. Quando recebermos essas informações, vamos estender o

370

Page 378: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação de contas relacionadas

período de análise para garantir que só estamos analisando a quantidade de reclamações do provedorde caixa postal que recebemos depois que você implementou as alterações. Ao final do período deanálise estendido, se a quantidade de reclamações do provedor de caixa postal for reduzida ou eliminada,poderemos remover a análise da sua conta.

Se a capacidade de sua conta para enviar e-mails estiverpausadaVocê poderá solicitar que reconsideremos essa decisão. Para obter mais informações, consulte Perguntasfrequentes sobre o processo de análise de envios do Amazon SES (p. 474).

Quando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mail [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Inclua detalhesdas ações tomadas para resolver este problema, bem como detalhes dos seus planos para garantir queesse problema não ocorra novamente. Vamos analisar sua solicitação e alterar o status da sua conta, senecessário.

Notificação de contas relacionadasEsta seção contém informações adicionais sobre as notificações de contas relacionadas mostradas nopainel de reputação do Amazon SES.

Por que você recebeu esta notificaçãoDetectamos sérios problemas relacionados ao e-mails enviados de outra conta Amazon SES. Acreditamosque a conta com problemas está relacionada à sua conta do AWS, então tomamos providências paraevitar problemas semelhantes.

O que pode ser feito para resolver o problemaQuando pausamos a capacidade de uma conta para enviar e-mails, sempre enviamos informaçõessobre os motivos da pausa de envio para o proprietário dessa conta. Consulte o e-mail que enviamos aoproprietário da conta relacionada para obter mais informações.

Você deve resolver os problemas com a conta relacionada primeiro. Após implementar alterações queacredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereçode e-mail associado à sua conta da AWS. Forneça informações detalhadas sobre as etapas que tiverfeito para resolver o problema e descreva como essas etapas evitam que o problema ocorra novamenteno futuro. Se nós concordarmos que as alterações feitas resolvem o problema de forma adequada,cancelaremos o período de análise ou removeremos o pausa de envio da sua conta.

Notificação de spamtrapEsta seção contém informações adicionais sobre notificações do spamtrap mostradas no painel dereputação do Amazon SES.

Por que você recebeu esta notificaçãoUma organização antispam de terceiros relatou que seus endereços de spamtrap recentemente receberame-mails de um endereço verificado ou de domínios associados à sua conta do Amazon SES.

Um spamtrap é um endereço de e-mail inativo que é usado exclusivamente para atrair e-mails nãosolicitados (spam). Um grande número de relatos de spamtraps pode ter um impacto negativo em todosos usuários do Amazon SES. Para proteger sua reputação e também de outros clientes do Amazon SES,tomamos medidas imediatas quando uma conta enviar um quantidade determinada de e-mails paraendereços de spamtrap.

371

Page 379: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorNotificação de site vulnerável

O que pode ser feito para resolver o problemaNão é possível exibir os endereços de e-mail associados ao spamtrap que você encontrou. Essesendereços são rigorosamente protegidos por organizações proprietárias e assim que os endereços sãoconhecidos, eles se tornam inútil.

O envio de e-mails para endereços spamtrap normalmente indica que há um problema com a forma comovocê adquirir os endereços de e-mail dos clientes. Por exemplo, listas de endereços de e-mail compradaspodem conter endereços spamtrap, e é por isso que enviar para listas compradas ou alugadas é proibidode acordo com os termos de serviço do Amazon SES. Para adquirir novos endereços, recomendamosque você implemente uma estratégia de inclusão dupla, conforme descrito em Construir e manter suaslistas (p. 453). Recomendamos que você apenas envie e-mails para endereços que tenham concluído oprocesso de inclusão dupla.

Além disso, você deve limpar sua lista de endereços que não interagiu com seus e-mails recentemente.Você pode usar o rastreamento abra e clique, conforme descrito em Monitoramento da atividade de enviodo Amazon SES (p. 252), para determinar quais usuários estão vendo e interagindo com o conteúdoenviado.

Se sua conta estiver sob análiseNo final do período de análise, se mensagens ainda estiverem sendo enviadas para endereços despamtrap de sua conta, poderemos pausar a capacidade de sua conta para enviar e-mails até vocêresolver o problema.

Se você implementou alterações que acredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Em sua mensagem,forneça detalhes das alterações feitas. Quando recebermos essas informações, vamos estender operíodo de análise para garantir que só estamos analisando a quantidade de relatórios de spamtrap querecebemos depois que você implementou as alterações. Ao final do período de análise estendido, se aquantidade de relatórios de spamtrap for reduzida ou eliminada, poderemos remover a análise da suaconta.

Se a capacidade de sua conta para enviar e-mails estiverpausadaVocê poderá solicitar que reconsideremos essa decisão. Para obter mais informações, consulte Perguntasfrequentes sobre o processo de análise de envios do Amazon SES (p. 474).

Quando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mail [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Inclua detalhesdas ações tomadas para resolver este problema, bem como detalhes dos seus planos para garantir queesse problema não ocorra novamente. Vamos analisar sua solicitação e alterar o status da sua conta, senecessário.

Notificação de site vulnerávelEsta seção contém informações adicionais sobre as notificações de site vulnerável mostradas no painel dereputação do Amazon SES.

Por que você recebeu esta notificaçãoUma análise abrangente descobriu que as mensagens estão sendo enviadas a partir da sua conta quenós acreditamos que você não gostaria de enviar. Estas mensagens são altamente prováveis de seremmarcadas como spam por provedores de caixa postal e destinatários.

372

Page 380: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorOutra notificação

Na maioria dos casos nestas situações, um terceiro está usando indevidamente um recurso do seu sitepara enviar e-mails indesejados. Por exemplo, se o seu site contém um recurso "enviar por e-mail paraum amigo", "entrar em contato conosco", "convidar um amigo" ou semelhante, um terceiro pode usar esserecurso para enviar e-mails não solicitados.

O que pode ser feito para resolver o problemaPrimeiro, identifique os recursos do seu site ou aplicativos que podem permitir que terceiros enviem e-mails usando o Amazon SES sem o seu conhecimento. Para solicitar um exemplo das mensagens queacreditamos que foram enviadas dessa maneira, envie um e-mail para nós em [email protected].

Em seguida, modifique seu aplicativo ou site para evitar o envio não solicitado. Por exemplo, adicioneum CAPTCHA, limite a taxa na qual os e-mails podem ser enviados, remova a capacidade dos usuáriosde enviar conteúdo personalizado, exija que os usuários façam login para enviar e-mail e remova acapacidade do aplicativo de gerar várias notificações simultâneas.

Se a sua conta estiver sob análise ou se a capacidade da suaconta para enviar e-mails for pausadaQuando você tiver implementado alterações que acredita que resolverão o problema, envie um e-mail [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Inclua detalhesdas ações tomadas para resolver este problema, bem como detalhes dos seus planos para garantir queesse problema não ocorra novamente. Vamos analisar sua solicitação e alterar o status da sua conta, senecessário.

Se removermos um período de análise ou uma pausa de envios de sua conta e observarmos o mesmoproblema posteriormente, poderemos colocar sua conta sob análise ou pausar sua capacidade de enviare-mails novamente. Em casos extremos, ou se observamos repetidas ocorrências do mesmo problema,poderemos suspender permanentemente a capacidade da sua conta para enviar e-mails.

Consulte Perguntas frequentes sobre o processo de análise de envios do Amazon SES (p. 474) paraobter mais informações sobre o que fazer se sua conta estiver sob análise ou se a capacidade da suaconta para enviar e-mails for pausada.

Outra notificaçãoEsta seção contém informações adicionais sobre outras notificações mostradas no painel de reputação doAmazon SES.

Por que você recebeu esta notificaçãoUma revisão automática ou humana identificou problemas que não estão listados nas seções anterioresdeste documento.

O que pode ser feito para resolver o problemaConsulte o e-mail que você recebeu de nós para obter detalhes sobre o problema específico. Se possível,resolva esse problema e envie um e-mail para [email protected] a partir do endereço de e-mailassociado à sua conta da AWS. Em seu e-mail, descreva as alterações implementadas. Dependendo dasua situação específica e da natureza dos problemas que descobrimos, poderemos encerrar o período deanálise ou restaurar a capacidade de sua conta para enviar e-mails.

373

Page 381: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de alarmes com o CloudWatch

Criação de alarmes de monitoramento de reputaçãocom o CloudWatch

O Amazon SES publica automaticamente duas métricas relacionadas à reputação no AmazonCloudWatch: Reputation.BounceRate e Reputation.ComplaintRate. Você pode usar essasmétricas para criar alarmes que notificam quando suas taxas de devolução ou reclamação atingirem níveisque possa afetar sua capacidade de enviar e-mail.

Note

Os procedimentos nesta seção omitem algumas informações sobre configurações opcionais paraalarmes do CloudWatch. Para obter instruções detalhadas, consulte Criar alarmes do AmazonCloudWatch no Guia do usuário do Amazon CloudWatch.

Para criar um alarme do CloudWatch

1. Crie um novo tópico do Amazon SNS e, em seguida, inscreva-se nele usando o endpoint de suapreferência (por exemplo, e-mail ou SMS). Para obter mais informações, consulte Criar um tópicoe Inscrever um endpoint em um tópico no Guia do desenvolvedor do Amazon Simple NotificationService.

2. Abra o console do CloudWatch em https://console.aws.amazon.com/cloudwatch/.3. No painel de navegação, selecione Alarmes.4. Na página Specify metric and conditions (Especificar métrica e condições), faça o seguinte:

a. Em Metric (Métrica), escolha Select metric (Selecionar métrica).b. Na lista de métricas, escolha SES.

Note

Se você nunca enviou um e-mail na região da AWS atual, o SES pode não ser exibidona lista de métricas disponíveis. É possível fazer com que as métricas do SES sejamexibidas enviando um e-mail de teste para o simulador de caixa postal do AmazonSES (p. 187). Em alguns minutos, as métricas serão exibidas no CloudWatch.

c. Escolha Account Metrics (Métricas da conta).d. Escolha a métrica para a qual você deseja criar o alarme.

Por exemplo, se você quiser criar um alarme quando sua taxa de devolução atingir determinadonível, escolha Reputation.BounceRate. Se você quiser criar um alarme quando sua taxa dereclamações atingir determinado nível, escolha Reputation.ComplaintRate.

Note

As métricas Reputation.BounceRate e Reputation.ComplaintRate não serão exibidasnesta página se a sua conta nunca tiver tido uma devolução ou uma reclamação,respectivamente.

Depois de selecionar uma métrica, escolha Select metric (Selecionar métrica).e. Na seção Conditions (Condições) em Threshold type (Tipo de limite), escolha Static (Estático).f. Em Whenever Reputation.MetricName is (Sempre que Reputation.MetricName for), escolha

Greater/Equal (Maior/Igual).g. Em than (que), especifique o valor que deve fazer com que o CloudWatch acione um alarme.

Se você estiver criando um alarme para monitorar sua taxa de devoluções, observe que oAmazon SES recomenda manter essa taxa abaixo de 5%. Se a taxa de devoluções da suaconta for maior que 10%, poderemos pausar a capacidade de envio de e-mails da conta. Por

374

Page 382: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de alarmes com o CloudWatch

esse motivo, você deve configurar o CloudWatch para enviar uma notificação quando a taxa dedevolução da sua conta for maior ou igual a 0,05 (5%), conforme mostrado na imagem a seguir.

Se você estiver criando um alarme para monitorar sua taxa de reclamações, observe que oAmazon SES recomenda manter essa taxa abaixo de 0,1%. Se a taxa de reclamações da suaconta for maior que 0,5%, poderemos pausar a capacidade de envio de e-mails da conta. Poresse motivo, você deve configurar o CloudWatch para enviar uma notificação quando a taxa dereclamação da sua conta for maior ou igual a 0,001 (0,1%), conforme mostrado na imagem aseguir.

375

Page 383: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de alarmes com o CloudWatch

h. Em Additional configuration (Configuração adicional), em Missing data treatment (Tratamento dedados ausentes), escolha Treat missing data as ignore (maintain the alarm state) (Tratar dadosausentes como ignorar (manter o estado do alarme)).

i. Escolha Next (Próximo).5. Na página Configure actions (Configurar ações), faça o seguinte:

a. Em Whenever this alarm state is (Sempre que o estado de alarme for), escolha in Alarm (Noalarme).

b. Em Select an SNS topic (Selecionar um tópico do SNS), escolha Select an existing SNS topic(Selecionar um tópico do SNS existente). Em Send notification to (Enviar notificação para),selecione o tópico que você criou e no qual se inscreveu na etapa 1.

c. Escolha Next (Próximo).6. Na página Add a description (Adicionar uma descrição), faça o seguinte:

a. Em Alarm name (Nome do alarme), insira um nome exclusivo para o alarme.b. (Opcional) Em Alarm description (Descrição do alarme), insira algum texto que descreva o alarme.c. Escolha Next (Próximo).

7. Na página Preview and create (Visualizar e criar), confirme as configurações que você especificou naspáginas anteriores. Quando estiver pronto para criar o alarme, escolha Create alarm (Criar alarme).

376

Page 384: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorComo pausar o envio de e-mails automaticamente

Como pausar o envio de e-mails automaticamentePara proteger sua reputação de remetente, é possível pausar temporariamente o envio de e-mails paramensagens enviadas usando conjuntos de configurações específicos, ou para todas as mensagensenviadas a partir de sua conta do Amazon SES em uma região específica da AWS.

Ao usar o Amazon CloudWatch e o Lambda, crie uma solução que pausa automaticamente o envio dee-mails caso suas métricas de reputação (como taxa de devoluções ou taxa de reclamações) excedamcertos limites. Este tópico contém procedimentos para configurar essa solução.

Tópicos nesta seção:• Pausa automática do envio de e-mails para a conta do Amazon SES (p. 377)• Pausa automática do envio de e-mails para um conjunto de configurações (p. 382)

Pausa automática do envio de e-mails para a conta doAmazon SESOs procedimentos nesta seção explicam as etapas para configurar o Amazon SES, Amazon SNS, AmazonCloudWatch e AWS Lambda para pausar automaticamente o envio de e-mails para a conta do AmazonSES em uma única região da AWS. Se você envia e-mails de várias regiões, repita os procedimentosdesta seção para cada região em que você deseja implementar esta solução.

Tópicos nesta seção:• Parte 1: Criar uma função do IAM (p. 377)• Parte 2: Criar a função do Lambda (p. 378)• Parte 3: reativar o envio de e-mail para sua conta (p. 379)• Parte 4: Criar um tópico do Amazon SNS (p. 379)• Parte 5: criar um alarme do CloudWatch (p. 380)• Parte 6: Testar a solução (p. 381)

Parte 1: Criar uma função do IAMA primeira etapa para configurar a pausa automática de envio de e-mails é criar uma função do IAM quepossa executar a operação de API UpdateAccountSendingEnabled.

Para criar a função IAM

1. Abra o console do IAM em https://console.aws.amazon.com/iam/.2. No painel de navegação, selecione Roles.3. Selecione Create role.4. Em Select type of trusted entity (Selecionar o tipo de entidade confiável), selecione AWS service

(serviço da AWS).5. Em Choose the service that will use this role (Escolhe o serviço que usará esta função), selecione

Lambda. Escolha Próximo: Permissões.6. Na página Attach permissions policies, escolha as políticas a seguir:

• AWSLambdaBasicExecutionRole• AmazonSESFullAccess

377

Page 385: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-

mails para a conta do Amazon SES

Tip

Use a caixa de pesquisa na parte superior da lista de políticas para localizar rapidamenteessas políticas.

Selecione Next: Review.7. Na página Review, em Name, digite um nome para a função. Selecione Create role.

Parte 2: Criar a função do LambdaDepois de criar uma função do IAM, você pode criar a função do Lambda que pausa o envio de e-mailspara sua conta.

Para criar a função do Lambda

1. Abra o console do AWS Lambda em https://console.aws.amazon.com/lambda/.2. Use o seletor de regiões para escolher a região onde você deseja implantar esta função do Lambda.

Note

Essa função pausa o envio de e-mails somente na região da AWS que você selecionar nestaetapa. Se você envia e-mails de mais de uma região, repita os procedimentos desta seçãopara cada região em que você deseja pausar automaticamente o envio de e-mails.

3. Escolha Create function.4. Em Create function, escolha Author from scratch.5. Em Author from scratch, conclua as seguintes etapas:

• Em Name (Nome), digite um nome para a função do Lambda.• Em Runtime (Tempo de execução), selecione Node.js 6.10.• Em Role, escolha Choose an existing role.• Em Existing role (Função existente), selecione a função do IAM criada em the section called “Parte

1: Criar uma função do IAM” (p. 377).

Escolha Create function.6. Em Function code, no editor de código, cole o seguinte código:

'use strict';

var aws = require('aws-sdk');

// Create a new SES object. var ses = new aws.SES();

// Specify the parameters for this operation. In this case, there is only one// parameter to pass: the Enabled parameter, with a value of false// (Enabled = false disables email sending, Enabled = true enables it).var params = { Enabled: false};

exports.handler = (event, context, callback) => { // Pause sending for your entire SES account ses.updateAccountSendingEnabled(params, function(err, data) { if(err) {

378

Page 386: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-

mails para a conta do Amazon SES

console.log(err.message); } else { console.log(data); } });};

Escolha Salvar.7. Escolha Test. Se a janela Configure test event for exibida, digite um nome no campo Event name e

escolha Create.8. Confirme se a barra de notificação na parte superior da página diz Execution result:

succeeded. Se a função não for executada, faça o seguinte:

• Verifique se a função do IAM criada em the section called “Parte 1: Criar uma função doIAM” (p. 377) contém as políticas corretas.

• Verifique se o código da função do Lambda não contém nenhum erro. O editor de código doLambda automaticamente destaca os erros de sintaxe e outros problemas potenciais.

Parte 3: reativar o envio de e-mail para sua contaUm efeito secundário do teste de função do Lambda em the section called “Parte 2: Criar a função doLambda” (p. 378) é que o envio de e-mails para sua conta do Amazon SES está em pausa. Na maioriados casos, não é aconselhável pausar o envio para sua conta enquanto o alarme do CloudWatch não foracionado.

Os procedimentos nesta seção reativam o envio de e-mail para sua conta Amazon SES. Para concluiresses procedimentos, você deve instalar e configurar a AWS Command Line Interface. Para obter maisinformações, consulte o Guia do usuário da AWS Command Line Interface.

Para reativar o envio de e-mail

1. Na linha de comando, digite o seguinte comando para reabilitar o envio de e-mails para a sua conta:aws ses update-account-sending-enabled --enabled --region us-west-2

Note

Substitua us-west-2 no comando anterior pelo nome da região onde você deseja reativar oenvio de e-mails.

2. Na linha de comando, digite o seguinte comando para verificar o status de envio de e-mails para a suaconta: aws ses get-account-sending-enabled --region us-west-2

Se você vir a saída a seguir, isso significa que conseguiu reativar o envio de e-mail para sua conta:

{ "Enabled": true }

Parte 4: Criar um tópico do Amazon SNSPara o CloudWatch executar sua função do Lambda quando um alarme for acionado, primeiro énecessário cria rum tópico do Amazon SNS e assinar a função do Lambda para ele.

Para criar um tópico do Amazon SNS

1. Abra o console do Amazon SNS em https://console.aws.amazon.com/sns/v3/home.

379

Page 387: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-

mails para a conta do Amazon SES

2. Use o seletor de regiões para escolher a região onde você deseja pausar automaticamente o envio dee-mails.

3. No painel de navegação, escolha Tópicos.4. Selecione Criar novo tópico5. Na janela Create new topic, em Topic name, digite um nome para o tópico. Opcionalmente, você pode

digitar um nome mais descritivo no campo Display name.

Escolha Create topic.6. Na lista de tópicos, marque a caixa ao lado do tópico que você criou na etapa anterior. No menu

Actions, escolha Subscribe to topic.7. Na janela Create subscription, faça as seguintes seleções:

• Em Protocol (Protocolo), selecione AWS Lambda.• Em Endpoint, selecione a função do Lambda criada em the section called “Parte 2: Criar a função do

Lambda” (p. 378).• Em Version or alias, escolha default.

8. Selecione Create subscription.

Parte 5: criar um alarme do CloudWatchEsta seção contém procedimentos para criar um alarme no CloudWatch que é acionado quando umamétrica atinge determinado limite. Quando o alarme é acionado, ele envia uma notificação ao tópicodo Amazon SNS criado em the section called “Parte 4: Criar um tópico do Amazon SNS” (p. 379)que, em seguida, executa a função do Lambda criada em the section called “Parte 2: Criar a função doLambda” (p. 378).

Para criar um alarme do CloudWatch

1. Abra o console do CloudWatch em https://console.aws.amazon.com/cloudwatch/.2. Use o seletor de regiões para escolher a região onde você deseja pausar automaticamente o envio de

e-mails.3. No painel de navegação, selecione Alarmes.4. Escolha Create Alarm.5. Na janela Create Alarm, em SES Metrics, escolha Account Metrics.6. Em Metric Name, escolha uma das opções a seguir:

• Reputation.BounceRate – selecione essa métrica se desejar pausar o envio de e-mails para suaconta quando a taxa de devolução definitiva geral para sua conta ultrapassar um limite definido porvocê.

• Reputation.ComplaintRate – selecione essa métrica se desejar pausar o envio de e-mail para suaconta quando a taxa de reclamação geral para sua conta ultrapassar um limite definido por você.

Escolha Next.7. Execute as etapas a seguir:

• Em Alarm Threshold, para Name, digite um nome para o alarme.• Em Whenever: Reputation.BounceRate ou Whenever: Reputation.ComplaintRate, especifique o

limite que acionará o alarme.

Note

Sua conta será automaticamente colocada sob análise se a taxa de devolução ultrapassar10% ou se a taxa de reclamação ultrapassar 0,5%. Ao especificar a taxa de devolução ou

380

Page 388: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-

mails para a conta do Amazon SES

reclamação que fará com que o alarme do CloudWatch seja acionado, é recomendávelusar valores abaixo dessas taxas para impedir que sua conta seja colocada sob análise.

• Em Ações, em Sempre que este alarme, escolha Estado é ALARME. Em Send notification to (Enviarnotificação para), selecione o tópico do Amazon SNS criado em the section called “Parte 4: Criar umtópico do Amazon SNS” (p. 379).

Escolha Create Alarm.

Parte 6: Testar a soluçãoAgora você pode testar o alarme para verificar se ele executa a função do Lambda ao entrar no estadoALARM. Você pode usar a operação de API SetAlarmState para alterar temporariamente o estado doalarme.

Os procedimentos nesta seção são opcionais, mas é recomendável realizá-los para garantir aconfiguração correta da solução como um todo.

1. Na linha de comando, digite o seguinte comando para verificar o status de envio de e-mails para a suaconta: aws ses get-account-sending-enabled --region us-west-2

Note

Substitua us-west-2 no comando anterior pelo nome da região que você especificou naetapa anterior.

Se o envio estiver ativado para sua conta, você verá a saída a seguir:

{ "Enabled": true }

2. Na linha de comando, digite o seguinte comando para alterar temporariamente o estado do alarmepara ALARM: aws cloudwatch set-alarm-state --alarm-name MyAlarm --state-value ALARM --state-reason "Testing execution of Lambda function" --region us-west-2

Substitua MyAlarm no comando anterior pelo nome do alarme que você criou em the section called“Parte 5: criar um alarme do CloudWatch” (p. 380) e substitua us-west-2 pela região onde vocêdeseja pausar automaticamente o envio de e-mails.

Note

Ao executar esse comando, o status do alarme mudará de OK para ALARM e voltarápara OK em alguns segundos. Você pode visualizar essas alterações de status naguia History (Histórico) do alarme no console do CloudWatch ou usando a operaçãoDescribeAlarmHistory.

3. Na linha de comando, digite o seguinte comando para verificar o status de envio de e-mails para a suaconta: aws ses get-account-sending-enabled --region us-west-2

Se a função do Lambda for executada com êxito, você verá o resultado a seguir:

{ "Enabled": false}

4. Realize os procedimentos em the section called “Parte 3: reativar o envio de e-mail para suaconta” (p. 379) para reativar o envio de e-mail para sua conta.

381

Page 389: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-mails

para um conjunto de configurações

Pausa automática do envio de e-mails para umconjunto de configuraçõesVocê pode configurar o Amazon SES para exportar as métricas de reputação que são específicas a e-mails que são enviadas usando um conjunto de configurações específicas ao Amazon CloudWatch.Então, você pode usar essas métricas para criar alarmes do CloudWatch que são específicos paraesses conjuntos de configuração. Quando esses alarmes excedem certos limites, você pode pausarautomaticamente o envio de e-mails que usam os conjuntos de configurações específicos, sem afetar osrecursos gerais de envio de e-mails da sua conta do Amazon SES.

Note

A solução descrita nesta seção pausa o envio de e-mails para um determinado conjunto deconfigurações em uma única região da AWS. Se você envia e-mails de várias regiões, repita osprocedimentos desta seção para cada região em que você deseja implementar esta solução.

Tópicos nesta seção:• Parte 1: Habilitar relatórios de métricas de reputação em um conjunto de configurações (p. 382)• Parte 2: Criar uma função do IAM (p. 382)• Parte 3: Criar a função do Lambda (p. 383)• Parte 4: reativar o envio de e-mails para o conjunto de configurações (p. 384)• Parte 5: Criar um tópico do Amazon SNS (p. 385)• Parte 6: criar um alarme do CloudWatch (p. 385)• Parte 7: Testar a solução (p. 386)

Parte 1: Habilitar relatórios de métricas de reputação em umconjunto de configuraçõesAntes de poder configurar o Amazon SES para pausar automaticamente o envio de e-mails para umconjunto de configurações, você precisa primeiro ativar a exportação de métricas de reputação para oconjunto de configurações.

Para permitir a exportação das métricas de devolução e de reclamação no conjunto de configurações,conclua as etapas em the section called “Exportação de métricas de reputação” (p. 250).

Parte 2: Criar uma função do IAMA primeira etapa para configurar a pausa automática de envio de e-mails é criar uma função do IAM quepossa executar a operação de API UpdateConfigurationSetSendingEnabled.

Para criar a função IAM

1. Abra o console do IAM em https://console.aws.amazon.com/iam/.2. No painel de navegação, selecione Roles.3. Selecione Create role.4. Em Select type of trusted entity (Selecionar o tipo de entidade confiável), selecione AWS service

(serviço da AWS).5. Em Choose the service that will use this role (Escolhe o serviço que usará esta função), selecione

Lambda. Escolha Próximo: Permissões.6. Na página Attach permissions policies, escolha as políticas a seguir:

382

Page 390: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-mails

para um conjunto de configurações

• AWS LambdaBasicExecutionRole• AmazonSESFullAccess

Tip

Use a caixa de pesquisa na parte superior da lista de políticas para localizar rapidamenteessas políticas.

Selecione Next: Review.7. Na página Review, em Name, digite um nome para a função. Selecione Create role.

Parte 3: Criar a função do LambdaDepois de criar uma função do IAM, você pode criar a função do Lambda que pausa o envio de e-mailspara o conjunto de configurações.

Para criar a função do Lambda

1. Abra o console do AWS Lambda em https://console.aws.amazon.com/lambda/.2. Use o seletor de regiões para escolher a região onde você deseja implantar esta função do Lambda.

Note

Essa função pausa o envio de e-mails somente para os conjuntos de configuração naregião da AWS que você selecionar nesta etapa. Se você envia e-mails de mais de umaregião, repita os procedimentos desta seção para cada região em que você deseja pausarautomaticamente o envio de e-mails.

3. Escolha Create function.4. Em Create function, escolha Author from scratch.5. Em Author from scratch, conclua as seguintes etapas:

• Em Name (Nome), digite um nome para a função do Lambda.• Em Runtime (Tempo de execução), selecione Node.js 6.10.• Em Role, escolha Choose an existing role.• Em Existing role (Função existente), selecione a função do IAM criada em the section called “Parte

2: Criar uma função do IAM” (p. 382).

Escolha Create function.6. Em Function code, no editor de código, cole o seguinte código:

'use strict';

var aws = require('aws-sdk');

// Create a new SES object. var ses = new aws.SES();

// Specify the parameters for this operation. In this example, you pass the // Enabled parameter, with a value of false (Enabled = false disables email // sending, Enabled = true enables it). You also pass the ConfigurationSetName// parameter, with a value equal to the name of the configuration set for // which you want to pause email sending.var params = {

383

Page 391: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-mails

para um conjunto de configurações

ConfigurationSetName: ConfigSet, Enabled: false};

exports.handler = (event, context, callback) => { // Pause sending for a configuration set ses.updateConfigurationSetSendingEnabled(params, function(err, data) { if(err) { console.log(err.message); } else { console.log(data); } });};

Substitua ConfigSet no código anterior pelo nome do conjunto de configurações. Escolha Salvar.7. Escolha Test. Se a janela Configure test event for exibida, digite um nome no campo Event name e

escolha Create.8. Confirme se a barra de notificação na parte superior da página diz Execution result:

succeeded. Se a função não for executada, faça o seguinte:

• Verifique se a função do IAM criada em the section called “Parte 2: Criar uma função doIAM” (p. 382) contém as políticas corretas.

• Verifique se o código da função do Lambda não contém nenhum erro. O editor de código doLambda automaticamente destaca os erros de sintaxe e outros problemas potenciais.

Parte 4: reativar o envio de e-mails para o conjunto deconfiguraçõesUm efeito secundário do teste de função do Lambda em the section called “Parte 3: Criar a função doLambda” (p. 383) é que o envio de e-mails para o conjunto de configurações é pausado. Na maioriados casos, não é aconselhável pausar o envio para o conjunto de configurações enquanto o alarme doCloudWatch não for acionado.

Os procedimentos nesta seção reativam o envio de e-mails para o conjunto de configurações. Paraconcluir esses procedimentos, você deve instalar e configurar a AWS Command Line Interface. Para obtermais informações, consulte o Guia do usuário do AWS Command Line Interface.

Para reativar o envio de e-mail

1. Na linha de comando, digite o seguinte comando para reabilitar o envio de e-mails para o conjuntode configurações: aws ses update-configuration-set-sending-enabled --configuration-set-nameConfigSet --enabled --region us-west-2

No comando anterior, substitua ConfigSet pelo nome do conjunto de configurações para o qualvocê deseja pausar o envio de e-mails e substitua us-west-2 pela região onde você deseja pausarautomaticamente o envio de e-mails.

2. Na linha de comando, digite o seguinte comando para garantir que o envio de e-mails estejahabilitado: aws ses describe-configuration-set --configuration-set-name ConfigSet --region us-west-2

Você verá uma saída semelhante à seguinte:

{ "ConfigurationSet": { "Name": "ConfigSet" },

384

Page 392: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-mails

para um conjunto de configurações

"ReputationOptions": { "ReputationMetricsEnabled": true, "SendingEnabled": true } }

Se o valor de SendingEnabled for true, então, o envio de e-mails para o conjunto de configuraçõesfoi reativado com êxito.

Parte 5: Criar um tópico do Amazon SNSPara o CloudWatch executar a função do Lambda quando um alarme for acionado, primeiro é necessáriocria rum tópico do Amazon SNS e assinar a função do Lambda para ele.

Para criar um tópico do Amazon SNS

1. Abra o console do Amazon SNS em https://console.aws.amazon.com/sns/v3/home.2. Use o seletor de regiões para escolher a região onde você deseja pausar automaticamente o envio de

e-mails.3. No painel de navegação, escolha Tópicos.4. Selecione Criar novo tópico5. Na janela Create new topic, em Topic name, digite um nome para o tópico. Opcionalmente, você pode

digitar um nome mais descritivo no campo Display name.

Escolha Create topic.6. Na lista de tópicos, marque a caixa ao lado do tópico que você criou na etapa anterior. No menu

Actions, escolha Subscribe to topic.7. Na janela Create subscription, faça as seguintes seleções:

• Em Protocol (Protocolo), selecione AWS Lambda.• Em Endpoint, selecione a função do Lambda criada em the section called “Parte 3: Criar a função do

Lambda” (p. 383).• Em Version or alias, escolha default.

8. Selecione Create subscription.

Parte 6: criar um alarme do CloudWatchEsta seção contém procedimentos para criar um alarme no CloudWatch que é acionado quando umamétrica atinge determinado limite. Quando o alarme é acionado, ele envia uma notificação ao tópicodo Amazon SNS criado em the section called “Parte 5: Criar um tópico do Amazon SNS” (p. 385)que, em seguida, executa a função do Lambda criada em the section called “Parte 3: Criar a função doLambda” (p. 383).

Para criar um alarme do CloudWatch

1. Abra o console do CloudWatch em https://console.aws.amazon.com/cloudwatch/.2. Use o seletor de regiões para escolher a região onde você deseja pausar automaticamente o envio de

e-mails.3. No painel de navegação à esquerda, escolha Alarms.4. Escolha Create Alarm.5. Na janela Create Alarm, em SES Metrics, escolha Configuration Set Metrics.

385

Page 393: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-mails

para um conjunto de configurações

6. Na coluna ses:configuration-set, localize o conjunto de configurações para o qual você deseja criar umalarme. Em Metric Name, escolha uma das opções a seguir:

• Reputation.BounceRate – selecione essa métrica se desejar pausar o envio de e-mail para oconjunto de configurações quando o índice geral de devolução definitiva para seu conjunto deconfigurações ultrapassar um limite definido por você.

• Reputation.ComplaintRate – selecione essa métrica se desejar pausar o envio de e-mail para oconjunto de configurações quando o índice geral de reclamação para seu conjunto de configuraçõesultrapassar um limite definido por você.

Escolha Next.7. Execute as etapas a seguir:

• Em Alarm Threshold, para Name, digite um nome para o alarme.• Em Whenever: Reputation.BounceRate ou Whenever: Reputation.ComplaintRate, especifique o

limite que acionará o alarme.Note

Se o índice geral de devolução de sua conta do Amazon SES ultrapassar 10% ou se oíndice geral de reclamação de sua conta do Amazon SES ultrapassar 0,5%, sua conta doAmazon SES será colocada sob análise. Ao especificar a taxa de devolução ou reclamaçãoque fará com que o alarme do CloudWatch seja acionado, é recomendável usar valoresmuito abaixo dessas taxas para impedir que sua conta seja colocada sob análise.

• Em Ações, em Sempre que este alarme, escolha Estado é ALARME. Em Send notification to (Enviarnotificação para), selecione o tópico do Amazon SNS criado em the section called “Parte 5: Criar umtópico do Amazon SNS” (p. 385).

Escolha Create Alarm.

Parte 7: Testar a soluçãoAgora você pode testar o alarme para verificar se ele executa a função do Lambda ao entrar no estadoALARM. Use a operação SetAlarmState na API do CloudWatch para alterar temporariamente o estadodo alarme.

Os procedimentos nesta seção são opcionais, mas é recomendável realizá-los para verificar se a soluçãocomo um todo está configurada corretamente.

Para testar a solução

1. Na linha de comando, digite o seguinte comando para verificar o status de envio de e-mails para oconjunto de configurações: aws ses describe-configuration-set --configuration-set-name ConfigSet --region us-west-2

Se o envio estiver ativado para o conjunto de configurações, você verá o resultado seguir:

{ "ConfigurationSet": { "Name": "ConfigSet" }, "ReputationOptions": { "ReputationMetricsEnabled": true, "SendingEnabled": true } }

386

Page 394: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausa automática do envio de e-mails

para um conjunto de configurações

Se o valor de SendingEnabled for true, então, o envio de e-mails está ativado no momento para oconjunto de configurações.

2. Na linha de comando, digite o seguinte comando para alterar temporariamente o estado do alarmepara ALARM: aws cloudwatch set-alarm-state --alarm-name MyAlarm --state-value ALARM --state-reason "Testing execution of Lambda function" --region us-west-2

Substitua MyAlarm no comando precedente pelo nome do alarme que você criou em the sectioncalled “Parte 6: criar um alarme do CloudWatch” (p. 385).

Note

Ao executar esse comando, o status do alarme mudará de OK para ALARM e voltarápara OK em alguns segundos. Você pode visualizar essas alterações de status naguia History (Histórico) do alarme no console do CloudWatch ou usando a operaçãoDescribeAlarmHistory.

3. Na linha de comando, digite o seguinte comando para verificar o status de envio de e-mails para oconjunto de configurações: aws ses describe-configuration-set --configuration-set-name ConfigSet

Se a função do Lambda for executada com êxito, você verá o resultado a seguir:

{ "ConfigurationSet": { "Name": "ConfigSet" }, "ReputationOptions": { "ReputationMetricsEnabled": true, "SendingEnabled": false } }

Se o valor de SendingEnabled for false, então, o envio de e-mails para o conjunto deconfigurações está desativado, indicando que a função do Lambda foi executada com êxito.

4. Conclua as etapas em the section called “Parte 4: reativar o envio de e-mails para o conjunto deconfigurações” (p. 384) para reativar o envio de e-mails para o conjunto de configurações.

387

Page 395: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCriação de políticas do IAM para acesso ao Amazon SES

Controle do acesso ao Amazon SESUse 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 função do IAM pode realizar.(Neste tópico, nós nos referimos coletivamente a essas entidades como usuário.) Você também podecontrolar 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 envieme-mails, mas que não desempenhem ações administrativas, como a verificação de estatísticas de envio.Como no outro exemplo, você pode criar uma política que permita a um usuário enviar e-mails peloAmazon SES a partir da sua conta, mas somente se ele usar um determinado endereço "From".

Para usar o IAM, defina uma política do IAM, que é um documento que explicitamente define aspermissões, e anexe a política a um usuário. Para saber como criar políticas do IAM, consulte o Guia dousuário do IAM. Além de aplicar as restrições definidas na sua política, não há alterações na forma comoos usuários interagem com o Amazon SES nem na forma como o Amazon SES executa as solicitações.

Note

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 os usuários individuais do IAM podem fazer, aspolíticas de autorização de envio restringem a forma como as identidades verificadas individuaispodem ser usadas. Além disso, somente as políticas de autorização de envio podem concederacesso entre contas. Para obter mais informações sobre a autorização de envio, consulte Uso deautorização de envio com o Amazon SES (p. 153).

Se você estiver procurando informações sobre como gerar credenciais SMTP do Amazon SES para umusuário existente do IAM, consulte Obtenção das suas credenciais SMTP do Amazon SES (p. 81).

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

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

Há três motivos pelos quais você pode usar 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çãoPara controlar quais ações do Amazon SES um usuário poderá executar, use o elemento Action deuma política do IAM. Defina o elemento Action para qualquer ação da API do Amazon SES ao colocar astring ses: em minúsculas como prefixo do nome da API. Por exemplo, você pode definir Action comoses: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):

388

Page 396: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRestrição de endereços de e-mail

• Para permitir que o usuário envie a partir de qualquer identidade na sua conta da AWS, definaResource como *

• Para restringir as identidades a partir das quais o usuário pode enviar, defina Resource como os ARNsdas 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 Resourcecomo *

• Se você quiser restringir as identidades com as quais um usuário pode enviar, será necessário criarduas 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 eResource definido como*

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

Para obter uma lista das ações do Amazon SES disponíveis, consulte a Amazon Simple Email ServiceAPI Reference. Se o usuário do IAM for usar a interface SMTP, será necessário permitir acesso ases:SendRawEmail, no mínimo.

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

Note

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

Chave de condição Descrição API

ses:Recipients Restringe os endereços dodestinatário, que incluem osendereç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 oqual devoluções e reclamaçõespodem ser enviadas a vocêpelo encaminhamento defeedback por e-mail. Para obterinformações sobre reenvio defeedback por e-mail, consulteNotificações do Amazon SES viae-mail (p. 259).

SendEmail, SendRawEmail

389

Page 397: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRestrição do uso da API geral

Restrição do uso da API geralAo usar chaves de toda a AWS nas condições, você pode restringir o acesso ao Amazon SES com baseem aspectos, como a data e a hora em que o usuário tem permissão para acessar APIs. O Amazon SESimplementa somente as seguintes chaves de política de 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 SESEste tópico oferece exemplos de políticas que permitem a um usuário acesso ao Amazon SES, masapenas em determinadas condições.

Exemplos de políticas nesta seção:• Permitir acesso total a todas as ações do Amazon SES (p. 390)• Permitir acesso somente a ações de envio de e-mails (p. 390)• Restringir o período de envio (p. 391)• Restringir os endereços do destinatário (p. 391)• Restringir o endereço "From". (p. 392)• Restringir o nome de exibição do remetente de e-mail (p. 392)• Restringir o destino do feedback de devolução e reclamação (p. 393)

Permitir acesso total a todas as ações do AmazonSESA 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-mailsA política a seguir permite que um usuário envie um e-mail usando o Amazon SES, mas não permite que ousuário execute ações administrativas, como acessar estatísticas de envio de Amazon SES.

390

Page 398: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRestringir o período de envio

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

Restringir o período de envioA política a seguir permite que o usuário chame APIs de envio de e-mail do Amazon SES somente duranteo 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árioA política a seguir permite que um usuário chame as APIs de envio de e-mail do Amazon SES, massomente para endereços de destinatários no domínio example.com.

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

391

Page 399: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRestringir o endereço "From".

] } } } ]}

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, massomente se o endereço "From" for [email protected].

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

A política a seguir permite que um usuário chame a API SendBounce, mas somente se o endereço "From"for [email protected].

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendBounce" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FromAddress":"[email protected]" } } } ]}

Restringir o nome de exibição do remetente de e-mailA política a seguir permite que um usuário chame as APIs de envio de e-mail do Amazon SES, massomente se o nome de exibição do endereço "From" incluir Marketing.

{ "Version":"2012-10-17",

392

Page 400: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRestringir o destino do feedback de devolução e reclamação

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

Restringir o destino do feedback de devolução ereclamaçãoA política a seguir permite que um usuário chame as APIs de envio de e-mail do Amazon SES, masapenas se o "Return-Path" do e-mail estiver definido como [email protected].

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

393

Page 401: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorInformações sobre o Amazon SES no CloudTrail

Registro em log de chamadas daAPI do Amazon SES com o AWSCloudTrail

O Amazon SES é integrado ao AWS CloudTrail, um serviço que fornece um registro das ações executadaspor um usuário, uma função ou um serviço da AWS no Amazon SES. O CloudTrail captura as chamadasde API para o Amazon SES como eventos. As chamadas capturadas incluem as chamadas de códigodo console do Amazon SES e as chamadas para as operações da API do Amazon SES. Se você criaruma trilha, poderá habilitar a entrega contínua de eventos do CloudTrail para um bucket do Amazon S3,incluindo eventos para o Amazon SES. Se não configurar uma trilha, você ainda poderá visualizar oseventos mais recentes no console do CloudTrail em Event history. Com as informações coletadas peloCloudTrail, determine a solicitação feita para o Amazon SES, o endereço IP do qual a solicitação foi feita,quem fez a solicitação, quando ela foi feita e detalhes adicionais.

Para saber mais sobre o CloudTrail, incluindo como configurá-lo e habilitá-lo, consulte o AWS CloudTrailUser Guide.

Informações sobre o Amazon SES no CloudTrailO CloudTrail está habilitado na sua conta da AWS ao criá-la. Quando a atividade do evento com suporteocorre no Amazon SES, ela é registrada em um evento do CloudTrail junto com outros eventos de serviçosda AWS em Event history (Histórico de eventos). Você pode visualizar, pesquisar e fazer download deeventos recentes em sua conta da AWS. Para obter mais informações, consulte Visualizar eventos com ohistórico de eventos do CloudTrail.

Para obter um registro contínuo de eventos em sua conta da AWS, incluindo eventos do Amazon SES,crie uma trilha. Uma trilha permite CloudTrail para fornecer arquivos de log a um bucket do Amazon S3.Por padrão, quando você cria uma trilha no console, ela é aplicada a todas as regiões da AWS. A trilharegistra eventos de todas as regiões na partição da AWS e fornece os arquivos de log para o bucket doAmazon S3 que você especificar. Além disso, é possível configurar outros serviços da AWS para analisarmais profundamente e agir sobre os dados de evento coletados nos logs do CloudTrail. Para obter maisinformações, consulte:

• Visão geral da criação de uma trilha• CloudTrail Serviços compatíveis e integrações do• Configuração de notificações do Amazon SNS para o CloudTrail• Recebimento de arquivos de log do CloudTrail de várias regiões e Recebimento de arquivos de log do

CloudTrail de várias contas

O Amazon SES oferece suporte ao registro em log das ações a seguir como eventos nos arquivos de logdo CloudTrail:

• CloneReceiptRuleSet• CreateReceiptFilter• CreateReceiptRule• CreateReceiptRuleSet

394

Page 402: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorInformações sobre o Amazon SES no CloudTrail

• DeleteIdentity• DeleteIdentityPolicy• DeleteReceiptFilter• DeleteReceiptRule• DeleteReceiptRuleSet• DeleteVerifiedEmailAddress• DescribeActiveReceiptRuleSet• DescribeReceiptRule• DescribeReceiptRuleSet• GetIdentityDkimAttributes• GetIdentityNotificationAttributes• GetIdentityPolicies• GetIdentityVerificationAttributes• GetSendQuota• GetSendStatistics• ListIdentities• ListIdentityPolicies• ListReceiptFilters• ListReceiptRuleSets• ListVerifiedEmailAddresses• PutIdentityPolicy• ReorderReceiptRuleSet• SetActiveReceiptRuleSet• SetReceiptRulePosition• SetIdentityDkimEnabled• SetIdentityFeedbackForwardingEnabled• SetIdentityHeadersInNotificationsEnabled• SetIdentityNotificationTopic• UpdateReceiptRule• VerifyDomainDkim• VerifyDomainIdentity• VerifyEmailAddress• VerifyEmailIdentity

Note

O Amazon SES fornece eventos de gerenciamento ao CloudTrail. Eventos de gerenciamentoincluem ações relacionadas à criação e ao gerenciamento de recursos dentro de uma conta daAWS. No Amazon SES, eventos de gerenciamento incluem ações como a criação e a exclusão deidentidades ou regras de recebimento.Eventos de gerenciamento são diferentes dos eventos de dados. Os eventos de dados sãoeventos que estão relacionados ao acesso e interação com dados dentro da conta da AWS. NoAmazon SES, eventos de dados incluem ações como o envio de e-mails.Como o Amazon SES apenas fornece eventos de gerenciamento ao CloudTrail, os seguinteseventos não são registrados no CloudTrail:

• SendEmail• SendRawEmail

395

Page 403: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExemplo: entradas de arquivo de log do Amazon SES

• SendTemplatedEmail• SendBulkTemplatedEmail• SendCustomVerificationEmail

Use a publicação de eventos para registrar eventos relacionados ao envio de e-mails. Paraobter mais informações, consulte Monitoramento usando publicação de eventos do AmazonSES (p. 282).

Cada entrada de log ou evento contém informações sobre quem gerou a solicitação. As informações deidentidade ajudam a determinar:

• Se a solicitação foi feita com credenciais de usuário da raiz ou do AWS Identity and Access Management(IAM).

• Se a solicitação foi feita com credenciais de segurança temporárias de uma função ou de um usuáriofederado.

• Se a solicitação foi feita por outro serviço da AWS.

Para obter mais informações, consulte Elemento userIdentity do CloudTrail.

Exemplo: entradas de arquivo de log do AmazonSES

Uma trilha é uma configuração que permite a entrega de eventos como arquivos de log em um bucketdo Amazon S3 que você especificar. Os arquivos de log do CloudTrail contêm uma ou mais entradasde log. Um evento representa uma única solicitação de qualquer origem e inclui informações sobre aação solicitada, a data e hora da ação, parâmetros de solicitação, e assim por diante. arquivos de log doCloudTrail não são um rastreamento de pilha ordenada das chamadas da API pública. Assim, elas não sãoexibidas em nenhuma ordem específica.

O exemplo a seguir mostra uma entrada de log do CloudTrail que demonstra as ações DeleteIdentitye VerifyEmailIdentity.

{ "Records":[ { "awsRegion":"us-west-2", "eventID":"0ffa308d-1467-4259-8be3-c749753be325", "eventName":"DeleteIdentity", "eventSource":"ses.amazonaws.com", "eventTime":"2018-02-02T21:34:50Z", "eventType":"AwsApiCall", "eventVersion":"1.02", "recipientAccountId":"111122223333", "requestID":"50b87bfe-ab23-11e4-9106-5b36376f9d12", "requestParameters":{ "identity":"amazon.com" }, "responseElements":null, "sourceIPAddress":"192.0.2.0", "userAgent":"aws-sdk-java/unknown-version", "userIdentity":{ "accessKeyId":"AKIAIOSFODNN7EXAMPLE", "accountId":"111122223333", "arn":"arn:aws:iam::111122223333:root", "principalId":"111122223333",

396

Page 404: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExemplo: entradas de arquivo de log do Amazon SES

"type":"Root" } }, { "awsRegion":"us-west-2", "eventID":"5613b0ff-d6c6-4526-9b53-a603a9231725", "eventName":"VerifyEmailIdentity", "eventSource":"ses.amazonaws.com", "eventTime":"2018-02-04T01:05:33Z", "eventType":"AwsApiCall", "eventVersion":"1.02", "recipientAccountId":"111122223333", "requestID":"eb2ff803-ac09-11e4-8ff5-a56a3119e253", "requestParameters":{ "emailAddress":"[email protected]" }, "responseElements":null, "sourceIPAddress":"192.0.2.0", "userAgent":"aws-sdk-java/unknown-version", "userIdentity":{ "accessKeyId":"AKIAIOSFODNN7EXAMPLE", "accountId":"111122223333", "arn":"arn:aws:iam::111122223333:root", "principalId":"111122223333", "type":"Root" } } ]}

397

Page 405: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Uso de credenciais com o AmazonSES

Para interagir com o Amazon Simple Email Service (Amazon SES), você pode usar credenciais desegurança para verificar sua identidade e se tem permissão para utilizar o Amazon SES. Há diferentestipos de credenciais, e as credenciais que você usa dependem do que você deseja fazer. Por exemplo,você pode usar chaves de acesso da AWS ao enviar um e-mail usando a API do Amazon SES ecredenciais SMTP quando enviar um e-mail usando a interface SMTP do Amazon SES.

A tabela a seguir lista os tipos de credenciais que você pode usar com o Amazon SES, dependendo doque você estiver fazendo.

Se você quiseracessar...

Use estascredenciais

De que ascredenciaisconsistem

Como obter as credenciais

API do Amazon SES

(Você pode acessara API do AmazonSES direta ouindiretamente pormeio de um SDKda AWS, uma AWSCommand LineInterface ou o AWSTools para WindowsPowerShell.)

Chaves de acesso aoAWS

ID da chave deacesso e a chave deacesso secreta.

Consulte Chaves de acesso naAWS General Reference.

Note

Para seguir as práticasrecomendadas desegurança, use aschaves de acessodo usuário do AWSIdentity and AccessManagement (IAM)em vez de chaves deacesso da conta daAWS. Suas credenciaisda conta da AWSconcedem acessototal a todos os seusrecursos da AWS.Portanto, você devearmazená-las em umlocal seguro e usar ascredenciais de usuáriodo IAM em seu lugarpara interações diáriascom a AWS. Para obtermais informações,consulte Credenciaisde conta raiz vs. Ascredenciais de usuáriodo IAM no AWS GeneralReference:

Interface SMTP doAmazon SES

Credenciais deSMTP

Nome de usuário esenha

Consulte Obtenção das suascredenciais SMTP do AmazonSES (p. 81).

398

Page 406: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Se você quiseracessar...

Use estascredenciais

De que ascredenciaisconsistem

Como obter as credenciais

Note

Embora as suascredenciais SMTP doAmazon SES sejamdiferentes das chavesde acesso da AWS edas chaves de acessodo usuário do IAM, ascredenciais SMTP doAmazon SES são naverdade um tipo decredencial do IAM. Umusuário do IAM podecriar as credenciaisSMTP do AmazonSES, mas o proprietárioda conta raiz devegarantir que a políticade usuários do IAMdê a ele permissãopara acessar asseguintes ações doIAM: "iam:ListUsers","iam:CreateUser","iam:CreateAccessKey"e "iam:PutUserPolicy".

399

Page 407: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Se você quiseracessar...

Use estascredenciais

De que ascredenciaisconsistem

Como obter as credenciais

Console AmazonSES

Nome de usuário esenha do IAM

OU

Endereço de e-mail esenha

Nome de usuário esenha do IAM

OU

Endereço de e-mail esenha

Consulte Nome de usuário esenha do IAM e Endereço de e-mail e senha da AWS GeneralReference.

Note

Para seguir as práticasrecomendadas desegurança, use umnome de usuário e umasenha do IAM em vezde um endereço dee-mail e uma senha.A combinação deendereço de e-mail esenha são para suaconta da AWS; portanto,você deve armazená-los em um local seguro,em vez de usá-lospara interação do dia adia com a AWS. Paraobter mais informações,consulte Credenciaisde conta raiz vs. Ascredenciais de usuáriodo IAM no AWS GeneralReference:

Para obter mais informações sobre os diferentes tipos de credenciais de segurança da AWS (exceto paracredenciais SMTP, que são usadas apenas para Amazon SES), consulte Credenciais de segurança daAWS na AWS General Reference.

400

Page 408: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAPI de consulta

Uso da API Amazon SESVocê pode acessar a API do Amazon SES usando um SDK da AWS que encapsula funcionalidade debaixo nível da API do Amazon SES com tipos de dados de alto nível e chamadas de função que seencarregam dos detalhes por você. Você também pode fazer solicitações brutas para a API de consulta doAmazon SES por HTTPS. Para obter mais informações sobre a API de consulta, veja Amazon SESAPI deconsulta (p. 401). As operações de API individuais estão descritas no Amazon Simple Email Service APIReference.

Esta seção contém os seguintes tópicos:

• the section called “API de consulta” (p. 401)• the section called “Códigos de erro da API” (p. 406)

Amazon SESAPI de consultaEsta seção descreve como fazer solicitações de consulta para o Amazon SES. Os vários tópicos abordama interface de consulta do Amazon SES, os componentes de uma solicitação, como autenticar umasolicitação e o conteúdo das respostas.

• Para obter informações sobre solicitações de consulta, consulte Solicitações de consulta e AmazonSES (p. 401).

• Para informações sobre autenticação da solicitação, consulte Autenticação de solicitações e o AmazonSES (p. 404).

• Para obter exemplos de solicitações GET e POST, consulte Exemplos de GET e POST do AmazonSES (p. 404).

• Para obter informações sobre respostas de consulta, consulte Respostas de consulta e AmazonSES (p. 405).

Solicitações de consulta e Amazon SESO Amazon SES oferece suporte a solicitações de consulta para ações de serviço. As solicitações deconsulta são solicitações HTTPS simples que usam o método GET ou POST. As solicitações de consultacontêm um parâmetro Action para indicar a ação a ser realizada.

Important

Por motivos de segurança, o Amazon SES não é compatível com solicitações HTTP. Você deveusar HTTPS.

Estrutura de uma solicitação GETEste guia apresenta as solicitações GET do Amazon SES como URLs. Cada URL consiste no seguinte:

• Endpoint – o recurso em que a solicitação está atuando. Para obter uma lista de URLs de endpointpara as regiões da AWS onde o Amazon SES está disponível, consulte Amazon Simple Email Service(Amazon SES) em AWS General Reference.

• Ação – a ação que você deseja executar no endpoint, como enviar uma mensagem.• Parâmetros – os parâmetros da solicitação.

Veja a seguir um exemplo de solicitação GET para enviar uma mensagem usando o endpoint do AmazonSES na região Oeste dos EUA (Oregon).

401

Page 409: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSolicitações de consulta

https://email.us-west-2.amazonaws.com?Action=SendEmail&Source=user%40example.com&Destination.ToAddresses.member.1=allan%40example.com&Message.Subject.Data=This%20is%20the%20subject%20line.&Message.Body.Text.Data=Hello.%20I%20hope%20you%20are%20having%20a%20good%20day.

Important

Como as solicitações GET são URLs, você deve codificar os valores de parâmetro no URL.Por exemplo, na solicitação de exemplo anterior, o valor do parâmetro Source é [email protected]. No entanto, o caractere "@" não é permitido em URLs, de modo que "@" écodificado no URL como "%40".

Para facilitar ainda mais a leitura dos exemplos de GET, este guia apresenta-os no seguinte formatoanalisado.

https://email.us-west-2.amazonaws.com?Action=SendEmail&Source=user%40example.com&Destination.ToAddresses.member.1=allan%40example.com&Message.Subject.Data=This%20is%20the%20subject%20line.&Message.Body.Text.Data=Hello.%20I%20hope%20you%20are%20having%20a%20good%20day.

A primeira linha representa o endpoint da solicitação. Depois do endpoint há um ponto de interrogação (?),que separa o endpoint dos parâmetros. Cada parâmetro é separado por um E comercial (&).

O parâmetro Action indica a ação a ser realizada. Para obter uma lista completa de ações e osparâmetros usados com cada ação, consulte Amazon Simple Email Service API Reference.

Algumas operações levam listas de parâmetros. Por exemplo, quando você envia um e-mail paravários destinatários, pode fornecer uma lista de endereços de e-mail. Você especifica esse tipo de listacom a notação param.n, onde os valores de n são inteiros a partir de 1. Por exemplo, você poderiaespecificar o primeiro endereço "To:" usando Destination.ToAddresses.1, o segundo comDestination.ToAddresses.2 etc.

No Amazon SES, espaços não são permitidos em nenhum dos valores de parâmetro. Neste guia, todoexemplo de valor de parâmetro de solicitação de consulta que inclui espaços é exibido de duas maneirasdiferentes:

• Codificado no URL (como %20).• Representado por um sinal de adição ("+"). Em uma solicitação de consulta, um sinal de adição é

reservado como uma notação abreviada para um espaço. (Se você deseja incluir um sinal de adiçãoliteral que não seja interpretado em nenhum parâmetro, deve codificá-lo no URL como %2B.)

Note

Cada solicitação deve ser acompanhada por um cabeçalho HTTP X-Amzn-Authorization.Para obter mais informações, consulte Autenticação de solicitações e o Amazon SES (p. 404).

Estrutura de uma solicitação POSTO Amazon SES também aceita solicitações POST. Com uma solicitação POST, você envia os parâmetrosde consulta como um formulário no corpo da solicitação HTTP, como descrito no procedimento a seguir.

Para criar uma solicitação POST

1. Monte os nomes e valores dos parâmetros de consulta em um formulário.

402

Page 410: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSolicitações de consulta

Coloque os parâmetros e os valores juntos como você faria para uma solicitação GET (com um &separando cada par de nome e valor). O exemplo a seguir mostra uma solicitação SendEmailcom asquebras de linha que usamos neste guia para facilitar a leitura das informações.

Action=SendEmail&[email protected]&[email protected]&Message.Subject.Data=This is the subject line.&Message.Body.Text.Data=Hello. I hope you are having a good day.

2. Faça a codificação de URL do formulário de acordo com a seção Envio do formulário na especificaçãodo HTML.

Para obter mais informações, consulte http://www.w3.org/MarkUp/html-spec/html-spec_toc.html#SEC8.2.1.

Action=SendEmail&Source=user%40example.com&Destination.ToAddresses.member.1=allan%40example.com&Message.Subject.Data=This%20is%20the%20subject%20line.&Message.Body.Text.Data=Hello.%20I%20hope%20you%20are%20having%20a%20good%20day.

3. Forneça o formulário resultante como o corpo da solicitação POST.4. inclua os seguintes cabeçalhos HTTP na solicitação:

• Content-Type, com o valor definido como application/x-www-form-urlencoded• Content-Length

• Date

• X-Amzn-Authorization (Para obter mais informações, consulte Autenticação de solicitações e oAmazon SES (p. 404).)

5. Envie a solicitação finalizada.

POST / HTTP/1.1Date: Thu, 26 May 2011 06:49:50 GMTHost: email.us-west-2.amazonaws.comContent-Type: application/x-www-form-urlencodedX-Amzn-Authorization: AWS3 AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE,Signature=lBP67vCvGlDMBQ=dofZxg8E8SUEXAMPLE,Algorithm=HmacSHA256,SignedHeaders=Date;HostContent-Length: 230

Action=SendEmail&Source=user%40example.com&Destination.ToAddresses.member.1=allan%40example.com&Message.Subject.Data=This%20is%20the%20subject%20line.&Message.Body.Text.Data=Hello.%20I%20hope%20you%20are%20having%20a%20good%20day.

O cabeçalho X-Amzn-Authorization que você fornece é o mesmo cabeçalho que deve fornecer seenviar uma solicitação GET.

Note

O cliente HTTP normalmente adiciona outros itens à solicitação HTTP conforme exigido pelaversão do HTTP usada pelo cliente. Não incluímos esses itens adicionais nos exemplos desteguia.

403

Page 411: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSolicitar autenticação

Autenticação de solicitações e o Amazon SESQuando você faz uma solicitação para a API do Amazon SES, deve fornecer a prova de que você érealmente o titular da conta, para que o Amazon SES possa verificar sua identidade e se você estáregistrado para usar os serviços oferecidos pela AWS. Se qualquer teste falhar, o Amazon SES retornaráum erro e não processará a solicitação.

O Amazon SES oferece suporte para a versão 3 e a versão 4. A versão 4 é a preferencial. Para obterinformações sobre como usar o Signature versão 4, consulte o Processo de assinatura do Signatureversão 4 na AWS General Reference.

Exemplos de GET e POST do Amazon SESVeja a seguir exemplos de solicitações GET e POST, usando a API de consulta.

Exemplo de solicitação GETVeja a seguir um exemplo de como fica uma solicitação GET, incluindo a assinatura calculada. Observeque todos os parâmetros foram codificados em URL.

https://email.us-west-2.amazonaws.com/?Action=SendEmail&Source=user%40example.com&Destination.ToAddresses.member.1=allan%40example.com&Message.Subject.Data=This%20is%20the%20subject%20line.&Message.Body.Text.Data=Hello.%20I%20hope%20you%20are%20having%20a%20good%20day.&AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE&Signature=RhU864jFu893mg7g9N9j9nr6h7EXAMPLE&Algorithm=HMACSHA256

Exemplo de solicitação POSTVeja a seguir um exemplo de como fica uma solicitação POST, antes do cálculo da assinatura. Observeque todos os parâmetros foram codificados em URL.

POST / HTTP/1.1Host: email.us-west-2.amazonaws.comContent-Type: application/x-www-form-urlencodedDate: Tue, 25 May 2010 21:20:27 +0000Content-Length: 174

Action=SendRawEmail&Destinations.member.1=allan%40example.com&RawMessage.Data=RnJvbTp1c2VyQGV4YW1wbGUuY29tDQpTdWJqZWN0OiBUZXN0DQoNCk1lc3 ...

O valor de RawMessage.Data é uma representação codificada em base64 do seguinte texto.

From:[email protected]: Test

Message sent using SendRawEmail.

Veja a seguir a solicitação POST completo para SendRawEmail, com o cabeçalho X-Amzn-Authorization. Nenhum dos cabeçalhos deve ser codificado por URL.

POST / HTTP/1.1Host: email.us-west-2.amazonaws.comContent-Type: application/x-www-form-urlencoded

404

Page 412: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRespostas de consulta

Date: Tue, 25 May 2010 21:20:27 +0000Content-Length: 174X-Amzn-Authorization: AWS3-HTTPS AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE,Algorithm=HMACSHA256,Signature=lBP67vCvGl ...

Action=SendRawEmail&Destinations.member.1=allan%40example.com&RawMessage.Data=RnJvbTp1c2VyQGV4YW1wbGUuY29tDQpTdWJqZWN0OiBUZXN0DQoNCk1lc3 ...

Respostas de consulta e Amazon SESEm resposta a uma solicitação de consulta, o Amazon SES retorna uma estrutura de dados XML quecontém os resultados da solicitação.

Cada resposta do Amazon SES inclui um ID de solicitação em um elemento RequestId. O valor é umastring exclusiva atribuída pela AWS. Se você tiver problemas com uma determinada solicitação, a AWSsolicitará o ID da solicitação para ajudar a resolver o problema.

As respostas bem-sucedidas do Amazon SES também incluem um ou mais IDs de mensagem. Vocêpode considerar um ID de mensagem como um recebimento de uma mensagem de e-mail enviada peloAmazon SES. Se uma mensagem for rejeitada ou devolvida, o ID de mensagem será exibido em qualquernotificação de reclamação ou devolução recebida. Você pode usar o ID de mensagem para identificarqualquer mensagem de e-mail problemática que enviou e executar a ação corretiva.

Estrutura de uma resposta bem-sucedidaSe a solicitação foi bem-sucedida, o elemento de resposta principal receberá o nome da ação, mas com"Response" anexada. Por exemplo, SendEmailResponse é o elemento de resposta retornado para umasolicitação SendEmail bem-sucedida. Esse elemento contém os seguintes elementos filho:

• ResponseMetadata, que contém o elemento filho RequestId.• Um elemento opcional que contém os resultados específicos da ação. Por exemplo, oSendEmailResponse elemento inclui um elemento chamado SendEmailResult.

O esquema XML descreve a mensagem de resposta XML para cada ação do Amazon SES.

Veja a seguir um exemplo de uma resposta bem-sucedida.

<SendEmailResponse xmlns="https://email.amazonaws.com/doc/2010-03-31/"> <SendEmailResult> <MessageId>000001271b15238a-fd3ae762-2563-11df-8cd4-6d4e828a9ae8-000000</MessageId> </SendEmailResult> <ResponseMetadata> <RequestId>fd3ae762-2563-11df-8cd4-6d4e828a9ae8</RequestId> </ResponseMetadata></SendEmailResponse>

Estrutura de uma resposta de erroSe uma solicitação não for bem-sucedida, o elemento de resposta principal será chamadoErrorResponse, independentemente da ação que foi chamada. Esse elemento contém um elementoError e um elemento RequestId. Cada Error inclui:

• Um elemento Type que identifica se o erro foi do destinatário ou remetente• Um elemento Code que identifica o tipo de erro que ocorreu• Um elemento Message que descreve a condição de erro em um formato legível por pessoas• Um elemento Detail que pode oferecer detalhes adicionais sobre o erro ou pode estar vazio

405

Page 413: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCódigos de erro da API

Veja a seguir um exemplo de resposta de erro.

<ErrorResponse> <Error> <Type> Sender </Type> <Code> ValidationError </Code> <Message> Value null at 'message.subject' failed to satisfy constraint: Member must not be null </Message> </Error> <RequestId> 42d59b56-7407-4c4a-be0f-4c88daeea257 </RequestId></ErrorResponse>

Códigos de erro da API apresentados pelo AmazonSES.

Este tópico contém uma lista de códigos de erro apresentados pela API de consulta (HTTPS) do AmazonSES. Para obter mais informações sobre a API do Amazon SES, consulte Amazon Simple Email ServiceAPI Reference.

Você deve tentar novamente fazer as solicitações HTTPS que recebem erros 5xx. Nesse caso, parareduzir a probabilidade de gerar duplicações, recomendamos que você implemente um método de novastentativas exponenciais com esperas progressivamente mais longas (5, 10 e 30 segundos) entre ostempos-limite consecutivos. Se a terceira tentativa não for bem-sucedida, execute outro conjunto de novastentativas após 20 minutos. Para obter um exemplo de implementação que usa uma política de novastentativas exponenciais com o Amazon SES, consulte Como lidar com o erro "Limitação – taxa máxima deenvio excedida" no blog do Amazon SES.

Note

Cada SDK da AWS implementa a lógica de novas tentativas automaticamente.

Erros de cliente (4xx) indicam que você precisa revisar a solicitação para corrigir o problema antesde tentar novamente. Por exemplo, se as credenciais de autenticação da AWS forem inválidas, vocêdeverá atualizar a sua configuração para usar as credenciais adequadas antes de tentar enviar o e-mailnovamente.

Erro Descrição Código de statusHTTPS

Ações que Retornameste código

ConfigurationSetDoesNotExistO conjunto deconfiguraçõesespecificado nãoexiste. Um conjuntode configurações é umparâmetro opcionalque você usa parapublicar eventos deenvio de e-mail. Para

400 SendEmail,SendRawEmail

406

Page 414: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCódigos de erro da API

Erro Descrição Código de statusHTTPS

Ações que Retornameste código

obter mais informações,consulte Monitoramentousando publicação deeventos do AmazonSES (p. 282).

IncompleteSignature The request signaturedoes not conform toAWS standards.

400 Tudo

InternalFailure O processamento dasolicitação falhou porcausa de um erro, umaexceção ou uma falhadesconhecida.

500 Tudo

InvalidAction A ação ou operaçãosolicitada é inválida.Verifique se a ação foidigitada corretamente.

400 Tudo

InvalidClientTokenId O certificado X.509 ou oID da chave de acessoda AWS fornecido nãoexistem em nossosregistros.

403 Tudo

InvalidParameterCombinationParâmetros que nãodevem ser usados emconjunto foram usadosem conjunto.

400 Tudo

InvalidParameterValue Um valor inválidoou fora do intervalofoi fornecido para oparâmetro de entrada.

400 Tudo

InvalidQueryParameter A string de consulta daAWS é malformada, nãosegue os padrões daAWS.

400 Tudo

MailFromDomainNotVerifiedA mensagem nãopôde ser enviada, poiso Amazon SES nãopôde ler o registro MXnecessário para usar odomínio MAIL FROMespecificado.

400 SendEmail,SendRawEmail

MalformedQueryString A string de consultacontém um erro desintaxe.

404 Tudo

407

Page 415: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCódigos de erro da API

Erro Descrição Código de statusHTTPS

Ações que Retornameste código

MessageRejected Indica que a açãofalhou e a mensagemnão pôde ser enviada.Verifique a pilha deerros para obter umadescrição do quecausou o erro. Paraobter mais informaçõessobre problemas quepodem causar esseerro, consulte Errosde envio de e-mails doAmazon SES (p. 460).

400 SendEmail,SendRawEmail

MissingAction A solicitação carecede uma ação ou de umparâmetro necessário.

400 Tudo

MissingAuthenticationTokenA solicitação deveconter um ID de chavede acesso da AWSválido (registrado) ouum certificado X.509.

403 Tudo

MissingParameter Um parâmetroobrigatório para a açãoespecificada não foifornecido.

400 Tudo

OptInRequired O ID da chave deacesso da AWS precisade uma assinatura doserviço.

403 Tudo

RequestExpired A solicitação atingiuo serviço mais de 15minutos após a datana solicitação ou maisde 15 minutos após adata de expiração dasolicitação (como paraURLs predeterminados),ou a data na solicitaçãoestá a mais de 15minutos no futuro.

400 Tudo

ServiceUnavailable A solicitação falhoudevido a um errotemporário do servidor.

503 Tudo

Limitação A solicitação foi negadadevido à limitação dasolicitação.

400 Tudo

408

Page 416: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

Amazon SES Exemplos de códigoEsta seção contém exemplos de código que ajudam você a começar a usar o Amazon SES para enviare-mail e gerenciar sua conta do Amazon SES. Os exemplos de código estão disponíveis nas seguinteslinguagens: C #, Go, Java, PHP, Python e Ruby.

Escolha um dos seguintes links para visualizar exemplos de código para essa tarefa:• Envio de e-mail usando os SDKs da AWS (p. 409)• Envio de e-mail usando a interface SMTP do Amazon SES (p. 420)• Envio de e-mail bruto usando os SDKs da AWS (p. 431)• Verificar vários endereços de e-mail (p. 439)

Envio de e-mail usando os SDKs da AWSOs SDKs da AWS contêm métodos integrados para interagir com o Amazon SES e vários outros serviçosda AWS. Se você pretende usar o Amazon SES junto com outros serviços da AWS, recomendamos quevocê use um SDK. Para saber mais sobre os SDKs da AWS, consulte Ferramentas para a Amazon WebServices

Nesta seção, você encontrará exemplos de código em várias linguagens de programação que demonstramo processo de envio de e-mails por meio do Amazon SES usando os SDKs da AWS.

C#

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio do AmazonSES usando o AWS SDK para .NET. Este exemplo de código pressupõe que você tenha instaladoo AWS SDK para .NET e criado um arquivo de credenciais compartilhadas. Para obter maisinformações sobre a criação de um arquivo de credenciais compartilhadas, consulte Criar um arquivode credenciais compartilhadas (p. 30).

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e achave de acesso secreta no SDK Store. Para obter mais informações, consulte Configurarcredenciais da AWS no AWS SDK para .NET Developer Guide. Este exemplo não funciona, amenos que você especifique as credenciais usando um dos seguintes métodos.

using Amazon;using System;using System.Collections.Generic;using Amazon.SimpleEmail;using Amazon.SimpleEmail.Model;

namespace AmazonSESSample { class Program { // Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. static readonly string senderAddress = "[email protected]";

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified.

409

Page 417: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

static readonly string receiverAddress = "[email protected]";

// The configuration set to use for this email. If you do not want to use a // configuration set, comment out the following property and the // ConfigurationSetName = configSet argument below. static readonly string configSet = "ConfigSet";

// The subject line for the email. static readonly string subject = "Amazon SES test (AWS SDK para .NET)";

// The email body for recipients with non-HTML email clients. static readonly string textBody = "Amazon SES Test (.NET)\r\n" + "This email was sent through Amazon SES " + "using the AWS SDK para .NET."; // The HTML body of the email. static readonly string htmlBody = @"<html><head></head><body> <h1>Amazon SES Test (AWS SDK para .NET)</h1> <p>This email was sent with <a href='https://aws.amazon.com/ses/'>Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-net/'> AWS SDK para .NET</a>.</p></body></html>";

static void Main(string[] args) { // Replace USWest2 with the AWS Region you're using for Amazon SES. // Acceptable values are EUWest1, USEast1, and USWest2. using (var client = new AmazonSimpleEmailServiceClient(RegionEndpoint.USWest2)) { var sendRequest = new SendEmailRequest { Source = senderAddress, Destination = new Destination { ToAddresses = new List<string> { receiverAddress } }, Message = new Message { Subject = new Content(subject), Body = new Body { Html = new Content { Charset = "UTF-8", Data = htmlBody }, Text = new Content { Charset = "UTF-8", Data = textBody } } }, // If you are not using a configuration set, comment // or remove the following line ConfigurationSetName = configSet }; try { Console.WriteLine("Sending email using Amazon SES...");

410

Page 418: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

var response = client.SendEmail(sendRequest); Console.WriteLine("The email was sent successfully."); } catch (Exception ex) { Console.WriteLine("The email was not sent."); Console.WriteLine("Error message: " + ex.Message);

} }

Console.Write("Press any key to continue..."); Console.ReadKey(); } }}

Go

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio do AmazonSES usando o AWS SDK para Go. Este exemplo de código pressupõe que você tenha instalado oAWS SDK para Go e criado um arquivo de credenciais compartilhadas. Para obter mais informaçõessobre a criação de um arquivo de credenciais compartilhadas, consulte Criar um arquivo decredenciais compartilhadas (p. 30).

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e achave de acesso secreta definindo duas variáveis de ambiente (AWS_ACCESS_KEY_ID eAWS_SECRET_ACCESS_KEY, respectivamente). Este exemplo não funciona, a menos quevocê especifique as credenciais usando um dos seguintes métodos.

package main

import ( "fmt" //go get -u github.com/aws/aws-sdk-go "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ses" "github.com/aws/aws-sdk-go/aws/awserr")

const ( // Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. Sender = "[email protected]" // Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. Recipient = "[email protected]"

// Specify a configuration set. If you do not want to use a configuration // set, comment out the following constant and the // ConfigurationSetName: aws.String(ConfigurationSet) argument below ConfigurationSet = "ConfigSet" // Replace us-west-2 with the AWS Region you're using for Amazon SES. AwsRegion = "us-west-2" // The subject line for the email.

411

Page 419: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

Subject = "Amazon SES Test (AWS SDK para Go)" // The HTML body for the email. HtmlBody = "<h1>Amazon SES Test Email (AWS SDK para Go)</h1><p>This email was sent with " + "<a href='https://aws.amazon.com/ses/'>Amazon SES</a> using the " + "<a href='https://aws.amazon.com/sdk-for-go/'>AWS SDK para Go</a>.</p>" //The email body for recipients with non-HTML email clients. TextBody = "This email was sent with Amazon SES using the AWS SDK para Go." // The character encoding for the email. CharSet = "UTF-8")

func main() { // Create a new session and specify an AWS Region. sess, err := session.NewSession(&aws.Config{ Region:aws.String(AwsRegion)}, ) // Create an SES client in the session. svc := ses.New(sess) // Assemble the email. input := &ses.SendEmailInput{ Destination: &ses.Destination{ CcAddresses: []*string{ }, ToAddresses: []*string{ aws.String(Recipient), }, }, Message: &ses.Message{ Body: &ses.Body{ Html: &ses.Content{ Charset: aws.String(CharSet), Data: aws.String(HtmlBody), }, Text: &ses.Content{ Charset: aws.String(CharSet), Data: aws.String(TextBody), }, }, Subject: &ses.Content{ Charset: aws.String(CharSet), Data: aws.String(Subject), }, }, Source: aws.String(Sender), // Comment or remove the following line if you are not using a configuration set ConfigurationSetName: aws.String(ConfigurationSet), }

// Attempt to send the email. result, err := svc.SendEmail(input) // Display error messages if they occur. if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case ses.ErrCodeMessageRejected: fmt.Println(ses.ErrCodeMessageRejected, aerr.Error()) case ses.ErrCodeMailFromDomainNotVerifiedException:

412

Page 420: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

fmt.Println(ses.ErrCodeMailFromDomainNotVerifiedException, aerr.Error()) case ses.ErrCodeConfigurationSetDoesNotExistException: fmt.Println(ses.ErrCodeConfigurationSetDoesNotExistException, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) } return } fmt.Println("Email Sent!") fmt.Println(result)}

Java

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio do AmazonSES usando o AWS SDK for Java. Este exemplo de código pressupõe que você tenha instalado oAWS SDK for Java e criado um arquivo de credenciais compartilhadas. Para obter mais informaçõessobre a criação de um arquivo de credenciais compartilhadas, consulte Criar um arquivo decredenciais compartilhadas (p. 30).

package com.amazonaws.samples;

import java.io.IOException;

import com.amazonaws.regions.Regions;import com.amazonaws.services.simpleemail.AmazonSimpleEmailService;import com.amazonaws.services.simpleemail.AmazonSimpleEmailServiceClientBuilder;import com.amazonaws.services.simpleemail.model.Body;import com.amazonaws.services.simpleemail.model.Content;import com.amazonaws.services.simpleemail.model.Destination;import com.amazonaws.services.simpleemail.model.Message;import com.amazonaws.services.simpleemail.model.SendEmailRequest;

public class AmazonSESSample {

// Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. static final String FROM = "[email protected]";

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. static final String TO = "[email protected]";

// The configuration set to use for this email. If you do not want to use a // configuration set, comment the following variable and the // .withConfigurationSetName(CONFIGSET); argument below. static final String CONFIGSET = "ConfigSet";

// The subject line for the email. static final String SUBJECT = "Amazon SES test (AWS SDK for Java)"; // The HTML body for the email. static final String HTMLBODY = "<h1>Amazon SES test (AWS SDK for Java)</h1>" + "<p>This email was sent with <a href='https://aws.amazon.com/ses/'>" + "Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-java/'>" + "AWS SDK for Java</a>";

413

Page 421: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

// The email body for recipients with non-HTML email clients. static final String TEXTBODY = "This email was sent through Amazon SES " + "using the AWS SDK for Java.";

public static void main(String[] args) throws IOException {

try { AmazonSimpleEmailService client = AmazonSimpleEmailServiceClientBuilder.standard() // Replace US_WEST_2 with the AWS Region you're using for // Amazon SES. .withRegion(Regions.US_WEST_2).build(); SendEmailRequest request = new SendEmailRequest() .withDestination( new Destination().withToAddresses(TO)) .withMessage(new Message() .withBody(new Body() .withHtml(new Content() .withCharset("UTF-8").withData(HTMLBODY)) .withText(new Content() .withCharset("UTF-8").withData(TEXTBODY))) .withSubject(new Content() .withCharset("UTF-8").withData(SUBJECT))) .withSource(FROM) // Comment or remove the next line if you are not using a // configuration set .withConfigurationSetName(CONFIGSET); client.sendEmail(request); System.out.println("Email sent!"); } catch (Exception ex) { System.out.println("The email was not sent. Error message: " + ex.getMessage()); } }}

JavaScript

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio do AmazonSES usando o AWS SDK for JavaScript in Node.js. Este exemplo de código pressupõe quevocê tenha instalado o SDK para JavaScript no Node.js. Você também deve criar um arquivo deconfiguração que contenha seu ID da chave de acesso da AWS, a chave de acesso secreta e a regiãoda AWS preferida. Para obter mais informações sobre como criar esse arquivo, consulte Carregarcredenciais no Node.js a partir de um arquivo JSON.

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e achave de acesso secreta definindo duas variáveis de ambiente (AWS_ACCESS_KEY_ID eAWS_SECRET_ACCESS_KEY, respectivamente). Este exemplo não funciona, a menos quevocê especifique as credenciais usando um dos seguintes métodos.

'use strict';

var aws = require('aws-sdk');

// Provide the full path to your config.json file. aws.config.loadFromPath('./config.json');

// Replace [email protected] with your "From" address.// This address must be verified with Amazon SES.

414

Page 422: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

const sender = "Sender Name <[email protected]>";

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified.const recipient = "[email protected]";

// Specify a configuration set. If you do not want to use a configuration// set, comment the following variable, and the // ConfigurationSetName : configuration_set argument below.const configuration_set = "ConfigSet";

// The subject line for the email.const subject = "Amazon SES Test (AWS SDK for JavaScript in Node.js)";

// The email body for recipients with non-HTML email clients.const body_text = "Amazon SES Test (SDK para JavaScript no Node.js)\r\n" + "This email was sent with Amazon SES using the " + "AWS SDK for JavaScript in Node.js."; // The HTML body of the email.const body_html = `<html><head></head><body> <h1>Amazon SES Test (SDK para JavaScript no Node.js)</h1> <p>This email was sent with <a href='https://aws.amazon.com/ses/'>Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-node-js/'> AWS SDK for JavaScript in Node.js</a>.</p></body></html>`;

// The character encoding for the email.const charset = "UTF-8";

// Create a new SES object. var ses = new aws.SES();

// Specify the parameters to pass to the API.var params = { Source: sender, Destination: { ToAddresses: [ recipient ], }, Message: { Subject: { Data: subject, Charset: charset }, Body: { Text: { Data: body_text, Charset: charset }, Html: { Data: body_html, Charset: charset } } }, ConfigurationSetName: configuration_set};

//Try to send the email.ses.sendEmail(params, function(err, data) {

415

Page 423: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

// If something goes wrong, print an error message. if(err) { console.log(err.message); } else { console.log("Email sent! Message ID: ", data.MessageId); }});

PHP

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio do AmazonSES usando o AWS SDK para PHP. Este exemplo de código pressupõe que você tenha instalado oAWS SDK para PHP e criado um arquivo de credenciais compartilhadas. Para obter mais informaçõessobre a criação de um arquivo de credenciais compartilhadas, consulte Criar um arquivo decredenciais compartilhadas (p. 30).

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e achave de acesso secreta definindo duas variáveis de ambiente (AWS_ACCESS_KEY_ID eAWS_SECRET_ACCESS_KEY, respectivamente). Este exemplo não funciona, a menos quevocê especifique as credenciais usando um dos seguintes métodos.

<?php

// If necessary, modify the path in the require statement below to refer to the // location of your Composer autoload.php file.require 'vendor/autoload.php';

use Aws\Ses\SesClient;use Aws\Exception\AwsException;

// Create an SesClient. Change the value of the region parameter if you're // using an AWS Region other than Oeste dos EUA (Oregon). Change the value of the// profile parameter if you want to use a profile in your credentials file// other than the default.$SesClient = new SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-west-2']);

// Replace [email protected] with your "From" address.// This address must be verified with Amazon SES.$sender_email = '[email protected]';

// Replace these sample addresses with the addresses of your recipients. If// your account is still in the sandbox, these addresses must be verified.$recipient_emails = ['[email protected]','[email protected]'];

// Specify a configuration set. If you do not want to use a configuration// set, comment the following variable, and the// 'ConfigurationSetName' => $configuration_set argument below.$configuration_set = 'ConfigSet';

$subject = 'Amazon SES test (AWS SDK para PHP)';$plaintext_body = 'This email was sent with Amazon SES using the AWS SDK for PHP.' ;$html_body = '<h1>AWS Amazon Simple Email Service Test Email</h1>'. '<p>This email was sent with <a href="https://aws.amazon.com/ses/">'. 'Amazon SES</a> using the <a href="https://aws.amazon.com/sdk-for-php/">'. 'AWS SDK para PHP</a>.</p>';

416

Page 424: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

$char_set = 'UTF-8';

try { $result = $SesClient->sendEmail([ 'Destination' => [ 'ToAddresses' => $recipient_emails, ], 'ReplyToAddresses' => [$sender_email], 'Source' => $sender_email, 'Message' => [ 'Body' => [ 'Html' => [ 'Charset' => $char_set, 'Data' => $html_body, ], 'Text' => [ 'Charset' => $char_set, 'Data' => $plaintext_body, ], ], 'Subject' => [ 'Charset' => $char_set, 'Data' => $subject, ], ], // If you aren't using a configuration set, comment or delete the // following line 'ConfigurationSetName' => $configuration_set, ]); $messageId = $result['MessageId']; echo("Email sent! Message ID: $messageId"."\n");} catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo("The email was not sent. Error message: ".$e->getAwsErrorMessage()."\n"); echo "\n";}

Python

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio do AmazonSES usando o AWS SDK for Python (Boto). Este exemplo de código pressupõe que você tenhainstalado o AWS SDK for Python (Boto) e criado um arquivo de credenciais compartilhadas. Para obtermais informações sobre a criação de um arquivo de credenciais compartilhadas, consulte Criar umarquivo de credenciais compartilhadas (p. 30).

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e achave de acesso secreta definindo duas variáveis de ambiente (AWS_ACCESS_KEY_ID eAWS_SECRET_ACCESS_KEY, respectivamente). Este exemplo não funciona, a menos quevocê especifique as credenciais usando um dos seguintes métodos.

import boto3from botocore.exceptions import ClientError

# Replace [email protected] with your "From" address.# This address must be verified with Amazon SES.SENDER = "Sender Name <[email protected]>"

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.

417

Page 425: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

RECIPIENT = "[email protected]"

# Specify a configuration set. If you do not want to use a configuration# set, comment the following variable, and the # ConfigurationSetName=CONFIGURATION_SET argument below.CONFIGURATION_SET = "ConfigSet"

# If necessary, replace us-west-2 with the AWS Region you're using for Amazon SES.AWS_REGION = "us-west-2"

# The subject line for the email.SUBJECT = "Amazon SES Test (SDK for Python)"

# The email body for recipients with non-HTML email clients.BODY_TEXT = ("Amazon SES Test (Python)\r\n" "This email was sent with Amazon SES using the " "AWS SDK for Python (Boto)." ) # The HTML body of the email.BODY_HTML = """<html><head></head><body> <h1>Amazon SES Test (SDK for Python)</h1> <p>This email was sent with <a href='https://aws.amazon.com/ses/'>Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-python/'> AWS SDK for Python (Boto)</a>.</p></body></html> """

# The character encoding for the email.CHARSET = "UTF-8"

# Create a new SES resource and specify a region.client = boto3.client('ses',region_name=AWS_REGION)

# Try to send the email.try: #Provide the contents of the email. response = client.send_email( Destination={ 'ToAddresses': [ RECIPIENT, ], }, Message={ 'Body': { 'Html': { 'Charset': CHARSET, 'Data': BODY_HTML, }, 'Text': { 'Charset': CHARSET, 'Data': BODY_TEXT, }, }, 'Subject': { 'Charset': CHARSET, 'Data': SUBJECT, }, }, Source=SENDER, # If you are not using a configuration set, comment or delete the # following line

418

Page 426: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando os SDKs da AWS

ConfigurationSetName=CONFIGURATION_SET, )# Display an error if something goes wrong. except ClientError as e: print(e.response['Error']['Message'])else: print("Email sent! Message ID:"), print(response['MessageId'])

Ruby

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio do AmazonSES usando o AWS SDK para Ruby. Este exemplo de código pressupõe que você tenha instaladoo AWS SDK para Ruby e criado um arquivo de credenciais compartilhadas. Para obter maisinformações sobre como instalar oSDK para Ruby, consulte Instalar o AWS SDK para Ruby no AWSSDK para Ruby Developer Guide. Para obter mais informações sobre a criação de um arquivo decredenciais compartilhadas, consulte Criar um arquivo de credenciais compartilhadas (p. 30).

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e achave de acesso secreta definindo duas variáveis de ambiente (AWS_ACCESS_KEY_ID eAWS_SECRET_ACCESS_KEY, respectivamente). Este exemplo não funciona, a menos quevocê especifique as credenciais usando um dos seguintes métodos.

require 'aws-sdk'

# Replace [email protected] with your "From" address.# This address must be verified with Amazon SES.sender = "[email protected]"

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.recipient = "[email protected]"

# Specify a configuration set. If you do not want to use a configuration# set, comment the following variable and the # configuration_set_name: configsetname argument below. configsetname = "ConfigSet" # Replace us-west-2 with the AWS Region you're using for Amazon SES.awsregion = "us-west-2"

# The subject line for the email.subject = "Amazon SES test (AWS SDK para Ruby)"

# The HTML body of the email.htmlbody = '<h1>Amazon SES test (AWS SDK para Ruby)</h1>'\ '<p>This email was sent with <a href="https://aws.amazon.com/ses/">'\ 'Amazon SES</a> using the <a href="https://aws.amazon.com/sdk-for-ruby/">'\ 'AWS SDK para Ruby</a>.'

# The email body for recipients with non-HTML email clients. textbody = "This email was sent with Amazon SES using the AWS SDK para Ruby."

# Specify the text encoding scheme.encoding = "UTF-8"

# Create a new SES resource and specify a regionses = Aws::SES::Client.new(region: awsregion)

419

Page 427: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

# Try to send the email.begin

# Provide the contents of the email. resp = ses.send_email({ destination: { to_addresses: [ recipient, ], }, message: { body: { html: { charset: encoding, data: htmlbody, }, text: { charset: encoding, data: textbody, }, }, subject: { charset: encoding, data: subject, }, }, source: sender, # Comment or remove the following line if you are not using # a configuration set configuration_set_name: configsetname, }) puts "Email sent!"

# If something goes wrong, display an error message.rescue Aws::SES::Errors::ServiceError => error puts "Email not sent. Error message: #{error}"

end

Envio de e-mail usando a interface SMTP doAmazon SES

Várias linguagens de programação incluem bibliotecas padrão para enviar e-mails usando SMTP. Vocêpode usar essas bibliotecas para criar aplicativos de envio de e-mail leves e altamente configuráveis.

Nesta seção, você vai encontrar exemplos de código em várias linguagens de programação quedemonstram o processo de envio de e-mails por meio do Amazon SES usando a interface SMTP. Sempreque possível, esses exemplos de código usam bibliotecas padrão.

C#

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio da interfaceSMTP do Amazon SES usando C#. Para executar este exemplo de código, você deve obtercredenciais SMTP; para mais informações, consulte Obtenção das suas credenciais SMTP doAmazon SES (p. 81).

using System;using System.Net;using System.Net.Mail;

420

Page 428: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

namespace AmazonSESSample{ class Program { static void Main(string[] args) { // Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. String FROM = "[email protected]"; String FROMNAME = "Sender Name";

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. String TO = "[email protected]";

// Replace smtp_username with your Amazon SES SMTP user name. String SMTP_USERNAME = "smtp_username";

// Replace smtp_password with your Amazon SES SMTP user name. String SMTP_PASSWORD = "smtp_password";

// (Optional) the name of a configuration set to use for this message. // If you comment out this line, you also need to remove or comment out // the "X-SES-CONFIGURATION-SET" header below. String CONFIGSET = "ConfigSet";

// If you're using Amazon SES in a region other than Oeste dos EUA (Oregon), // replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP // endpoint in the appropriate AWS Region. String HOST = "email-smtp.us-west-2.amazonaws.com";

// The port you will connect to on the Amazon SES SMTP endpoint. We // are choosing port 587 because we will use STARTTLS to encrypt // the connection. int PORT = 587;

// The subject line of the email String SUBJECT = "Amazon SES test (SMTP interface accessed using C#)";

// The body of the email String BODY = "<h1>Amazon SES Test</h1>" + "<p>This email was sent through the " + "<a href='https://aws.amazon.com/ses'>Amazon SES</a> SMTP interface " + "using the .NET System.Net.Mail library.</p>";

// Create and build a new MailMessage object MailMessage message = new MailMessage(); message.IsBodyHtml = true; message.From = new MailAddress(FROM, FROMNAME); message.To.Add(new MailAddress(TO)); message.Subject = SUBJECT; message.Body = BODY; // Comment or delete the next line if you are not using a configuration set message.Headers.Add("X-SES-CONFIGURATION-SET", CONFIGSET);

using (var client = new System.Net.Mail.SmtpClient(HOST, PORT)) { // Pass SMTP credentials client.Credentials = new NetworkCredential(SMTP_USERNAME, SMTP_PASSWORD);

// Enable SSL encryption

421

Page 429: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

client.EnableSsl = true;

// Try to send the message. Show status in console. try { Console.WriteLine("Attempting to send email..."); client.Send(message); Console.WriteLine("Email sent!"); } catch (Exception ex) { Console.WriteLine("The email was not sent."); Console.WriteLine("Error message: " + ex.Message); } } } }}

Go

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio da interfaceSMTP do Amazon SES usando a linguagem de programação Go. Para executar este exemplo decódigo, você deve obter credenciais SMTP; para mais informações, consulte Obtenção das suascredenciais SMTP do Amazon SES (p. 81). Você também deve instalar o pacote Gomail.

package main

import ( "fmt" "gopkg.in/gomail.v2" //go get gopkg.in/gomail.v2)

const ( // Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. Sender = "[email protected]" SenderName = "Sender Name" // Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. Recipient = "[email protected]"

// Replace SmtpUser with your Amazon SES SMTP user name. SmtpUser = "SmtpUser" // Replace SmtpPass with your Amazon SES SMTP password. SmtpPass = "SmtpPass" // The name of the configuration set to use for this message. // If you comment out or remove this variable, you will also need to // comment out or remove the header below. ConfigSet = "ConfigSet" // If you're using Amazon SES in an AWS Region other than Oeste dos EUA (Oregon), // replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP // endpoint in the appropriate region. Host = "email-smtp.us-west-2.amazonaws.com" Port = 587 // The subject line for the email. Subject = "Amazon SES Test (Gomail)" // The HTML body for the email.

422

Page 430: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

HtmlBody = "<html><head><title>SES Sample Email</title></head><body>" + "<h1>Amazon SES Test Email (Gomail)</h1>" + "<p>This email was sent with " + "<a href='https://aws.amazon.com/ses/'>Amazon SES</a> using " + "the <a href='https://github.com/go-gomail/gomail/'>Gomail " + "package</a> for <a href='https://golang.org/'>Go</a>.</p>" + "</body></html>" //The email body for recipients with non-HTML email clients. TextBody = "This email was sent with Amazon SES using the Gomail package." // The tags to apply to this message. Separate multiple key-value pairs // with commas. // If you comment out or remove this variable, you will also need to // comment out or remove the header on line 80. Tags = "genre=test,genre2=test2" // The character encoding for the email. CharSet = "UTF-8"

)

func main() { // Create a new message. m := gomail.NewMessage() // Set the main email part to use HTML. m.SetBody("text/html", HtmlBody) // Set the alternative part to plain text. m.AddAlternative("text/plain", TextBody)

// Construct the message headers, including a Configuration Set and a Tag. m.SetHeaders(map[string][]string{ "From": {m.FormatAddress(Sender,SenderName)}, "To": {Recipient}, "Subject": {Subject}, // Comment or remove the next line if you are not using a configuration set "X-SES-CONFIGURATION-SET": {ConfigSet}, // Comment or remove the next line if you are not using custom tags "X-SES-MESSAGE-TAGS": {Tags}, }) // Send the email. d := gomail.NewPlainDialer(Host, Port, SmtpUser, SmtpPass) // Display an error message if something goes wrong; otherwise, // display a message confirming that the message was sent. if err := d.DialAndSend(m); err != nil { fmt.Println(err) } else { fmt.Println("Email sent!") }}

Java

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio da interfaceSMTP do Amazon SES usando Java. Para executar este exemplo de código, você deve obtercredenciais SMTP; para mais informações, consulte Obtenção das suas credenciais SMTP doAmazon SES (p. 81). É preciso também fazer download da API JavaMail.

import java.util.Properties;

423

Page 431: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

import javax.mail.Message;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;

public class AmazonSESSample {

// Replace [email protected] with your "From" address. // This address must be verified. static final String FROM = "[email protected]"; static final String FROMNAME = "Sender Name"; // Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. static final String TO = "[email protected]"; // Replace smtp_username with your Amazon SES SMTP user name. static final String SMTP_USERNAME = "smtp_username"; // Replace smtp_password with your Amazon SES SMTP password. static final String SMTP_PASSWORD = "smtp_password"; // The name of the Configuration Set to use for this message. // If you comment out or remove this variable, you will also need to // comment out or remove the header below. static final String CONFIGSET = "ConfigSet"; // Amazon SES SMTP host name. This example uses the Oeste dos EUA (Oregon) region. // See https://docs.aws.amazon.com/ses/latest/DeveloperGuide/regions.html#region-endpoints // for more information. static final String HOST = "email-smtp.us-west-2.amazonaws.com"; // The port you will connect to on the Amazon SES SMTP endpoint. static final int PORT = 587; static final String SUBJECT = "Amazon SES test (SMTP interface accessed using Java)"; static final String BODY = String.join( System.getProperty("line.separator"), "<h1>Amazon SES SMTP Email Test</h1>", "<p>This email was sent with Amazon SES using the ", "<a href='https://github.com/javaee/javamail'>Javamail Package</a>", " for <a href='https://www.java.com'>Java</a>." );

public static void main(String[] args) throws Exception {

// Create a Properties object to contain connection configuration information. Properties props = System.getProperties(); props.put("mail.transport.protocol", "smtp"); props.put("mail.smtp.port", PORT); props.put("mail.smtp.starttls.enable", "true"); props.put("mail.smtp.auth", "true");

// Create a Session object to represent a mail session with the specified properties. Session session = Session.getDefaultInstance(props);

// Create a message with the specified information. MimeMessage msg = new MimeMessage(session); msg.setFrom(new InternetAddress(FROM,FROMNAME)); msg.setRecipient(Message.RecipientType.TO, new InternetAddress(TO));

424

Page 432: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

msg.setSubject(SUBJECT); msg.setContent(BODY,"text/html"); // Add a configuration set header. Comment or delete the // next line if you are not using a configuration set msg.setHeader("X-SES-CONFIGURATION-SET", CONFIGSET); // Create a transport. Transport transport = session.getTransport(); // Send the message. try { System.out.println("Sending..."); // Connect to Amazon SES using the SMTP username and password you specified above. transport.connect(HOST, SMTP_USERNAME, SMTP_PASSWORD); // Send the email. transport.sendMessage(msg, msg.getAllRecipients()); System.out.println("Email sent!"); } catch (Exception ex) { System.out.println("The email was not sent."); System.out.println("Error message: " + ex.getMessage()); } finally { // Close and terminate the connection. transport.close(); } }}

Perl

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio da interfaceSMTP do Amazon SES usando Perl. Para executar este exemplo de código, você deve obtercredenciais SMTP; para mais informações, consulte Obtenção das suas credenciais SMTP doAmazon SES (p. 81). Você também deve instalar os módulos Email::Sender, E-mail::MIME e Try::Tinyde CPAN.

#!/usr/bin/perl use warnings;use strict;use Email::Sender::Simple qw(sendmail);use Email::Sender::Transport::SMTP;use Email::MIME;use Try::Tiny;

# Replace [email protected] with your "From" address. # This address must be verified.my $sender = 'Sender name <[email protected]>';

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.my $recipient = '[email protected]';

# Replace smtp_username with your Amazon SES SMTP user name.my $smtp_username = "smtp_username";

# Replace smtp_password with your Amazon SES SMTP password.my $smtp_password = "smtp_password";

425

Page 433: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

# (Optional) the name of a configuration set to use for this message.# If you comment out this line, you also need to remove or comment out# the "X-SES-CONFIGURATION-SET:" header below.my $configset = "ConfigSet";

# If you're using Amazon SES in an AWS Region other than Oeste dos EUA (Oregon), # replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP # endpoint in the appropriate region.my $host = "email-smtp.us-west-2.amazonaws.com";my $port = 587;

# The subject line of the email.my $subject = "Amazon SES Test (Perl)";

# The HTML body for the email.my $htmlbody = <<'END_HTML';<html> <head></head> <body> <h1>Amazon SES SMTP Email Test</h1> <p>This email was sent with Amazon SES using the <a href='https://www.perl.org/'>Perl</a> <a href='http://search.cpan.org/~rjbs/Email-Sender-1.300031/'> Email::Sender</a> library.</p> </body></html>END_HTML

# The email body for recipients with non-HTML email clients.my $textbody = "Amazon SES Test\r\n" . "This message was sent with Amazon SES using the Perl " . "Email::Sender module.";

# Create the SMTP transport.my $transport = Email::Sender::Transport::SMTP->new( host => "$host", port => "$port", ssl => 'starttls', sasl_username => "$smtp_username", sasl_password => "$smtp_password",);

# Build a multipart MIME message with an HTML part and a text part.my $message = Email::MIME->create( attributes => { content_type => 'multipart/alternative', charset => 'UTF-8', }, header_str => [ From => "$sender", To => "$recipient", Subject => "$subject", ], parts => [ Email::MIME->create( attributes => { content_type => 'text/plain' }, body => "$textbody", ), Email::MIME->create( attributes => { content_type => 'text/html' }, body => "$htmlbody", ) ],);

426

Page 434: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

# Add the configuration set header to the MIME message.$message->header_str_set( 'X-SES-CONFIGURATION-SET' => "$configset" );

# Try to send the email using the sendmail function from # Email::Sender::Simple.try { sendmail($message, { transport => $transport });# If something goes wrong, print an error message.} catch { die "Error sending email: $_";};

PHP

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio da interfaceSMTP do Amazon SES usando PHP. Para executar este exemplo de código, você deve obtercredenciais SMTP; para mais informações, consulte Obtenção das suas credenciais SMTP doAmazon SES (p. 81). Você também deve instalar o pacote PHPMailer usando o Composer.

<?php

// Import PHPMailer classes into the global namespace// These must be at the top of your script, not inside a functionuse PHPMailer\PHPMailer\PHPMailer;use PHPMailer\PHPMailer\Exception;

// If necessary, modify the path in the require statement below to refer to the// location of your Composer autoload.php file.require 'vendor/autoload.php';

// Replace [email protected] with your "From" address.// This address must be verified with Amazon SES.$sender = '[email protected]';$senderName = 'Sender Name';

// Replace [email protected] with a "To" address. If your account// is still in the sandbox, this address must be verified.$recipient = '[email protected]';

// Replace smtp_username with your Amazon SES SMTP user name.$usernameSmtp = 'smtp_username';

// Replace smtp_password with your Amazon SES SMTP password.$passwordSmtp = 'smtp_password';

// Specify a configuration set. If you do not want to use a configuration// set, comment or remove the next line.$configurationSet = 'ConfigSet';

// If you're using Amazon SES in a region other than US West (Oregon),// replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP// endpoint in the appropriate region.$host = 'email-smtp.us-west-2.amazonaws.com';$port = 587;

// The subject line of the email$subject = 'Amazon SES test (SMTP interface accessed using PHP)';

// The plain-text body of the email$bodyText = "Email Test\r\nThis email was sent through the Amazon SES SMTP interface using the PHPMailer class.";

// The HTML-formatted body of the email$bodyHtml = '<h1>Email Test</h1>

427

Page 435: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

<p>This email was sent through the <a href="https://aws.amazon.com/ses">Amazon SES</a> SMTP interface using the <a href="https://github.com/PHPMailer/PHPMailer"> PHPMailer</a> class.</p>';

$mail = new PHPMailer(true);

try { // Specify the SMTP settings. $mail->isSMTP(); $mail->setFrom($sender, $senderName); $mail->Username = $usernameSmtp; $mail->Password = $passwordSmtp; $mail->Host = $host; $mail->Port = $port; $mail->SMTPAuth = true; $mail->SMTPSecure = 'tls'; $mail->addCustomHeader('X-SES-CONFIGURATION-SET', $configurationSet);

// Specify the message recipients. $mail->addAddress($recipient); // You can also add CC, BCC, and additional To recipients here.

// Specify the content of the message. $mail->isHTML(true); $mail->Subject = $subject; $mail->Body = $bodyHtml; $mail->AltBody = $bodyText; $mail->Send(); echo "Email sent!" , PHP_EOL;} catch (phpmailerException $e) { echo "An error occurred. {$e->errorMessage()}", PHP_EOL; //Catch errors from PHPMailer.} catch (Exception $e) { echo "Email not sent. {$mail->ErrorInfo}", PHP_EOL; //Catch errors from Amazon SES.}

?>

Python

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio da interfaceSMTP do Amazon SES usando Python. Para executar este exemplo de código, você deve obtercredenciais SMTP; para mais informações, consulte Obtenção das suas credenciais SMTP doAmazon SES (p. 81).

import smtplib import email.utilsfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMEText

# Replace [email protected] with your "From" address. # This address must be verified.SENDER = '[email protected]' SENDERNAME = 'Sender Name'

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.RECIPIENT = '[email protected]'

# Replace smtp_username with your Amazon SES SMTP user name.USERNAME_SMTP = "smtp_username"

428

Page 436: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

# Replace smtp_password with your Amazon SES SMTP password.PASSWORD_SMTP = "smtp_password"

# (Optional) the name of a configuration set to use for this message.# If you comment out this line, you also need to remove or comment out# the "X-SES-CONFIGURATION-SET:" header below.CONFIGURATION_SET = "ConfigSet"

# If you're using Amazon SES in an AWS Region other than Oeste dos EUA (Oregon), # replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP # endpoint in the appropriate region.HOST = "email-smtp.us-west-2.amazonaws.com"PORT = 587

# The subject line of the email.SUBJECT = 'Amazon SES Test (Python smtplib)'

# The email body for recipients with non-HTML email clients.BODY_TEXT = ("Amazon SES Test\r\n" "This email was sent through the Amazon SES SMTP " "Interface using the Python smtplib package." )

# The HTML body of the email.BODY_HTML = """<html><head></head><body> <h1>Amazon SES SMTP Email Test</h1> <p>This email was sent with Amazon SES using the <a href='https://www.python.org/'>Python</a> <a href='https://docs.python.org/3/library/smtplib.html'> smtplib</a> library.</p></body></html> """

# Create message container - the correct MIME type is multipart/alternative.msg = MIMEMultipart('alternative')msg['Subject'] = SUBJECTmsg['From'] = email.utils.formataddr((SENDERNAME, SENDER))msg['To'] = RECIPIENT# Comment or delete the next line if you are not using a configuration setmsg.add_header('X-SES-CONFIGURATION-SET',CONFIGURATION_SET)

# Record the MIME types of both parts - text/plain and text/html.part1 = MIMEText(BODY_TEXT, 'plain')part2 = MIMEText(BODY_HTML, 'html')

# Attach parts into message container.# According to RFC 2046, the last part of a multipart message, in this case# the HTML message, is best and preferred.msg.attach(part1)msg.attach(part2)

# Try to send the message.try: server = smtplib.SMTP(HOST, PORT) server.ehlo() server.starttls() #stmplib docs recommend calling ehlo() before & after starttls() server.ehlo() server.login(USERNAME_SMTP, PASSWORD_SMTP) server.sendmail(SENDER, RECIPIENT, msg.as_string()) server.close()# Display an error message if something goes wrong.except Exception as e:

429

Page 437: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail usando a interface SMTP

print ("Error: ", e)else: print ("Email sent!")

Ruby

O código de exemplo a seguir é uma solução completa para envio de e-mails por meio da interfaceSMTP do Amazon SES usando Ruby. Para executar este exemplo de código, você deve obtercredenciais SMTP; para mais informações, consulte Obtenção das suas credenciais SMTP doAmazon SES (p. 81).

require 'net/smtp'

# Replace [email protected] with your "From" address.# This address must be verified with Amazon SES.sender = "[email protected]"senderName = "Sender Name"

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.recipient = "[email protected]"

# Replace smtp_username with your Amazon SES SMTP user name.smtp_username = "smtp_username"

# Replace smtp_password with your Amazon SES SMTP password.smtp_password = "smtp_password"

# (Optional) the name of a configuration set to use for this message.# If you comment out this line, you also need to remove or comment out# the "X-SES-CONFIGURATION-SET" header below.configSet = "ConfigSet"

# If you're using Amazon SES in an AWS Region other than Oeste dos EUA (Oregon), # replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP # endpoint in the appropriate region.server = "email-smtp.us-west-2.amazonaws.com"port = 587

# The subject line of the email.subject = "Amazon SES Test (Ruby Net::SMTP library)"

# Specify the headers and body of the message as a variable.message = [ #Remove the next line if you are not using a configuration set "X-SES-CONFIGURATION-SET: #{configSet}", "Content-Type: text/html; charset=UTF-8", "Content-Transfer-Encoding: 7bit", "From: #{senderName} <#{sender}>", "To: #{recipient}", "Subject: #{subject}", "", "<h1>Amazon SES Test (Ruby Net::SMTP library)</h1>", "<p>This email was sent with \ <a href='https://aws.amazon.com/ses/'>\ Amazon SES</a> using the Ruby Net::SMTP library.</p>" ].join("\n") # Create a new SMTP object called "smtp."smtp = Net::SMTP.new(server, port)

# Tell the smtp object to connect using TLS.smtp.enable_starttls

430

Page 438: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail bruto usando os SDKs da AWS

# Open an SMTP session and log in to the server using SMTP authentication.smtp.start(server,smtp_username,smtp_password, :login)

# Try to send the message.begin smtp.send_message(message, sender, recipient) puts "Email sent!"# Print an error message if something goes wrong.rescue => e puts eend

Envio de e-mail bruto usando os SDKs da AWSOs SDKs da AWS contêm métodos integrados para interagir com o Amazon SES e vários outros serviçosda AWS. Se você pretende usar o Amazon SES junto com outros serviços da AWS, recomendamos quevocê use um SDK. Para saber mais sobre os SDKs da AWS, consulte Ferramentas para a Amazon WebServices

Nesta seção, você vai encontrar exemplos de código em várias linguagens de programação quedemonstram o processo de envio de e-mail bruto por meio do Amazon SES usando os SDKs da AWS.

Java

O código de exemplo a seguir mostra como usar a biblioteca JavaMail e o AWS SDK for Java paracompor e enviar um e-mail bruto contendo uma parte em HTML, uma parte de texto e um anexo.

Este exemplo de código pressupõe que você tenha instalado o AWS SDK for Java e criado umarquivo de credenciais compartilhadas. Para obter mais informações sobre a criação de um arquivo decredenciais compartilhadas, consulte Criar um arquivo de credenciais compartilhadas (p. 30).

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e achave de acesso secreta definindo duas variáveis de ambiente (AWS_ACCESS_KEY_ID eAWS_SECRET_ACCESS_KEY, respectivamente). Este exemplo não funciona, a menos quevocê especifique as credenciais usando um dos seguintes métodos.

package com.amazonaws.samples;

import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.PrintStream;import java.nio.ByteBuffer;import java.util.Properties;

// JavaMail libraries. Download the JavaMail API // from https://javaee.github.io/javamail/import javax.activation.DataHandler;import javax.activation.DataSource;import javax.activation.FileDataSource;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.Session;import javax.mail.internet.AddressException;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeBodyPart;

431

Page 439: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail bruto usando os SDKs da AWS

import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeMultipart;

// AWS SDK libraries. Download the AWS SDK for Java // from https://aws.amazon.com/sdk-for-javaimport com.amazonaws.regions.Regions;import com.amazonaws.services.simpleemail.AmazonSimpleEmailService;import com.amazonaws.services.simpleemail.AmazonSimpleEmailServiceClientBuilder;import com.amazonaws.services.simpleemail.model.RawMessage;import com.amazonaws.services.simpleemail.model.SendRawEmailRequest;

public class AmazonSESSample {

// Replace [email protected] with your "From" address. // This address must be verified with Amazon SES. private static String SENDER = "Sender Name <[email protected]>";

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified. private static String RECIPIENT = "[email protected]";

// Specify a configuration set. If you do not want to use a configuration // set, comment the following variable, and the // ConfigurationSetName=CONFIGURATION_SET argument below. private static String CONFIGURATION_SET = "ConfigSet";

// The subject line for the email. private static String SUBJECT = "Customer service contact info";

// The full path to the file that will be attached to the email. // If you're using Windows, escape backslashes as shown in this variable. private static String ATTACHMENT = "C:\\Users\\sender\\customers-to-contact.xlsx";

// The email body for recipients with non-HTML email clients. private static String BODY_TEXT = "Hello,\r\n" + "Please see the attached file for a list " + "of customers to contact.";

// The HTML body of the email. private static String BODY_HTML = "<html>" + "<head></head>" + "<body>" + "<h1>Hello!</h1>" + "<p>Please see the attached file for a " + "list of customers to contact.</p>" + "</body>" + "</html>";

public static void main(String[] args) throws AddressException, MessagingException, IOException { Session session = Session.getDefaultInstance(new Properties()); // Create a new MimeMessage object. MimeMessage message = new MimeMessage(session); // Add subject, from and to lines. message.setSubject(SUBJECT, "UTF-8"); message.setFrom(new InternetAddress(SENDER)); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(RECIPIENT));

// Create a multipart/alternative child container. MimeMultipart msg_body = new MimeMultipart("alternative"); // Create a wrapper for the HTML and text parts.

432

Page 440: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail bruto usando os SDKs da AWS

MimeBodyPart wrap = new MimeBodyPart(); // Define the text part. MimeBodyPart textPart = new MimeBodyPart(); textPart.setContent(BODY_TEXT, "text/plain; charset=UTF-8"); // Define the HTML part. MimeBodyPart htmlPart = new MimeBodyPart(); htmlPart.setContent(BODY_HTML,"text/html; charset=UTF-8"); // Add the text and HTML parts to the child container. msg_body.addBodyPart(textPart); msg_body.addBodyPart(htmlPart); // Add the child container to the wrapper object. wrap.setContent(msg_body); // Create a multipart/mixed parent container. MimeMultipart msg = new MimeMultipart("mixed"); // Add the parent container to the message. message.setContent(msg); // Add the multipart/alternative part to the message. msg.addBodyPart(wrap); // Define the attachment MimeBodyPart att = new MimeBodyPart(); DataSource fds = new FileDataSource(ATTACHMENT); att.setDataHandler(new DataHandler(fds)); att.setFileName(fds.getName()); // Add the attachment to the message. msg.addBodyPart(att);

// Try to send the email. try { System.out.println("Attempting to send an email through Amazon SES " +"using the AWS SDK for Java...");

// Instantiate an Amazon SES client, which will make the service // call with the supplied AWS credentials. AmazonSimpleEmailService client = AmazonSimpleEmailServiceClientBuilder.standard() // Replace US_WEST_2 with the AWS Region you're using for // Amazon SES. .withRegion(Regions.US_WEST_2).build(); // Print the raw email content on the console PrintStream out = System.out; message.writeTo(out);

// Send the email. ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); message.writeTo(outputStream); RawMessage rawMessage = new RawMessage(ByteBuffer.wrap(outputStream.toByteArray()));

SendRawEmailRequest rawEmailRequest = new SendRawEmailRequest(rawMessage) .withConfigurationSetName(CONFIGURATION_SET); client.sendRawEmail(rawEmailRequest); System.out.println("Email sent!"); // Display an error if something goes wrong. } catch (Exception ex) {

433

Page 441: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail bruto usando os SDKs da AWS

System.out.println("Email Failed"); System.err.println("Error message: " + ex.getMessage()); ex.printStackTrace(); } }}

PHP

O código de exemplo a seguir mostra como usar o pacote PHPMailer e o AWS SDK para PHP paracompor e enviar um e-mail bruto contendo uma parte em HTML, uma parte de texto e um anexo.

Este exemplo de código pressupõe que você instalou o pacote PHPMailer usando o Composer.Ele também pressupõe que você instalou o AWS SDK para PHP e criou um arquivo de credenciaiscompartilhadas. Para obter mais informações sobre a criação de um arquivo de credenciaiscompartilhadas, consulte Criar um arquivo de credenciais compartilhadas (p. 30).

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e achave de acesso secreta definindo duas variáveis de ambiente (AWS_ACCESS_KEY_ID eAWS_SECRET_ACCESS_KEY, respectivamente). Este exemplo não funciona, a menos quevocê especifique as credenciais usando um dos seguintes métodos.

<?phprequire 'vendor/autoload.php';use PHPMailer\PHPMailer\PHPMailer;use Aws\Ses\SesClient;use Aws\Ses\Exception\SesException;

// Replace [email protected] with your "From" address. // This address must be verified with Amazon SES.$sender = '[email protected]'; $sendername = 'Sender Name';

// Replace [email protected] with a "To" address. If your account // is still in the sandbox, this address must be verified.$recipient = '[email protected]';

// Specify a configuration set.$configset = 'ConfigSet';

// Replace us-west-2 with the AWS Region you're using for Amazon SES.$region = 'us-west-2';

$subject = 'List of customers to contact';

$htmlbody = <<<EOD<html><head></head><body><h1>Hello!</h1><p>Please see the attached file for a list of customers to contact.</p></body></html>EOD;

$textbody = <<<EODHello,Please see the attached file for a list of customers to contact.EOD;

434

Page 442: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail bruto usando os SDKs da AWS

// The full path to the file that will be attached to the email. $att = 'path/to/customers-to-contact.xlsx';

// Create an SesClient.$client = SesClient::factory(array( 'version'=> 'latest', 'region' => $region));

// Create a new PHPMailer object.$mail = new PHPMailer;

// Add components to the email.$mail->setFrom($sender, $sendername);$mail->addAddress($recipient);$mail->Subject = $subject;$mail->Body = $htmlbody;$mail->AltBody = $textbody;$mail->addAttachment($att);$mail->addCustomHeader('X-SES-CONFIGURATION-SET', $configset);

// Attempt to assemble the above components into a MIME message.if (!$mail->preSend()) { echo $mail->ErrorInfo;} else { // Create a new variable that contains the MIME message. $message = $mail->getSentMIMEMessage();}

// Try to send the message.try { $result = $client->sendRawEmail([ 'RawMessage' => [ 'Data' => $message ] ]); // If the message was sent, show the message ID. $messageId = $result->get('MessageId'); echo("Email sent! Message ID: $messageId"."\n");} catch (SesException $error) { // If the message was not sent, show a message explaining what went wrong. echo("The email was not sent. Error message: " .$error->getAwsErrorMessage()."\n");}

?>

Python

O código de exemplo a seguir mostra como usar o pacote de e-mails de Python e o AWS SDK forPython (Boto) para compor e enviar um e-mail bruto contendo uma parte em HTML, uma parte detexto e um anexo.

Este exemplo de código pressupõe que você tenha instalado o AWS SDK for Python (Boto)e criado um arquivo de credenciais compartilhadas. Para obter mais informações sobre acriação de um arquivo de credenciais compartilhadas, consulte Criar um arquivo de credenciaiscompartilhadas (p. 30).

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e a

435

Page 443: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail bruto usando os SDKs da AWS

chave de acesso secreta definindo duas variáveis de ambiente (AWS_ACCESS_KEY_ID eAWS_SECRET_ACCESS_KEY, respectivamente). Este exemplo não funciona, a menos quevocê especifique as credenciais usando um dos seguintes métodos.

import osimport boto3from botocore.exceptions import ClientErrorfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextfrom email.mime.application import MIMEApplication

# Replace [email protected] with your "From" address.# This address must be verified with Amazon SES.SENDER = "Sender Name <[email protected]>"

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.RECIPIENT = "[email protected]"

# Specify a configuration set. If you do not want to use a configuration# set, comment the following variable, and the # ConfigurationSetName=CONFIGURATION_SET argument below.CONFIGURATION_SET = "ConfigSet"

# If necessary, replace us-west-2 with the AWS Region you're using for Amazon SES.AWS_REGION = "us-west-2"

# The subject line for the email.SUBJECT = "Customer service contact info"

# The full path to the file that will be attached to the email.ATTACHMENT = "path/to/customers-to-contact.xlsx"

# The email body for recipients with non-HTML email clients.BODY_TEXT = "Hello,\r\nPlease see the attached file for a list of customers to contact."

# The HTML body of the email.BODY_HTML = """\<html><head></head><body><h1>Hello!</h1><p>Please see the attached file for a list of customers to contact.</p></body></html>"""

# The character encoding for the email.CHARSET = "utf-8"

# Create a new SES resource and specify a region.client = boto3.client('ses',region_name=AWS_REGION)

# Create a multipart/mixed parent container.msg = MIMEMultipart('mixed')# Add subject, from and to lines.msg['Subject'] = SUBJECT msg['From'] = SENDER msg['To'] = RECIPIENT

# Create a multipart/alternative child container.msg_body = MIMEMultipart('alternative')

# Encode the text and HTML content and set the character encoding. This step is

436

Page 444: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail bruto usando os SDKs da AWS

# necessary if you're sending a message with characters outside the ASCII range.textpart = MIMEText(BODY_TEXT.encode(CHARSET), 'plain', CHARSET)htmlpart = MIMEText(BODY_HTML.encode(CHARSET), 'html', CHARSET)

# Add the text and HTML parts to the child container.msg_body.attach(textpart)msg_body.attach(htmlpart)

# Define the attachment part and encode it using MIMEApplication.att = MIMEApplication(open(ATTACHMENT, 'rb').read())

# Add a header to tell the email client to treat this part as an attachment,# and to give the attachment a name.att.add_header('Content-Disposition','attachment',filename=os.path.basename(ATTACHMENT))

# Attach the multipart/alternative child container to the multipart/mixed# parent container.msg.attach(msg_body)

# Add the attachment to the parent container.msg.attach(att)#print(msg)try: #Provide the contents of the email. response = client.send_raw_email( Source=SENDER, Destinations=[ RECIPIENT ], RawMessage={ 'Data':msg.as_string(), }, ConfigurationSetName=CONFIGURATION_SET )# Display an error if something goes wrong. except ClientError as e: print(e.response['Error']['Message'])else: print("Email sent! Message ID:"), print(response['MessageId'])

Ruby

O código de exemplo a seguir mostra como usar o gem de MIME do Ruby e o AWS SDK para Rubypara compor e enviar um e-mail bruto contendo uma parte em HTML, uma parte de texto e um anexo.

Este exemplo de código pressupõe que você instalou o AWS SDK para Ruby e o gem deMIME, e criou um arquivo de credenciais compartilhadas. Para obter mais informações sobre acriação de um arquivo de credenciais compartilhadas, consulte Criar um arquivo de credenciaiscompartilhadas (p. 30).

Important

Você usa um arquivo de credenciais compartilhadas para passar seu ID da chave de acessoda AWS e a chave de acesso secreta. Como uma alternativa para usar um arquivo decredenciais compartilhadas, você pode especificar o ID da chave de acesso da AWS e achave de acesso secreta definindo duas variáveis de ambiente (AWS_ACCESS_KEY_ID eAWS_SECRET_ACCESS_KEY, respectivamente). Este exemplo não funciona, a menos quevocê especifique as credenciais usando um dos seguintes métodos.

require 'base64' #standard libraryrequire 'aws-sdk' #gem install aws-sdk

437

Page 445: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorEnvio de e-mail bruto usando os SDKs da AWS

require 'mime' #gem install mime

# Replace [email protected] with your "From" address.# This address must be verified with Amazon SES.sender = "[email protected]"sendername = "Sender Name"

# Replace [email protected] with a "To" address. If your account # is still in the sandbox, this address must be verified.recipient = "[email protected]"

# Specify a configuration set. configsetname = "ConfigSet" # Replace us-west-2 with the AWS Region you're using for Amazon SES.awsregion = "us-west-2"

# The subject line for the email.subject = "Customer service contact info"

# The full path to the file that will be attached to the email.attachment = "path/to/customers-to-contact.xlsx"

# The email body for recipients with non-HTML email clients. textbody = """Hello,Please see the attached file for a list of customers to contact."""

# The HTML body of the email.htmlbody = """<html><head></head><body><h1>Hello!</h1><p>Please see the attached file for a list of customers to contact.</p></body></html>"""

# Create a new MIME text object that contains the base64-encoded content of the# file that will be attached to the message.file = MIME::Application.new(Base64::encode64(open(attachment,"rb").read))

# Specify that the file is a base64-encoded attachment to ensure that the # receiving client handles it correctly. file.transfer_encoding = 'base64'file.disposition = 'attachment'

# Create a MIME Multipart Mixed object. This object will contain the body of the# email and the attachment.msg_mixed = MIME::Multipart::Mixed.new

# Create a MIME Multipart Alternative object. This object will contain both the# HTML and plain text versions of the email.msg_body = MIME::Multipart::Alternative.new

# Add the plain text and HTML content to the Multipart Alternative part.msg_body.add(MIME::Text.new(textbody,'plain'))msg_body.add(MIME::Text.new(htmlbody,'html'))

# Add the Multipart Alternative part to the Multipart Mixed part.msg_mixed.add(msg_body)

# Add the attachment to the Multipart Mixed part.msg_mixed.attach(file, 'filename' => attachment)

438

Page 446: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar vários endereços de e-mail

# Create a new Mail object that contains the entire Multipart Mixed object. # This object also contains the message headers.msg = MIME::Mail.new(msg_mixed)msg.to = { recipient => nil }msg.from = { sender => sendername }msg.subject = subjectmsg.headers.set('X-SES-CONFIGURATION-SET',configsetname)

# Create a new SES resource and specify a regionses = Aws::SES::Client.new(region: awsregion)

# Try to send the email.begin

# Provide the contents of the email. resp = ses.send_raw_email({ raw_message: { data: msg.to_s } }) # If the message was sent, show the message ID. puts "Email sent! Message ID: " + resp[0].to_s

# If the message was not sent, show a message explaining what went wrong.rescue Aws::SES::Errors::ServiceError => error puts "Email not sent. Error message: #{error}"

end

Verificar vários endereços de e-mailSe você estiver migrando para o Amazon SES de outra solução de envio de e-mails, talvez já tenha umalonga lista de endereços de e-mail que deseja usar. O script Python neste exemplo aceita uma lista deendereços de e-mail formatados em JSON como entrada. O exemplo a seguir mostra a estrutura doarquivo de entrada:

[ { "email":"[email protected]" }, { "email":"[email protected]" }, { "email":"[email protected]" }]

O script a seguir lê o arquivo de entrada e tenta validar todos os endereços de e-mail contidos no arquivo.Este exemplo de código pressupõe que você tenha instalado o AWS SDK for Python (Boto) e criado umarquivo de credenciais compartilhadas. Para obter mais informações sobre a criação de um arquivo decredenciais compartilhadas, consulte Criar um arquivo de credenciais compartilhadas (p. 30).

import json #Python standard libraryimport boto3 #sudo pip install boto3from botocore.exceptions import ClientError

# The full path to the file that contains the identities to be verified. # The input file must be JSON-formatted. See

439

Page 447: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorVerificar vários endereços de e-mail

# https://docs.aws.amazon.com/ses/latest/DeveloperGuide/sample-code-bulk-verify.html # for a sample input file.FILE_INPUT = '/path/to/identities.json'

# If necessary, replace us-west-2 with the AWS Region you're using for Amazon SES.AWS_REGION = "us-west-2"

# Create a new SES resource specify a region.client = boto3.client('ses',region_name=AWS_REGION)

# Read the file that contains the identities to be verified.with open(FILE_INPUT) as data_file: data = json.load(data_file)

# Iterate through the array from the input file. Each time an object named# 'email' is found, run the verify_email_identity operation against the value # of that object.for i in data: try: response = client.verify_email_identity( EmailAddress=i['email'] ) # Display an error if something goes wrong. except ClientError as e: print(e.response['Error']['Message']) # Otherwise, show the request ID of the verification message. else: print('Verification email sent to ' + i['email'] + '. Request ID: ' + response['ResponseMetadata']['RequestId'])

440

Page 448: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRegiões e endpoints do Amazon SES

Regiões e o Amazon SESO Amazon SES está disponível em várias regiões da AWS ao redor do mundo. Em cada região, a AWSmantém várias zonas de disponibilidade. Essas zonas de disponibilidade são fisicamente isoladas umasdas outras, mas são unidas por conexões de rede privadas, de baixa latência, de alta taxa de transferênciae altamente redundantes. Essas zonas de disponibilidade permitem que forneçamos níveis muito altos dedisponibilidade e redundância ao mesmo tempo que minimizamos a latência.

Para obter uma lista de todas as regiões onde o Amazon SES está disponível no momento, consulteRegiões e endpoints da AWS no Referência geral do Amazon Web Services. Para saber mais sobrequantas zonas de disponibilidade estão disponíveis em cada região, consulte Infraestrutura global da AWS.

Esta seção contém informações que você precisa saber se planeja usar o Amazon SES em várias regiõesda AWS. Ele discute os seguintes assuntos:

• Regiões e endpoints do Amazon SES (p. 441)• Sandbox e aumento de limite de envio (p. 442)• Verificação de endereços de e-mail e domínios (p. 442)• Easy DKIM (p. 442)• Lista de supressão (p. 442)• Notificações de feedback (p. 442)• Credenciais de SMTP (p. 443)• Autorização de envio (p. 443)• Domínios MAIL FROM personalizados (p. 443)• Recebimento de e-mails (p. 444)

Para obter informações gerais sobre as regiões da AWS, consulte Regiões e endpoints da AWS naReferência geral da AWS.

Regiões e endpoints do Amazon SESAo usar o Amazon Simple Email Service (Amazon SES) para enviar e-mail, você se conecta a um URL quefornece um endpoint para a interface SMTP ou a API do Amazon SES. A AWS General Reference contémuma lista completa de endpoints usados para enviar e receber e-mail por meio do Amazon SES. Para obtermais informações, consulte Amazon Simple Email Service (Amazon SES) no AWS General Reference.

Quando você enviar e-mails por meio do Amazon SES, pode usar os URLs na coluna do Endpoint da API(HTTPS) para fazer solicitações HTTPS para a API do Amazon SES. Você também pode usar os URLs nacoluna do Endpoint SMTP para enviar e-mail usando a interface SMTP.

Se você tiver configurado o Amazon SES para receber e-mails enviados para seu domínio, pode usarURLs do endpoint SMTP de entrada (ou seja, os URLs que começam com "inbound-smtp.") ao configuraros registros do mail exchanger (MX) nas configurações de DNS do seu domínio (p. 207).

Note

Os URLs SMTP de entrada não são endereços de servidor IMAP. Em outras palavras, você nãopode usá-los para receber e-mail usando um aplicativo como o Outlook. Para um serviço quefornece um servidor IMAP para recebimento de e-mails, consulte Amazon WorkMail.

441

Page 449: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSandbox e aumento de limite de envio

Sandbox e aumento de limite de envioO status da sandbox para a sua conta pode diferir entre as regiões da AWS. Em outras palavras, se a suaconta foi removida da sandbox na região Oeste dos EUA (Oregon), ela ainda pode estar na sandbox naregião Leste dos EUA (Norte da Virgínia), a menos que você também a tenha removido da sandbox nessaregião.

Os limites de envio também podem ser diferentes de acordo com a região da AWS. Por exemplo, se suaconta é capaz de enviar 10 mensagens por segundo na região Europa (Irlanda), você pode enviar mais oumenos mensagens em outras regiões.

Quando você enviar uma solicitação para remover sua conta da sandbox (p. 73) ou quando enviar umasolicitação de aumento de cotas de envio da sua conta (p. 151), escolha todas as regiões da AWS as quaissua solicitação se aplica. Você pode enviar várias solicitações em uma única solicitação para o SupportCenter.

Verificação de endereços de e-mail e domíniosAntes de poder enviar e-mails usando o Amazon SES, você deve verificar que possui o endereço de e-mail ou domínio do qual planeja enviar. O status de verificação de endereços de e-mail e domínios tambémdifere entre as regiões da AWS. Por exemplo, se você verificar um domínio na região Oeste dos EUA(Oregon), não pode usar esse domínio para enviar e-mail na região Leste dos EUA (Norte da Virgínia) atéque conclua o processo de verificação novamente para essa região. Para obter mais informações sobreverificar endereços de e-mail e domínios, consulte Verificar identidades no Amazon SES (p. 47).

Easy DKIMVocê deve realizar o processo de configuração Easy DKIM para cada região na qual deseja usar o EasyDKIM. Ou seja, em cada região, você precisa usar o console do Amazon SES ou a API do Amazon SESpara gerar registros TXT. Em seguida, é necessário adicionar todos os registros TXT à configuração deDNS do seu domínio. Para obter mais informações sobre como configurar o Easy DKIM, consulte EasyDKIM no Amazon SES (p. 134).

Lista de supressãoEmbora cada região tenha uma lista de supressão separada, se você remover um endereço da listade supressão de uma região, o endereço será removido da lista de supressão de todas as regiões.Você removerá endereços da lista de supressão usando o console do Amazon SES. Para obter maisinformações sobre como remover endereços da lista de supressão, consulte Usar a lista de supressãoglobal do Amazon SES (p. 192).

Notificações de feedbackExistem dois pontos importantes a serem observados sobre como configurar notificações de feedback emvárias regiões:

• Configurações de identidade verificadas, como se você recebe feedback por e-mail ou por meio doAmazon Simple Notification Service (Amazon SNS), aplicam-se apenas à região em que você as define.Por exemplo, se você verificar [email protected] nas regiões Oeste dos EUA (Oregon) e Leste dosEUA (Norte da Virgínia) e quiser receber e-mails devolvidos via notificações do Amazon SNS, deverá

442

Page 450: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCredenciais de SMTP

usar a API do Amazon SES ou o console do Amazon SES para configurar notificações de feedback doAmazon SNS para [email protected] em ambas as regiões.

• Os tópicos do Amazon SNS que você usa para o encaminhamento de feedback devem estar dentro damesma região em que você está usando o Amazon SES.

Credenciais de SMTPAs credenciais que você usa para enviar e-mails por meio da interface SMTP do Amazon SES sãoexclusivas de cada região da AWS. Se você usar a interface SMTP do Amazon SES para enviar e-mailsem mais de uma região, precisa gerar um conjunto de credenciais SMTP (p. 81) para cada região.

Note

Se você criou credenciais SMTP antes de 10 de janeiro de 2019, suas credenciais SMTP podemfuncionar em todas as regiões da AWS em que o Amazon SES esteja disponível. No entanto,as credenciais criadas após essa data serão criadas usando o AWS Signature versão 4, e sãoexclusivas para cada região.Para mais segurança, recomendamos que você exclua as credenciais que foram criadas antesdesta data e substitua-os com credenciais mais recentes e específicas para a região. Você podeexcluir as credenciais mais antigas usando o console do IAM.

Domínios MAIL FROM personalizadosVocê pode usar o mesmo domínio MAIL FROM personalizado para identidades verificadas em diferentesregiões da AWS. Se é isso o que deseja fazer, você apenas precisará publicar um registro MX no servidorDNS do domínio MAIL FROM. Nesta situação, notificações de devolução são enviadas para o endpointde feedback do Amazon SES na região especificada no registro MX primeiro. O próximo Amazon SESredireciona as devoluções para a identidade verificada na região que enviou o e-mail.

Use as configurações de registros MX fornecidas pelo Amazon SES durante o processo de configuraçãopersonalizada de MAIL FROM para uma identidade em uma das regiões. O processo de configuraçãopersonalizado de MAIL FROM está descrito em ??? (p. 67). Para referência, você pode encontrar osendpoints de feedback para todas as regiões na tabela a seguir.

Nome da região Endpoints de feedback para configurações deenvio personalizadas MAIL FROM

Leste dos EUA (Norte da Virgínia) feedback-smtp.us-east-1.amazonses.com

Oeste dos EUA (Oregon) feedback-smtp.us-west-2.amazonses.com

Ásia Pacífico (Mumbai) feedback-smtp.ap-south-1.amazonses.com

Ásia-Pacífico (Sydney) feedback-smtp.ap-southeast-2.amazonses.com

Europa (Frankfurt) feedback-smtp.eu-central-1.amazonses.com

Europa (Irlanda) feedback-smtp.eu-west-1.amazonses.com

Autorização de envioOs remetentes delegados apenas podem enviar e-mails da região da AWS em que a identidade doproprietário da identidade está verificada. A política de autorização de envio que dá permissão ao

443

Page 451: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRecebimento de e-mails

remetente delegado deve ser anexada à identidade nessa região. Para obter mais informações sobre aautorização de envio, consulte Uso de autorização de envio com o Amazon SES (p. 153).

Recebimento de e-mailsCom exceção de buckets do Amazon S3, todos os recursos da AWS que você usa para receber e-mailcom o Amazon SES devem estar na mesma região da AWS que o endpoint do Amazon SES. Por exemplo,se você usar o Amazon SES na região Oeste dos EUA (Oregon), todos os tópicos do Amazon SNS, aschaves do AWS KMS e as funções do Lambda que você usa também deverão estar na região Oeste dosEUA (Oregon). Da mesma forma, para receber e-mails com o Amazon SES em uma região, você devecriar um conjunto de regras de recebimento ativas dentro dessa região.

A tabela a seguir lista os endpoints de recebimento de e-mails para todas as regiões da AWS onde oAmazon SES oferece suporte ao recebimento de e-mails:

Nome da região Endpoints de recebimento de e-mails

Leste dos EUA (Norte da Virgínia) inbound-smtp.us-east-1.amazonaws.com

Oeste dos EUA (Oregon) inbound-smtp.us-west-2.amazonaws.com

Europa (Irlanda) inbound-smtp.eu-west-1.amazonaws.com

444

Page 452: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCotas de envio de e-mail

Cotas de serviço no Amazon SESAs seções a seguir listam e descrevem as cotas que se aplicam aos recursos e às operações do AmazonSES. Algumas cotas podem ser aumentadas, enquanto outras não podem. Para determinar se é possívelsolicitar o aumento de uma cota, consulte a coluna Eligible for Increase (Qualificada para aumento) emcada seção.

Cotas de envio de e-mailAs seguintes cotas se aplicam ao envio de e-mail pelo Amazon SES.

Cotas de envioNote

As cotas são baseadas no número de destinatários e não no número de mensagens.

Recurso Cota padrão Qualificado para aumento?

Número de e-mails que podemser enviados em um período de24 horas

Se a conta estiver na sandbox,você pode enviar até 200 e-mailsem um período de 24 horas.

Se a conta não estiver nasandbox, esse número variaráde acordo com o caso de usoespecífico.

Note

Esse valor chamava-seanteriormente “cota deenvio”.

Sim (p. 150)

Número de e-mails que podemser enviados por segundo (taxade envio)

Se a conta estiver na sandbox,você pode enviar 1 e-mail porsegundo.

Se a conta não estiver nasandbox, esta taxa variará deacordo com o caso de usoespecífico.

Sim (p. 150)

Cotas de mensagens

Recurso Cota padrão Qualificado para aumento?

Tamanho máximo da mensagem(incluindo anexos)

10 MB por mensagem (após acodificação base64).

Não

445

Page 453: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCotas de remetentes e destinatários

Cotas de remetentes e destinatários

Recurso Cota padrão Qualificado para aumento?

Número máximo de destinatáriospor mensagem

50 destinatários por mensagem.

Note

Um destinatário équalquer endereço "To","CC" ou "BCC".

Não

Número máximo de identidadesque podem ser verificadas

10.000 identidades por região daAWS.

Note

Uma identidade éum domínio ou umendereço de e-mail quevocê usa para enviar e-mails pelo Amazon SES.

Não

Cotas relacionadas à publicação de eventos

Recurso Cota padrão Qualificado para aumento?

Número máximo de conjuntos deconfiguração

10.000 Não

Tamanho máximo de nome doconjunto de configurações

Os nomes dos conjuntos deconfigurações agora podemconter até 64 caracteresalfanuméricos. Eles tambémpodem conter hífens (-) esublinhados (_). Os nomesnão podem conter espaços,caracteres acentuados ou outroscaracteres especiais.

Não

Número máximo de destinosde eventos por conjunto deconfigurações

10 Não

Número máximo de dimensõespor destino de eventos doCloudWatch

10 Não

446

Page 454: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCotas de modelo de e-mail

Cotas de modelo de e-mail

Recurso Cota padrão Qualificado para aumento?

Número máximo de modelos dee-mail em cada região da AWS

10.000 Não

Tamanho máximo do modelo 500 KB Não

Número máximo de valores desubstituição em cada modelo

Ilimitado N/D

Número máximo de destinatáriospara cada e-mail com base emum modelo

50 destinos. Um destino équalquer endereço de e-mailnas linhas "To" (Para), "CC" ou"BCC" (CCO).

Note

O número de destinoscom os quais você podeentrar em contato emuma única chamada àAPI pode ser limitadopela taxa máxima deenvio de sua conta.

Não

Cotas relacionadas ao recebimento de e-mailA tabela a seguir lista as cotas associadas ao recebimento de e-mail pelo Amazon SES.

Recurso Cota padrão Qualificado para aumento?

Número máximo de regraspor conjunto de regras derecebimento

200 Não

Número máximo de ações porregra de recebimento

10 Não

Número máximo de destinatáriospor regra de recebimento

100 Não

Número máximo de conjuntos deregras de recebimento por contada AWS

40 Não

Número máximo de filtros deendereço IP por conta da AWS

100 Não

Tamanho máximo de e-mails(incluindo cabeçalhos) quepodem ser armazenados em umbucket do Amazon S3

30 MB Não

447

Page 455: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCotas gerais

Recurso Cota padrão Qualificado para aumento?

Tamanho máximo de e-mails(incluindo cabeçalhos) quepodem ser publicados usandouma notificação do Amazon SNS

150 KB Não

Cotas geraisA tabela a seguir lista as cotas que se aplicam ao envio e ao recebimento de e-mails pelo Amazon SES.

Cotas da API do Amazon SES

Recurso Cota padrão Qualificado para aumento?

Taxa em que você pode chamarações de API do Amazon SES

Todas as ações (excetoSendEmail e SendRawEmail)são aceleradas por umasolicitação por segundo. Paraobter mais informações sobre aAPI do Amazon SES, consulteAmazon Simple Email ServiceAPI Reference.

Não

448

Page 456: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorMétricas de sucesso

Melhores práticas para enviar e-mailsusando o Amazon SES

A forma como você gerencia comunicações por e-mail com seus clientes é conhecida como seu programade e-mail. Existem vários fatores que podem resultar no sucesso ou fracasso do seu programa de e-mail.Esses fatores podem parecer confusos ou misteriosos no início. No entanto, ao entender como os e-mailssão entregues e seguindo certas práticas recomendadas, você pode aumentar as chances de os seus e-mails chegarem com sucesso às caixas de entrada dos seus clientes.

Tópicos• Métricas de êxito para programas de e-mail (p. 449)• Dicas e melhores práticas (p. 452)

Métricas de êxito para programas de e-mailExistem várias métricas que podem ajudar a medir o êxito do seu programa de e-mail.

Esta seção fornece informações sobre as seguintes métricas:• Devoluções (p. 449)• Reclamações (p. 450)• Qualidade da mensagem (p. 451)

DevoluçõesUma devolução ocorre quando um e-mail não pode ser entregue ao destinatário pretendido. Existemdois tipos de devoluções: devoluções definitivas e devoluções flexíveis. Uma devolução definitiva ocorrequando o e-mail não pode ser entregue devido a um problema persistente, como quando um endereço dee-mail não existe. Uma devolução flexível ocorre quando um problema temporário impede a entrega de ume-mail. Devoluções flexíveis podem ocorrer quando a caixa de entrada de um destinatário está cheia ouquando o servidor de recebimento está temporariamente indisponível. O Amazon SES lida com devoluçõesflexíveis tentando uma nova entrega dos e-mails devolvidos por um determinado período.

É essencial que você monitore o número de devoluções definitivas no seu programa de e-mail e remova osendereços de e-mail de devoluções definitivas das suas listas de destinatários. Quando os receptores dee-mail detectam uma alta taxa de devoluções definitivas, eles assumem que você não conhece muito bemos seus destinatários. Como resultado, uma alta taxa de devoluções definitivas pode afetar negativamentea capacidade de entrega das suas mensagens de e-mail.

As seguintes diretrizes podem ajudar a evitar devoluções e a melhorar a reputação do remetente:

• Tente manter sua taxa de devoluções definitivas abaixo de 5%. Quanto menos devoluções definitivasno seu programa de e-mail, maiores serão as chances de que os ISPs considerarão suas mensagenslegítimas e importantes. Essa taxa deve ser considerada uma meta razoável e alcançável, mas não éuma regra universal em todos os ISPs.

449

Page 457: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorReclamações

• Nunca alugue ou compre listas de e-mails. Essas listas podem conter um grande número deendereços inválidos, o que pode fazer com que suas taxas de devoluções definitivas aumentemdrasticamente. Além disso, essas listas podem conter armadilhas de spam — ou seja, endereços de e-mail especificamente usados para capturar remetentes ilegítimos. Se as suas mensagens caírem emuma armadilha de spam, suas taxas de entrega e reputação de remetente poderão ser irrevogavelmenteprejudicadas.

• Mantenha sua lista atualizada. Se faz tempo que você não envia e-mails aos seus destinatários, tentevalidar os status dos seus clientes por outros meios (como atividades de login no site ou histórico decompras).

• Se você não possui um método para verificar os status dos seus clientes, considere enviar um win-back.Um win-back típico menciona que faz tempo que você não recebe notícias do cliente e o incentiva aconfirmar se ele ainda deseja receber seus e-mails. Depois de enviar um e-mail win-back, apague dassuas listas todos os destinatários que não responderem.

Quando você recebe devoluções, é essencial responder adequadamente, observando as seguintes regras:

• Se um endereço de e-mail for devolvido definitivamente, remova-o imediatamente das suas listas. Nãotente reenviar mensagens para endereços com devoluções definitivas. Devoluções definitivas repetidasse acumulam e acabam prejudicando sua reputação com o ISP do destinatário.

• Verifique se o endereço usado para receber notificações de devolução é capaz de receber e-mail. Paraobter mais informações sobre a configuração de notificações de devolução e reclamação, consulteMonitoramento com o uso de notificações do Amazon SES (p. 258).

• Se o seu e-mail de entrada for proveniente de um ISP, e não dos seus próprios servidores internos,um afluxo de notificações de devolução poderão cair na sua pasta de spam ou serem descartadascompletamente. Idealmente, você não deve usar um endereço de e-mail hospedado para receberdevoluções. No entanto, se isso for necessário, verifique a pasta de spam com frequência e não marqueas mensagens de devolução como spam. No Amazon SES, você pode especificar o endereço para oqual as notificações de devolução são enviadas.

• Normalmente, a devolução fornece o endereço da caixa postal que está recusando a entrega. Noentanto, se você precisar de mais dados granulares para mapear um endereço de destinatário para umacampanha de e-mail específica, inclua um cabeçalho X com um valor que você pode rastrear de voltaao seu sistema de rastreamento interno. Para obter mais informações, consulte Apêndice: Campos docabeçalho (p. 498).

ReclamaçõesUma reclamação ocorre quando um destinatário de e-mail clica no botão "Marcar como spam" (ouequivalente) no seu cliente de e-mail baseado na Web. Se você acumular um grande número dessasreclamações, o ISP assumirá que você está enviando spam. Isso tem um impacto negativo na sua taxa decapacidade de entrega e na reputação do remetente. Alguns ISPs, mas não todos, irão notificá-lo quandouma reclamação for relatada. Isso é conhecido como um ciclo de comentários. O Amazon SES encaminhaautomaticamente as reclamações de ISPs que oferecem ciclos de comentários para você.

As seguintes diretrizes podem ajudá-lo a evitar reclamações e a melhorar a reputação do remetente:

• Tente manter sua taxa de reclamações abaixo de 0,1%. Quantos menos reclamações no seu programade e-mail, maiores serão as chances de que os ISPs considerarão suas mensagens legítimas eimportantes. Essa taxa deve ser considerada uma meta razoável e alcançável, mas não é uma regrauniversal em todos os ISPs.

• Se um cliente se queixar de um e-mail de marketing, você deve imediatamente parar de enviar e-mailsde marketing para ele. No entanto, se o seu programa de e-mail também incluir outros tipos de e-mails(como e-mails de notificação ou transacionais), pode ser aceitável continuar a enviar esses tipos demensagens ao destinatário que emitiu a reclamação.

450

Page 458: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorQualidade da mensagem

• Tal como acontece com devoluções definitivas, no caso de uma lista para a qual você não envia e-mails faz tempo, certifique-se de que seus destinatários compreendam por que estão recebendo suasmensagens. Recomendamos que você envie uma mensagem de boas-vindas lembrando-lhes de quemvocê é e por que você está entrando em contato.

Quando você recebe reclamações, é essencial responder adequadamente, observando as seguintesregras:

• Verifique se o endereço usado para receber notificações de reclamação é capaz de receber e-mail.Para obter mais informações sobre a configuração de notificações de devolução e reclamação, consulteMonitoramento com o uso de notificações do Amazon SES (p. 258).

• Certifique-se de que suas notificações de reclamação não estão sendo marcadas como spam pelo seuISP ou sistema de e-mail.

• Em geral, notificações de reclamação incluem o corpo do e-mail, diferentemente das notificações dedevolução que normalmente incluem apenas os cabeçalhos de e-mail. No entanto, em notificações dereclamação, o endereço de e-mail do indivíduo que enviou a reclamação normalmente é removido. Usecabeçalhos X personalizados ou identificadores especiais integrados no corpo do e-mail para identificaro endereço de e-mail que enviou a reclamação. Essa técnica facilita a identificação de endereços quefizeram reclamações para que você possa removê-los das suas listas de destinatários.

Qualidade da mensagemOs receptores de e-mail usam filtros de conteúdo para detectar determinados atributos nas suasmensagens e identificar se elas são legítimas. Esses filtros de conteúdo analisam automaticamente oconteúdo das suas mensagens para identificar características comuns de mensagens indesejadas ou mal-intencionadas. O Amazon SES usa tecnologias de filtragem de conteúdo para ajudar a detectar e bloquearmensagens que contenham malware antes que elas sejam enviadas.

Se os filtros de conteúdo de um destinatário de e-mail determinarem que a sua mensagem contém ascaracterísticas de spam ou e-mail mal-intencionado, ela será provavelmente sinalizada e desviada dascaixas de entrada dos destinatários.

Lembre-se do seguinte ao elaborar seus e-mails:

• Filtros de conteúdo modernos são inteligentes e passam por adaptações e modificações contínuas. Elesnão dependem de um conjunto de regras predefinidas. Serviços de terceiros, como o ReturnPath ou oLitmus, podem ajudar a identificar o conteúdo no seu e-mail que pode desencadear filtros de conteúdo.

• Se o seu e-mail contiver links, verifique se as URLs desses links estão em listas negras, como asencontradas em URIBL.com e SURBL.org.

• Evite usar encurtamentos de links. Remetentes mal-intencionados podem usar encurtamentos de linkspara ocultar o destino real de um link. Quando os ISPs observam que serviços de encurtamento de links— mesmo os mais respeitáveis — estão sendo usados para fins nefastos, eles podem colocar essesserviços em listas negras. Se o seu e-mail contiver um link para um serviço de encurtamento de linksincluído em uma lista negra, ele não chegará nas caixas de entrada dos seus clientes, e o sucesso dasua campanha de e-mail será prejudicado.

• Teste todos os links no seu e-mail para garantir que eles apontem para a página pretendida.• Certifique-se de que o seu site inclua documentos de Política de privacidade e Termos de uso e que

esses documentos estejam atualizados. É uma boa prática vincular esses documentos a cada e-mailenviado. Fornecer links para esses documentos demonstra que você não tem nada a esconder dos seusclientes, o que pode ajudá-lo a criar uma relação de confiança.

• Se você planeja enviar conteúdo em alta frequência (como mensagens de "ofertas diárias"), assegure-sede que o conteúdo do seu e-mail seja diferente com cada implantação. Ao enviar mensagens com altafrequência, você deve garantir que elas sejam oportunas e relevantes, e não repetitivas e irritantes.

451

Page 459: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorDicas e melhores práticas

Dicas e melhores práticasMesmo tendo os melhores interesses dos seus clientes em mente, você ainda pode encontrar situaçõesque afetam a capacidade de entrega das suas mensagens. As seções a seguir contêm recomendaçõespara ajudar a garantir que as suas comunicações por e-mail atinjam seu público-alvo.

Recomendações gerais• Ponha-se no lugar do seu cliente. Pergunte a si mesmo se a mensagem que você está enviando é algo

que você gostaria de receber na sua própria caixa de entrada. Se a resposta for menos do que umentusiasmado "sim"!, então você provavelmente não deve enviá-la.

• Algumas indústrias têm reputação pela má qualidade ou até mesmo por práticas mal-intencionadasde envio de e-mail. Se você está envolvido nas seguintes indústrias, deve monitorar de perto a suareputação e resolver problemas imediatamente:• Hipoteca• Crédito• Produtos farmacêuticos e suplementos• Álcool e tabaco• Entretenimento para adultos• Casinos e jogos de azar• Programas de trabalho em casa

Considerações de domínio e endereços "From"• Pense cuidadosamente nos endereços dos quais você envia e-mails. O endereço "From" é uma das

primeiras informações que os seus destinatários visualizam e, portanto, pode deixar uma primeiraimpressão duradoura. Além disso, alguns ISPs associam sua reputação ao seu endereço "From".

• Considere o uso de subdomínios para diferentes tipos de comunicações. Por exemplo, suponha quevocê esteja enviando e-mails do domínio example.com e planeja enviar mensagens comerciais etransacionais. Em vez de enviar todas as suas mensagens de example.com, envie suas mensagensde marketing de um subdomínio, como marketing.example.com, e suas mensagens transacionais deoutro subdomínio, como orders.example.com. Subdomínios exclusivos desenvolvem suas própriasreputações. O uso de subdomínios reduz o risco de danos à sua reputação se, por exemplo, suascomunicações de marketing caírem em uma interceptação de spam ou acionarem um filtro de conteúdo.

• Se você planeja enviar uma grande quantidade de mensagens, não as envie de um endereçobaseado em ISP, como [email protected]. Se um ISP perceber um grande volume de mensagensprovenientes de [email protected], esse e-mail será tratado de forma diferente de um e-mailproveniente de um domínio de envio de e-mails que você possui.

• Trabalhe com seu registrador de domínio para garantir que as informações do WHOIS do seu domíniosejam precisas. A manutenção de um registro WHOIS honesto e atualizado demonstra que você valorizaa transparência e permite que os usuários identifiquem rapidamente se o seu domínio é ou não legítimo.

• Evite usar um endereço no-reply, como [email protected], como endereço "From" ou "Reply-to".O uso de um endereço de e-mail no-reply@ transmite aos seus destinatários uma mensagem clara:que você não está oferecendo a eles uma forma de contato e, portanto, não está interessado em seuscomentários.

452

Page 460: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorAutenticação

Autenticação• Autentique seu domínio com o SPF (p. 133) e o SenderID. Esses métodos de autenticação confirmam

aos destinatários de e-mail que cada e-mail que você envia é realmente do domínio do qual elereivindica ser.

• Assine seus e-mails de saída com o DKIM (p. 134). Essa etapa confirma aos destinatários que oconteúdo não foi alterado em trânsito entre o remetente e o receptor.

• Você pode testar suas configurações de autenticação tanto para o SPF quanto para o DKIM, enviandoum e-mail para um endereço de e-mail baseado em ISP que você possui, como uma conta pessoal doGmail ou Hotmail e, em seguida, visualizando os cabeçalhos da mensagem. Os cabeçalhos indicam seas suas tentativas de autenticar e assinar a mensagem foram bem-sucedidas.

Construir e manter suas listas• Implemente uma estratégia de inclusão dupla. Quando os usuários se cadastrarem para receber seus e-

mails, envie a eles uma mensagem com um link de confirmação e não comece a enviar e-mails até queeles confirmem seus endereços clicando nesse link. Uma estratégia de inclusão dupla ajuda a reduzir onúmero de devoluções definitivas resultantes de erros tipográficos.

• Ao coletar endereços de e-mail com um formulário baseado na Web, realize uma validação mínimadesses endereços após o envio. Por exemplo, assegure-se de que os endereços que você estácoletando estejam bem formados (ou seja, no formato [email protected]) e que façam referênciaa domínios com registros MX válidos.

• Tenha cuidado ao permitir que a entrada definida pelo usuário seja transmitida ao Amazon SES semverificação. Registros de fóruns e envios de formulários apresentam riscos únicos, pois o conteúdoé completamente gerado pelo usuário, e spammers podem preencher formulários com seu próprioconteúdo. Você é responsável por garantir que apenas e-mails com conteúdo de alta qualidade sãoenviados.

• É altamente improvável que um alias padrão (como postmaster@, abuse@, or noc@) cadastre-se intencionalmente para receber seus e-mails. Certifique-se de que você apenas esteja enviandomensagens para pessoas reais que realmente desejam recebê-las. Essa regra é especialmenteverdadeira para alias padrão, que são habitualmente reservados para watchdogs de e-mails. Esses aliaspodem ser adicionados de forma mal-intencionada à sua lista como uma forma de sabotagem, a fim deprejudicar sua reputação.

Conformidade• Esteja ciente das leis e dos regulamentos de marketing por e-mail e antispam nos países e regiões para

os quais você está enviando e-mails. Você é responsável por assegurar que os e-mails que envia estãoem conformidade com essas leis. Este guia não abrange essas leis e por isso é importante que vocêpesquise e se informe sobre elas. Para obter uma lista de leis, consulte a Legislação de spam por e-mailna Wikipédia.

• Sempre consulte seu advogado para obter orientação jurídica.

453

Page 461: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProblemas gerais

Solução de problemas do AmazonSES

Esta seção contém os seguintes tópicos que podem ajudá-lo quando você encontrar problemas:

• Para obter informações sobre problemas de verificação do domínio que você pode encontrar, consulteProblemas de verificação de domínio e endereço de e-mail do Amazon SES (p. 455).

• Para obter soluções para problemas relacionados ao DKIM, consulte Solução de problemas do DKIM noAmazon SES (p. 457).

• Para obter uma lista de problemas de entrega comuns que você pode encontrar ao enviar e-mail,juntamente com as ações corretivas que podem ser adotadas, consulte Problemas de entrega doAmazon SES (p. 458).

• Para obter uma descrição dos problemas que os destinatários podem ver ao receberem um e-mail enviado por meio do Amazon SES, consulte Problemas com e-mails recebidos do AmazonSES (p. 459).

• Para obter as soluções para problemas com notificações de devolução, reclamação e entrega, consulteProblemas com as notificações do Amazon SES (p. 460).

• Para obter uma lista de erros que podem ocorrer no envio de um e-mail com o Amazon SES, consulteErros de envio de e-mails do Amazon SES (p. 460).

• Para obter dicas sobre como aumentar a velocidade de envio de e-mail ao fazer várias chamadas para oAmazon SES usando a API ou a interface SMTP, consulte Como aumentar a taxa de transferência como Amazon SES (p. 462).

• Para soluções de problemas comuns que você pode encontrar ao usar o Amazon SES por meio dainterface Simple Mail Transfer Protocol (SMTP), além de uma lista de códigos de resposta SMTPretornados pelo Amazon SES, consulte Amazon SESProblemas de SMTP (p. 463).

• Para obter uma lista de códigos de erro que são retornados pela API Amazon SES Query (HTTPS),consulte Códigos de erro da API apresentados pelo Amazon SES. (p. 406).

• Para obter uma descrição dos problemas comuns relacionados ao processo de análise de envio e comolidar com eles, consulte ??? (p. 474).

• Para obter mais informações sobre como listas negras de IP afetam o envio com o Amazon SES,consulte Perguntas frequentes sobre listas negras de IP do Amazon SES (p. 490).

Se você estiver chamando a API do Amazon SES diretamente, consulte o Amazon Simple Email ServiceAPI Reference para ver os erros de HTTP que você pode receber.

Problemas gerais do Amazon SESAs informações desta página explicarão e ajudarão a diagnosticar problemas que você pode encontrar aousar o Amazon SES.

As alterações que eu faço não ficam imediatamentevisíveisComo um serviço que é acessado por meio de computadores em datacenters em todo o mundo, o AmazonSES usa um modelo de computação distribuído chamado consistência eventual. Qualquer alteração feita

454

Page 462: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProblemas de verificação

no Amazon SES (ou outros serviços da AWS) leva tempo para se tornar visível em todos os endpointspossíveis. O atraso resulta, em parte, do tempo necessário para enviar os dados de um servidor para outroe de uma região para outra em todo o mundo. Na maioria dos casos, esse atraso não será maior do quealguns minutos.

Algumas áreas onde é possível que haja um atraso incluem:

• Criação e modificação de conjuntos de configurações – ao criar ou modificar um conjunto deconfigurações (por exemplo, se você associar um grupo de IPs dedicado a um conjunto deconfigurações existente (p. 248)), pode haver um breve atraso entre o momento em que você cria oumodifica o conjunto e o momento em que essas alterações se tornam ativas.

• Criação e modificação de destinos de evento – ao criar ou modificar um destino de evento (porexemplo, para informar ao Amazon SES para enviar seu e-mail enviando dados para outro serviçoda AWS (p. 282)), pode haver um atraso entre o momento em que o destino do evento foi criado oumodificado e o momento em que o evento de envio do e-mail realmente chega ao destino especificado.

Problemas de verificação de domínio e endereço dee-mail do Amazon SES

Para verificar um endereço de e-mail ou um domínio com o Amazon SES, inicie o processo usando oconsole do Amazon SES ou a API do Amazon SES. Esta seção contém informações que podem ajudar aresolver problemas com o processo de verificação.

Problemas comuns de verificação de e-mail• O e-mail de verificação não chegou – se você concluir os procedimentos em Verificar endereços de e-

mail no Amazon SES (p. 47) mas não receber o e-mail de verificação em alguns minutos, complete asseguintes etapas:• Verifique a pasta de spam ou de lixo eletrônico do endereço de e-mail que você está tentando

verificar.• Confirme se o endereço que você está tentando verificar pode receber e-mails. Usando outro

endereço de e-mail (como seu endereço de e-mail pessoal), envie um e-mail de teste para o endereçoque deseja verificar.

• Verifique a lista de endereços verificados no console do Amazon SES. Verifique se não há erros noendereço de e-mail que você está tentando verificar.

Problemas comuns de verificação de domínioSe você tentar verificar um domínio usando o procedimento em Verificar domínios no Amazon SES (p. 59)e encontrar problemas, revise as possíveis causas e soluções a seguir.

• Você está tentando verificar um domínio que não possui – não é possível verificar um domínio que vocênão possui. Por exemplo, se você deseja enviar e-mails pelo Amazon SES a partir de um endereçono domínio gmail.com, é necessário verificar esse endereço de e-mail especificamente (p. 47). Não épossível verificar todo o domínio gmail.com.

• O provedor de DNS não permite sublinhados em nomes de registro TXT – alguns provedores de DNSnão permitem que você inclua o caractere sublinhado nos nomes de registro DNS para o domínio. Seisso for verdadeiro para o seu provedor, omita _amazonses do nome do registro TXT.

• O provedor de DNS anexou o nome do domínio ao final do registro TXT – alguns provedores de DNSanexam automaticamente o nome do seu domínio ao nome do atributo do registro TXT. Por exemplo,se você criar um registro em que o nome do atributo é _amazonses.example.com, o provedor poderá

455

Page 463: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorComo examinar as configurações de verificação de domínio

anexar o nome do domínio, resultando em _amazonses.example.com.example.com). Para evitar aduplicação do nome do domínio, adicione um ponto ao final do nome do domínio ao criar o registroTXT. Esta etapa informa ao seu provedor de DNS que não é necessário anexar o nome do domínio aoregistro TXT.

• O provedor de DNS modificou o valor do registro DNS – alguns provedores modificam automaticamenteos valores do registro DNS para usar apenas letras minúsculas. O Amazon SES verifica seu domíniosomente ao detectar um registro de verificação para o qual o valor do atributo corresponde exatamenteao valor que o Amazon SES forneceu quando você iniciou o processo de verificação de domínio. Se oprovedor de DNS do seu domínio muda os valores do registro TXT para usar apenas letras minúsculas,entre em contato com o provedor de DNS para obter assistência adicional.

• Você deseja verificar o mesmo domínio várias vezes – talvez seja necessário verificar seu domíniomais de uma vez porque está enviando em diferentes regiões ou porque você está usando o mesmodomínio para enviar a partir de várias contas da AWS. Se o seu provedor de DNS não permitir que vocêtenha mais de um registro TXT com o mesmo nome de atributo, talvez ainda seja possível verificar doisdomínios. Se o provedor de DNS permitir, atribua vários valores de atributo ao mesmo registro TXT. Porexemplo, se o DNS for gerenciado pelo Amazon Route 53, você poderá configurar vários valores para omesmo registro TXT completando as seguintes etapas:1. No console do Route 53, selecione o registro TXT criado ao verificar o domínio na primeira região.2. Na caixa Value (Valor), vá até o final do valor de atributo existente e, em seguida, pressione Enter.3. Adicione o valor do atributo para a região adicional e, em seguida, salve o conjunto de registros.

Se o provedor de DNS não permitir que você atribua vários valores para o mesmo registro TXT, verifiqueo domínio uma vez com _amazonses no nome do atributo do registro TXT, e outra vez sem _amazonsesno nome do atributo. A desvantagem dessa solução é que só é possível verificar o mesmo domínio duasvezes.

Como examinar as configurações de verificação dedomínioVocê pode examinar se o registro TXT de verificação de domínio do Amazon SES foi publicadocorretamente em seu servidor DNS usando o procedimento a seguir. Este procedimento usa a ferramentanslookup, que está disponível para Windows e Linux. No Linux, você também pode usar dig.

Os comandos nessas instruções foram executados no Windows 7, e o exemplo de domínio que usamos éses-example.com.

Neste procedimento, você primeiro encontra os servidores DNS que atendem ao seu domínio e, emseguida, consulta esses servidores para visualizar os registros TXT. Você consulta os servidores DNS queatendem a seu domínio, pois esses servidores contêm as informações mais atualizadas de seu domínio, oque pode levar algum tempo para ser propagado para outros servidores DNS.

Para examinar se o registro TXT de verificação do seu domínio foi publicada no servidor DNS

1. Localize os servidores de nome de seu domínio executando as seguintes etapas.

a. Vá para a linha de comando. Para acessar a linha de comando no Windows 7, escolha Starte, em seguida, digite cmd. Em sistemas operacionais baseados em Linux, abra uma janela determinal.

b. No prompt de comando, digite o seguinte, em que <domain> é seu domínio. Todos os servidoresde nome que atendem ao seu domínio serão listados.

nslookup -type=NS <domain>

Se o seu domínio for ses-example.com, esse comando terá a seguinte aparência:

456

Page 464: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProblemas do DKIM

nslookup -type=NS ses-example.com

A saída do comando listará os servidores de nome que atendem ao seu domínio. Você poderáconsultar um desses servidores na próxima etapa.

2. Verifique se o registro TXT foi corretamente publicado executando estas etapas.

a. No prompt de comando, digite o seguinte, em que <domain> é o seu domínio, e <name server> éum dos servidores de nome encontrados na etapa 1.

nslookup -type=TXT _amazonses.<domain> <name server>

Em nosso exemplo ses-example.com, se um servidor de nome que encontramos na etapa 1 fordenominado ns1.name-server.net, digite o seguinte:

nslookup -type=TXT _amazonses.ses-example.com ns1.name-server.net

b. Na saída do comando, verifique se a string após text = corresponde ao valor TXT visto aoescolher o domínio na lista de identidades do console do Amazon SES.

Em nosso exemplo, estamos procurando um registro TXT em _amazonses.ses-example.com como valor fmxqxT/icOYx4aA/bEUrDPMeax9/s3frblS+niixmqk=. Se o registro foi corretamentepublicado, esperamos que o comando tenha a seguinte saída:

_amazonses.ses-example.com text = "fmxqxT/icOYx4aA/bEUrDPMeax9/s3frblS+niixmqk="

Solução de problemas do DKIM no Amazon SESEsta seção lista alguns dos problemas que você pode encontrar ao configurar a autenticação DKIMno Amazon SES. Se você tentar configurar o DKIM e encontrar problemas, veja as possíveis causas esoluções abaixo.

Você configurou o DKIM com êxito, mas suas mensagens não estão sendo assinadas pelo DKIM

Se você usou o Easy DKIM (p. 134) ou o BYODKIM (p. 142) para configurar o DKIM de um domínio,mas as mensagens enviadas não estiverem assinadas pelo DKIM, faça o seguinte:• Certifique-se de que o DKIM esteja habilitado para a identidade apropriada. Para habilitar o DKIM

para uma identidade no console do Amazon SES, escolha o domínio de e-mail na lista Identities(Identidades). Na página de detalhes domínio, expanda DKIM e escolha Enable (Habilitar) parahabilitar o DKIM.

• Certifique-se de que você não está enviando mensagens de um endereço de e-mail verificadono mesmo domínio. Se você configurar o DKIM para um domínio, todas as mensagens enviadasdesse domínio serão assinadas pelo DKIM, exceto os endereços de e-mail que você verificouindividualmente. Os endereços de e-mail verificados individualmente usam configuraçõesseparadas. Por exemplo, se você configurou o DKIM para o domínio example.com e verificouseparadamente o endereço de e-mail [email protected] (mas não configurou o DKIM para oendereço), os e-mails enviados de [email protected] são enviados sem a autenticação DKIM.Para resolver esse problema, exclua a identidade do endereço de e-mail da lista de identidades daconta.

• Se você utiliza a mesma identidade em mais de uma região da AWS, é preciso configurar o DKIMpara cada região separadamente. Da mesma forma, se utiliza o mesmo domínio com mais de umaconta da AWS, é necessário configurar o DKIM para cada conta. Se você remover os registros DNSnecessários para uma região ou conta específica, o Amazon SES desativará a assinatura DKIM

457

Page 465: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProblemas de entrega

para essa região ou conta. Se a assinatura DKIM ficar desativada, o Amazon SES enviará umanotificação por e-mail para você.

Os detalhes do DKIM do seu domínio no console do Amazon SES mostram DKIM: waiting on senderverification... DKIM Verification Status: pending verification.

Se você seguiu os procedimentos em Easy DKIM (p. 134) ou em Forneça seu próprio token deautenticação DKIM (p. 142) para configurar o DKIM de um domínio, mas o console do Amazon SESainda indica que a verificação do DKIM está pendente, faça o seguinte:• Aguarde até 72 horas. Em casos raros, pode levar um tempo para que os registros DNS se tornem

visíveis para o Amazon SES.• Confirme se o registro CNAME (para Easy DKIM) ou o registro TXT (para BYODKIM)

usa o nome correto. Alguns provedores de DNS anexam automaticamente o nomedo domínio aos registros que você cria. Por exemplo, se você criar um registro comum nome de example._domainkey.example.com, seu provedor DNS poderáadicionar o nome do domínio ao final dessa sequência de caracteres, resultando emexample._domainkey.example.com.example.com. Para obter mais informações, consulte adocumentação do seu provedor de DNS.

Você recebeu um e-mail do Amazon SES dizendo que sua configuração do DKIM foi (ou será) revogada.

Isso significa que o Amazon SES não pode mais encontrar os registros CNAME necessários (sevocê usou o Easy DKIM) ou o registro TXT necessário (se você usou o BYODKIM) no servidorDNS. O e-mail de notificação informará a você o período em que você deve publicar novamente osregistros DNS antes que o status de configuração do DKIM seja revogado e a assinatura do DKIM sejadesabilitada. Caso sua configuração do DKIM seja revogada, você deverá reiniciar o procedimento deconfiguração do DKIM desde o início.

Ao tentar configurar o BYODKIM, o processo de verificação do DKIM falha.

Certifique-se de que sua chave privada tem o formato correto. A chave privada deve estar no formatoPKCS #1 e usar a criptografia RSA de 1024 bits. Além disso, ela tem que ser codificada em Base64.

Durante a configuração do BYODKIM, você recebeu um erro BadRequestException ao tentarespecificar uma chave pública para o domínio.

Se você recebeu um erro BadRequestException, faça o seguinte:• Certifique-se de que o seletor especificado para a chave pública contenha de 1 a 63 caracteres

alfanuméricos. O seletor não pode incluir ponto final, outros símbolos ou pontuação.• Certifique-se de que você removeu as linhas de cabeçalho e rodapé e todas as quebras de linha da

chave pública.Ao usar o Easy DKIM, os servidores DNS retornam os registros de CNAME para DKIM do Amazon SEScom sucesso, mas retornam SERVFAIL para o registro TXT de verificação do domínio.

O provedor DNS pode não conseguir redirecionar registros CNAME. O Amazon SES e os ISPsconsultam registros TXT. Para estar em conformidade com a especificação DKIM, os servidores DNSprecisam ser capazes de responder a consultas de registro TXT, bem como de registro CNAME. Se oprovedor DNS não conseguir responder às consultas de registro TXT, uma alternativa é usar o Route53 como provedor de hospedagem DNS.

Seus e-mails contêm duas assinaturas DKIM

A assinatura DKIM adicional, que contém d=amazonses.com, é automaticamente adicionada peloAmazon SES. Você pode ignorá-la.

Problemas de entrega do Amazon SESDepois de fazer uma solicitação bem-sucedida para o Amazon SES, sua mensagem é geralmente enviadaimediatamente. Em outras situações, pode haver um pequeno atraso. Em qualquer caso, você pode tercerteza de que seu e-mail será enviado.

458

Page 466: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProblemas com e-mails recebidos

No entanto, quando o Amazon SES enviar sua mensagem, vários fatores poderão impedir que ele sejaentregue com êxito, e em alguns casos você saberá que a entrega falhou somente quando a mensagemque você enviar não chegar. Use o seguinte processo para resolver essa situação.

Se um e-mail não chegar, tente o seguinte:

• Verifique se você fez uma solicitação SendEmail ou SendRawEmail para o e-mail em questão e serecebeu uma resposta bem-sucedida. (Consulte Estrutura de uma resposta bem-sucedida (p. 405) paraobter um exemplo.) Se você estiver fazendo essas solicitações de forma programática, verifique os logsde software para garantir que o programa fez a solicitação e recebeu uma resposta bem-sucedida.

• Leia o artigo do blog Três lugares onde seu e-mail pode sofrer um atraso durante o envio pelo SES, poiso problema, na verdade, pode ser um atraso em vez da falta de entrega.

• Verifique o endereço de e-mail do remetente (o endereço "From") para verificar se ele é válido. Verifiquetambém o endereço Return-Path, que é o local para onde as mensagens de devolução são enviadas. Seo seu e-mail foi devolvido, haverá uma mensagem de erro explicativa.

• Verifique o Painel de status dos serviços da AWS para confirmar que não há um problema conhecidocom o Amazon SES.

• Entre em contato com o destinatário de e-mail ou o ISP do destinatário. Verifique se o destinatário estáusando o endereço de e-mail correto e pesquise se ocorreu algum problema de entrega conhecido como ISP do destinatário. Além disso, determine se o e-mail foi entregue, mas foi filtrado como spam.

• Se você se cadastrou em um Plano do AWS Support pago, pode abrir um novo caso de suporte técnico.Em sua correspondência conosco, forneça todos os endereços do destinatário relevantes, juntamentecom todos os IDs de solicitação ou IDs de mensagens retornados das respostas de SendEmail ouSendRawEmail.

• Aguarde para ver se o problema é realmente um atraso, não uma falha de entrega permanente. Paracombater spammers, alguns ISPs rejeitam temporariamente mensagens recebidas de servidores de e-mail de envio desconhecidos. Esse processo, chamado greylisting, pode causar um atraso na entrega. OAmazon SES tentará enviar novamente essas mensagens. Se a greylisting for o problema, o ISP poderáaceitar o e-mail em uma dessas novas tentativas.

Problemas com e-mails recebidos do Amazon SESO seguinte problema pode ocorrer quando um destinatário recebe um e-mail enviado pelo Amazon SES.Se você estiver procurando informações sobre solução de problemas quando um destinatário não recebeum e-mail de forma alguma, consulte Problemas com e-mails recebidos do Amazon SES (p. 459).

• O cliente de e-mail do destinatário exibe "enviado via amazonses.com" como a origem do e-mail –alguns clientes de e-mail exibem o domínio "via" quando o domínio do remetente não correspondeao domínio do qual o e-mail foi realmente enviado (neste caso, amazonses.com). Para obter maisinformações sobre o motivo, consulte esta explicação da Google. Como alternativa, você pode configuraro Domain Keys Identified Mail (DKIM - Mensagem identificada por chave de domínio), que, de qualquerforma, é uma boa prática. Quando você autentica seus e-mails usando o DKIM, os clientes de e-mail normalmente não mostram o domínio "via" porque a assinatura do DKIM mostra que o e-mail éproveniente do domínio que afirma ser. Para obter informações sobre como configurar o DKIM, leiaAutenticação de e-mail com DKIM no Amazon SES (p. 134).

• Seu e-mail não está sendo exibido corretamente no cliente de e-mail do destinatário• Se o seu e-mail contiver caracteres não ASCII, você deverá elaborar o e-mail no formato Multipurpose

Internet Mail Extensions (MIME) e enviá-lo com a API SendRawEmail. Para obter mais informações,consulte Envio de e-mail bruto usando a API do Amazon SES (p. 115).

• Seu e-mail pode conter MIME formatado incorretamente. Certifique-se de que ele esteja emconformidade com RFC 2047. Por exemplo, ele deve usar campos de cabeçalho apropriados ecodificação do corpo da mensagem.

459

Page 467: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProblemas com as notificações

• O servidor de e-mail do destinatário ou o cliente de e-mail pode impor restrições ao conteúdorenderizado.

Problemas com as notificações do Amazon SESSe você encontrar um problema com devolução, reclamação ou notificações de entrega, revise aspossíveis causas e soluções a seguir.

• Você recebe notificações de devolução pelo Amazon SNS, mas não sabe a quais destinatários asnotificações correspondem – no futuro, para associar uma notificação de devolução a um determinadodestinatário, você tem as seguintes opções:• Como o Amazon SES não retém nenhum ID de mensagem personalizado que você tenha adicionado,

armazene um mapeamento entre um identificador e o ID de mensagem do Amazon SES que oAmazon SES transmite de volta para você ao aceitar o e-mail.

• Em cada chamada para o Amazon SES, envie a um único destinatário em vez de enviar uma únicamensagem para vários destinatários.

• Você pode habilitar o encaminhamento de feedback por e-mail, que encaminhará a mensagemcompleta de devolução para você.

• Você recebe notificações de reclamação pelo Amazon SNS ou encaminhamento de feedback de e-mail, mas você não sabe a quais destinatários as notificações correspondem – alguns ISPs redigem oendereço de e-mail do destinatário que reclamou antes de transmitir a notificação de reclamação para oAmazon SES. Para permitir que você encontre o endereço de e-mail do destinatário, a melhor opção éarmazenar seu próprio mapeamento entre um identificador e o ID de mensagem do Amazon SES que oAmazon SES transmite de volta ao aceitar o e-mail. Observe que o Amazon SES não mantém nenhumID de mensagem personalizado que você adicionar.

• Você quer configurar notificações para ir para um tópico doAmazon SNS que você não possui – oproprietário desse tópico deve configurar uma política de acesso do Amazon SNS que permite que a suaconta chame a ação SNS:Publish no tópico. Para obter informações sobre como controlar o acesso aotópico do Amazon SNS com o uso de políticas do IAM, consulte Gerenciar o acesso aos seus tópicos doAmazon SNS no Guia do desenvolvedor do Amazon Simple Notification Service.

Erros de envio de e-mails do Amazon SESEste tópico analisa os tipos de erros específicos de envio de e-mail que você pode encontrar ao enviar ume-mail pelo Amazon SES. Se você tentar enviar um e-mail por meio do Amazon SES e ocorrer uma falhana chamada para o Amazon SES, o Amazon SES retornará uma mensagem de erro ao seu aplicativo enão enviará o e-mail. A maneira como você observa essa mensagem de erro depende da maneira comochama o Amazon SES.

• Se você chamar a API do Amazon SES diretamente, a ação de consulta retornará um erro. O erro podeser MessageRejected ou um dos erros especificados no tópico Erros comuns do Amazon SimpleEmail Service API Reference.

• Se você chamar o Amazon SES usando um AWS SDK que utilize uma linguagem de programação queofereça suporte a exceções, o Amazon SES poderá gerar uma exceção. O tipo de exceção depende doSDK e do erro. Por exemplo, a exceção pode ser uma MessageRejectedException do Amazon SES(o nome real pode variar de acordo com o SDK) ou uma exceção geral da AWS. Independentemente dotipo de exceção, o tipo e a mensagem de erro na exceção fornecerão mais informações.

• Se você chamar o Amazon SES por meio de sua interface SMTP, a forma como você experimentaráo erro vai depender do aplicativo. Alguns aplicativos podem exibir uma mensagem de erro específica,enquanto outros não. Para obter uma lista de códigos de resposta SMTP retornados pelo Amazon SES,consulte Códigos de resposta SMTP retornados pelo Amazon SES. (p. 464)

460

Page 468: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorErros de envio de e-mails

Note

Quando ocorrer falha na sua chamada para o Amazon SES para enviar um e-mail, você não serácobrado por esse e-mail.

Veja a seguir os tipos de problemas específicos do Amazon SES que podem fazer com que o AmazonSES retorne um erro ao tentar enviar um e-mail. Esses erros são uma adição aos erros gerais da AWS,como MalformedQueryString, conforme especificado no tópico Erros comuns do Amazon Simple EmailService API Reference.

• O endereço de e-mail não é verificado. As seguintes identidades falharam na verificação na região:identity1, identity2, identity3 — você está tentando enviar e-mails a partir de um endereço de e-mail oudomínio que você não verificou com o Amazon SES (p. 47). Esse erro pode se aplicar aos endereços"From", "Source", "Sender" ou "Return-Path". Se a sua conta ainda estiver na sandbox do AmazonSES (p. 73), você também deverá verificar o endereço de e-mail de cada destinatário, exceto osdestinatários fornecidos pelo simulador de caixa postal do Amazon SES (p. 187). Se o Amazon SES nãoconseguir mostrar todas as identidades com falha, a mensagem de erro terminará com reticências.

Note

O Amazon SES tem endpoints em várias regiões da AWS (p. 441), e o status de verificação doendereço de e-mail é separado para cada região da AWS. Você deve concluir o processo deverificação para cada remetente nas regiões da AWS que deseja usar.

• Account is paused — a capacidade da sua conta para enviar e-mails está pausada. Você ainda podeacessar o console do Amazon SES e executar a maioria das operações. No entanto, se você tentarenviar um e-mail, receberá essa mensagem.

Se pausarmos a capacidade da sua conta para enviar e-mails, enviaremos automaticamente umanotificação ao endereço de e-mail correspondente à sua conta da AWS. Para obter mais informações,consulte the section called “Perguntas frequentes sobre o processo de análise de envios” (p. 474).

• Limitação — seu aplicativo pode estar tentando enviar muitas mensagens por segundo, ou você pode terenviado muitos e-mails nas últimas 24 horas. Nesses casos, a mensagem de erro pode ser semelhantea um dos seguintes exemplos:• Cota de mensagens diária excedida — você enviou o número máximo de mensagens que é permitido

em um período de 24 horas. Se você excedeu sua cota diária, precisará esperar até o próximo períodode 24 horas para poder enviar mais e-mails.

• Taxa máxima de envio excedida — você está tentando enviar mais e-mails por segundo do queé permitido pela taxa máxima de envio. Se você excedeu a sua taxa de envio, poderá continuar aenviar e-mails, mas precisará reduzir sua taxa de envio. Para obter mais informações, consulte Comolidar com um erro "Limitação – taxa máxima de envio excedida" no Blog de sistema de mensagens eobjetivos da AWS.

Você deve monitorar regularmente sua atividade de envio para ver se está próximo de suas cotas deenvio. Para obter mais informações, consulte Monitorar as cotas de envio do Amazon SES (p. 149). Paraobter informações gerais sobre as cotas de envio, consulte Gerenciar as cotas de envio do AmazonSES (p. 148). Para obter informações sobre como aumentar suas cotas de envio, consulte Aumentarsuas cotas de envio do Amazon SES (p. 150).

Important

Se o texto de erro que explica o erro de limitação não estiver relacionado à sua cota diária outaxa máxima de envio, pode ter havido um problema no sistema que está causando a reduçãoda capacidade de envio. Para obter informações sobre o status do serviço, consulte o Painel destatus dos serviços da AWS.

• Não há destinatários especificados — nenhum destinatário foi fornecido.• Há caracteres não ASCII no endereço de e-mail — a string de endereço de e-mail deve ser ASCII

de 7 bits. Se você deseja enviar para ou de endereços de e-mail que contêm caracteres Unicode naparte de domínio de um endereço, você deve codificar o domínio usando Punycode. Punycode não

461

Page 469: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorComo aumentar a taxa de transferência

é permitido na parte local do endereço de e-mail (na parte antes de @) nem no nome "amigável de".Se você quiser usar caracteres Unicode no nome "amigável de", deve codificá-lo usando a sintaxe depalavras codificadas por MIME, conforme descrito em Envio de e-mail bruto usando a API do AmazonSES (p. 115). Para obter mais informações sobre Punycode, consulte RFC 3492.

• Domínio Mail FROM do correio não está verificado — o Amazon SES não pôde ler o registro MXnecessário para usar o domínio MAIL FROM especificado. Para obter informações sobre comoconfigurar domínios MAIL FROM personalizados, consulte Configurar um domínio MAIL FROMpersonalizado (p. 66).

• A configuração não existe — o conjunto de configurações que você especificou não existe. Um conjuntode configurações é um parâmetro opcional que você usa para publicar eventos de envio de e-mail.Para obter mais informações, consulte Monitoramento usando publicação de eventos do AmazonSES (p. 282).

Como aumentar a taxa de transferência com oAmazon SES

Quando você enviar e-mails, poderá chamar o Amazon SES com a frequência permitida pela sua taxamáxima de envio. (Para obter mais informações sobre sua taxa máxima de envio, consulte Gerenciar ascotas de envio do Amazon SES (p. 148).) No entanto, cada chamada para o Amazon SES leva tempo paraser concluída.

Se você estiver fazendo várias chamadas para o Amazon SES usando a API do Amazon SES ou ainterface SMTP, poderá considerar as seguintes dicas para ajudá-lo a melhorar sua taxa de transferência:

• Meça o desempenho atual para identificar gargalos — um teste de desempenho possível envolve oenvio de vários e-mails de teste o mais rápido possível em um loop de código em seu aplicativo. Meçaa latência de ida e volta de cada solicitação SendEmail. Em seguida, de forma incremental executeinstâncias adicionais do aplicativo na mesma máquina e observe se há impacto na latência da rede.Você também pode executar esse teste em várias máquinas e em diferentes redes para ajudar aidentificar qualquer possível gargalo de recursos da máquina ou de rede que possa existir.

• (Apenas API) Considere o uso de conexões HTTP persistentes — em vez de incorrer na sobrecargade estabelecer uma nova conexão HTTP separada para cada solicitação de API, use conexões HTTPpersistentes. Isto é, reutilize a mesma conexão HTTP para várias solicitações de API.

• Considere o uso de vários threads — quando um aplicativo usa um único thread, o código do aplicativochama a API do Amazon SES e, em seguida, aguarda de forma síncrona por uma resposta da API.O envio de e-mails geralmente é uma operação com uso intensivo de E/S e fazer o trabalho de váriosthreads proporciona uma taxa de transferência melhor. Você pode enviar simultaneamente usando onúmero threads de execução que desejar.

• Considere o uso de vários processos — o uso de vários processos pode ajudar a aumentar a taxade transferência, pois você terá mais conexões ativas para o Amazon SES. Por exemplo, você podesegmentar seus e-mails pretendidos em vários buckets e, em seguida, executar várias instâncias do seuscript de envio de e-mails simultaneamente.

• Considere o uso de uma retransmissão de e-mail local — o aplicativo pode transmitir mensagensrapidamente para o seu servidor de e-mail local, o que pode ajudar a armazenar as mensagens embuffer e transmiti-las de forma assíncrona para o Amazon SES. Alguns servidores de e-mail oferecesuporte à simultaneidade da entrega, o que significa que, mesmo se o seu aplicativo estiver gerando e-mails para o servidor de e-mail em um thread único, o servidor usará vários threads ao enviá-los para oAmazon SES. Para obter mais informações, consulte Integração do Amazon SES com seu servidor de e-mail existente (p. 92).

• Considere hospedar seu aplicativo mais próximo do endpoint da API do Amazon SES — Talvez sejarecomendável considerar a hospedagem de seu aplicativo em um datacenter próximo do endpoint daAPI do Amazon SES ou em uma instância do Amazon EC2 na mesma região da AWS que o endpoint daAPI do Amazon SES. Isso pode ajudar a diminuir a latência da rede entre o aplicativo e o Amazon SES

462

Page 470: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorProblemas de SMTP

e melhorar a taxa de transferência. Para obter uma lista de regiões onde o Amazon SES está disponível,consulte Amazon Simple Email Service (Amazon SES) no AWS General Reference.

• Considere o uso de várias máquinas — dependendo da configuração do sistema no seu computadorhost, pode haver um limite para o número de conexões HTTP simultâneas com um único endereçoIP, o que pode limitar os benefícios do paralelismo ao exceder um determinado número de conexõessimultâneas em uma única máquina. Se isso for um gargalo, talvez seja útil considerar fazer solicitaçõessimultâneas do Amazon SES usando várias máquinas.

• Considere usar a API de consulta do Amazon SES em vez do endpoint SMTP — o uso da API deconsulta do Amazon SES permite que você envie a solicitação de envio de e-mail usando uma únicachamada de rede, enquanto a interface com o endpoint SMTP envolve uma conversão SMTP, queconsiste em várias solicitações de rede (por exemplo, EHLO, MAIL FROM, RCPT TO, DATA, QUIT).Para obter mais informações sobre a API de consulta do Amazon SES, consulte Uso do API do AmazonSES para enviar e-mail (p. 114).

• Use o simulador de caixa postal do Amazon SES para testar sua taxa de transferência máxima — paratestar todas as alterações que você pode implementar, é possível usar o simulador de caixa de correio.O simulador de caixa de correio pode ajudar você a determinar a taxa de transferência máxima de seusistema sem acabar com sua cota de envio diária. Para obter informações sobre o simulador de caixapostal, consulte Teste de envio de e-mail no Amazon SES (p. 187).

Se você estiver acessando o Amazon SES por meio de sua interface SMTP, consulte AmazonSESProblemas de SMTP (p. 463) para saber os problemas relacionados ao SMTP específicos quepodem afetar a taxa de transferência.

Amazon SESProblemas de SMTPEsta seção contém soluções para diversos problemas comuns relacionados ao envio de e-mail usandoa interface de Simple Mail Transfer Protocol (SMTP) do Amazon SES. Ela também contém uma lista decódigos de resposta SMTP retornados pelo Amazon SES.

Para saber mais sobre como enviar e-mails usando a interface SMTP do Amazon SES, consulte Uso dainterface SMTP do Amazon SES para enviar e-mail (p. 80).

• Não é possível se conectar ao endpoint SMTP do Amazon SES.

Os problemas para se conectar ao endpoint SMTP do Amazon SES em geral estão relacionados àsseguintes questões:• Credenciais incorretas – As credenciais que você usa para se conectar ao endpoint SMTP são

diferentes das credenciais da AWS. Para obter as credenciais SMTP, consulte Obtenção das suascredenciais SMTP do Amazon SES (p. 81). Para obter mais informações sobre credenciais, consulteUso de credenciais com o Amazon SES (p. 398).

• Problemas de rede ou firewall – Sua rede pode estar bloqueando as conexões de saída pela porta pormeio da qual você está tentando enviar e-mails. Para determinar se um problema em sua rede localestá causando problemas de conexão, digite o seguinte comando na linha de comando, substituindoport pela porta que você está tentando usar (normalmente, 465, 587, 2465 ou 2587): telnetemail-smtp.us-west-2.amazonaws.com port

Se conseguir se conectar ao servidor SMTP usando esse comando e estiver tentando se conectar aoAmazon SES usando TLS Wrapper ou STARTTLS, execute os procedimentos exibidos em Testar oenvio de e-mails usando a linha de comando (p. 108).

Se você não conseguir se conectar ao endpoint SMTP do Amazon SES usando telnet ou openssl,isso quer dizer que algo em sua rede (por exemplo, um firewall) está bloqueando as conexõesde saída pela porta que você está tentando usar. Trabalhe com o administrador de sua rede paradiagnosticar e corrigir o problema.

463

Page 471: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCódigos de resposta SMTP

• Você está enviando para o Amazon SES de uma instância do Amazon EC2 usando a porta 25 erecebendo avisos de erros de tempo limite esgotado.

O Amazon EC2 restringe a porta 25 por padrão. Para remover essas restrições, envie um Solicitação deAmazon EC2 para remover e-mail enviando limitações recebidas. Também é possível se conectar aoAmazon SES pela porta 465 ou 587 porque nenhuma delas é restrita.

• Erros de rede estão provocando o descarte de e-mails.

Procure fazer com que seu aplicativo use a lógica de nova tentativa ao se conectar ao endpoint SMTPdo Amazon SES e que consiga detectar e tentar novamente entregar as mensagens em caso de errosna rede. SMTP é um protocolo detalhado. Por isso, enviar e-mails por meio dele requer várias roundtrips da rede. Em virtude da natureza do SMTP, a probabilidade de erros de rede é maior.

• Você perde a conexão com o endpoint SMTP.

As perdas de conexão são mais comumente provocadas pelos seguintes problemas:• Tamanho da MTU – Se você receber uma mensagem de erro de tempo limite, o tamanho da unidade

de transmissão máxima (MTU) da interface de rede do computador que você está usando para seconectar à interface SMTP do Amazon SES talvez seja muito grande. Para resolver esse problema,defina o tamanho da MTU no computador como 1.500 bytes.

Para obter mais informações sobre como definir o tamanho da MTU nos sistemas operacionaisWindows, Linux e macOS, consulte Consultas parecem travar e às vezes não se comunicam com ocluster no Amazon Redshift Cluster Management Guide.

Para obter mais informações sobre como definir o tamanho da MTU para uma instância do AmazonEC2, consulte Unidade de transmissão máxima (MTU) de rede para sua instância do EC2 no Guia dousuário do Amazon EC2 para instâncias do Linux.

• Conexões de longa duração – O endpoint SMTP do Amazon SES é executado em um conjunto deinstâncias do Amazon EC2 atrás de um Elastic Load Balancer (ELB). Para garantir que o sistemaesteja atualizado e tolerante a falhas, as instâncias ativas do Amazon EC2 são periodicamenteencerradas e substituídas por novas instâncias. Como o aplicativo se conecta a uma instância doAmazon EC2 por meio do ELB, a conexão se torna inválida quando a instância do Amazon EC2 éencerrada. Você deve estabelecer uma nova conexão SMTP depois de entregar um número fixo demensagens por meio de uma única conexão SMTP, ou se a conexão SMTP permaneceu ativada poralgum tempo. Você precisará tentar localizar os limites apropriados, dependendo de onde o aplicativoestá hospedado e como ele envia e-mails para o Amazon SES.

• Você deseja saber quais são os endereços IP dos servidores de e-mail SMTP do Amazon SES, paraque possa aprovar os endereços IP em sua rede.

Os endereços IP dos endpoints SMTP do Amazon SES residem atrás de load balancers. Comoresultado, esses endereços IP mudam frequentemente. Não é possível fornecer uma lista definitivade todos os endereços IP para os endpoints do Amazon SES. Recomentamos que você inclua odomínio amazonses.com na lista de permissões em vez de incluir endereços IP individuais na lista depermissões.

Códigos de resposta SMTP retornados pelo AmazonSES.Esta seção contém uma lista de códigos de resposta que são retornados pela interface SMTP do AmazonSES.

Você deve tentar novamente fazer as solicitações SMTP que recebem erros 400. Recomendamos quevocê implemente um sistema que tentará executar solicitações com tempos de espera progressivamentemais longas (por exemplo, aguarde 5 segundos antes de tentar novamente. Aguarde 10 segundos e,depois, aguarde 30 segundos). Se a terceira nova tentativa não for bem-sucedida, aguarde 20 minutos

464

Page 472: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCódigos de resposta SMTP

e, em seguida, repita o processo. Para ver um exemplo de uma implementação que usa uma políticade novas tentativas exponenciais consulte Como lidar com o erro "Limitação – taxa máxima de envioexcedida" no Blog de sistema de mensagens e objetivos da AWS.

Note

Os AWS SDKs implementam a lógica de nova tentativa automaticamente, embora eles usem ainterface HTTPS em vez de SMTP.

Se receber um erro 500, você precisará revisar a solicitação para corrigir um problema antes de enviara solicitação novamente. Por exemplo, se as credenciais de autenticação da AWS forem inválidas,você deverá atualizar seu aplicativo para usar as credenciais corretas antes de enviar sua solicitaçãonovamente.

Descrição Código de resposta Mais informações

Autenticação bem-sucedida 235 Authenticationsuccessful

Seu cliente SMTP se conectou comêxito e fez login no servidor SMTP.

Entrega bem-sucedida 250 Ok MessageID ID da mensagem é uma stringde caracteres exclusiva que oAmazon SES usa para identificaruma mensagem.

Serviço indisponível 421 Too many concurrentSMTP connections

O Amazon SES não podeprocessar a solicitação porque háatualmente muitas conexões com oservidor SMTP.

Erro de processamento local 451 Temporary servicefailure

O Amazon SES não pôdeprocessar a solicitação. Pode haverproblemas com a solicitação queimpedem que ele seja processada.

Tempo limite 451 Timeout waiting fordata from client

Muito tempo decorrido entreas solicitações, de modo queo servidor SMTP encerrou aconexão.

Cota de envio diárioexcedida

454 Throttling failure:Daily message quotaexceeded

Você excedeu o número máximode e-mails que o Amazon SESpermite enviar em um períodode 24 horas. Para obter maisinformações, consulte Gerenciaras cotas de envio do AmazonSES (p. 148).

Taxa máxima de envioexcedida

454 Throttling failure:Maximum sending rateexceeded

Você excedeu o número máximode e-mails que o Amazon SESpermite enviar por segundo. Paraobter mais informações, consulteGerenciar as cotas de envio doAmazon SES (p. 148).

Problema do Amazon SESao validar credenciais SMTP

454 Temporaryauthentication failure

Questões que podem causar esseproblema incluem (mas não estãolimitadas a):

• Há um problema com acriptografia entre o seu aplicativo

465

Page 473: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCódigos de resposta SMTP

Descrição Código de resposta Mais informaçõesde envio de e-mails e o AmazonSES. Observe que é necessáriousar uma conexão criptografadaao se conectar ao Amazon SES.Para obter mais informações,consulte Conexão ao endpointSMTP do Amazon SES (p. 85).

• Pode estar ocorrendo umproblema com o Amazon SES.Verifique se há duplicações noPainel de status dos serviços daAWS.

Problema ao receber asolicitação

454 Temporary servicefailure

O Amazon SES não recebeua solicitação com êxito.Consequentemente, a mensagemnão foi enviada.

Credenciais incorretas 530 Authenticationrequired

O aplicativo que você usa paraenviar e-mails não tentou fazera autenticação quando tentouse conectar à interface SMTPdo Amazon SES. Para obter umexemplo de como configurarum aplicativo de envio de e-mails para fazer a autenticaçãocom o Amazon SES, consulteConfiguração de clientes de e-mailpara enviar através do AmazonSES (p. 86).

Credenciais de autenticaçãoinválidas

535 AuthenticationCredentials Invalid

O aplicativo que você usa paraenviar e-mails não forneceu ascredenciais SMTP corretas parao Amazon SES. Observe queas credenciais SMTP não sãoas mesmas que as credenciaisda AWS. Para obter maisinformações, consulte Obtençãodas suas credenciais SMTP doAmazon SES (p. 81).

A conta não foi inscrita noAmazon SES

535 Account not subscribedto SES

A conta da AWS que tem ascredenciais SMTP não estáregistrada no Amazon SES.

O usuário não é autorizado achamar o endpoint SMTP doAmazon SES

554 Access denied:User UserARN is notauthorized to performses:SendRawEmail onresource IdentityARN

A política do AWS Identity andAccess Management (IAM) ou apolítica de autorização de enviodo Amazon SES do usuário quetem as credenciais SMTP nãoautoriza chamar o endpoint SMTPdo Amazon SES.

466

Page 474: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorCódigos de resposta SMTP

Descrição Código de resposta Mais informações

Endereço de e-mail nãoverificado

554 Message rejected:Email address is notverified. The followingidentities failed thecheck in region region:identity0, identity1,identity2

Você está tentando enviar e-mailsde um endereço de e-mail oudomínio que não está verificadopara enviar e-mails de sua contado Amazon SES (p. 47). Esse erropode se aplicar aos endereços"From" (De), "Source" (Origem),"Sender" (Remetente) ou "Return-Path" (Caminho de retorno). Sea sua conta ainda estiver nasandbox, você também terá queverificar o endereço de e-mailde cada destinatário (exceto osdestinatários fornecidos pelosimulador de caixa postal doAmazon SES (p. 187)). Se oAmazon SES não conseguirmostrar todas as identidades quetiveram falha na verificação, amensagem de erro terminará comtrês pontos (...).

Note

O Amazon SES temendpoints em váriasregiões da AWS (p. 441),e o status de verificaçãodo endereço de e-mailé separado para cadaregião da AWS. Vocêdeve concluir o processode verificação para cadaremetente nas regiões daAWS que deseja usar.

467

Page 475: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExcluir endereços suprimidos

Exclusão de dados pessoais doAmazon SES

Dependendo de como você o usa, o Amazon SES pode armazenar determinados dados que podem serconsiderados pessoais. Por exemplo, para enviar e-mails usando o Amazon SES, você deve fornecer pelomenos uma identidade verificada (um endereço de e-mail ou um domínio). Use o console do Amazon SESou a API do Amazon SES para excluir permanentemente esses dados pessoais.

Este capítulo fornece procedimentos para excluir vários tipos de dados que podem ser consideradospessoais.

Tópicos nesta seção:• Excluir endereços de e-mail da lista de supressão no nível da conta (p. 468)• Exclusão de dados sobre e-mails enviados usando o Amazon SES (p. 469)• Exclusão de dados sobre identidades (p. 470)• Excluir dados de autenticação de remetente (p. 470)• Excluir dados relacionados às regras de recebimento (p. 471)• Excluir dados relacionados aos filtros de endereços IP (p. 472)• Excluir dados em modelos de e-mail (p. 472)• Excluir dados de modelos de e-mail de verificação personalizados (p. 472)• Excluir todos os dados pessoais encerrando sua conta da AWS (p. 473)

Excluir endereços de e-mail da lista de supressãono nível da conta

O Amazon SES inclui uma lista opcional de supressão no nível da conta. Quando você habilita esterecurso, os endereços de e-mail são automaticamente adicionados a uma lista de supressão quandoresultam em uma devolução ou reclamação. Os endereços de e-mail permanecem nesta lista até que vocêos exclua. Para obter mais informações sobre a lista de supressão no nível da conta, consulte Usar a listade supressão no nível da conta (p. 189)

Você pode remover os endereços de e-mail da lista de supressão no nível da conta usando a operaçãoDeleteSuppressedDestination na API v2 do Amazon SES. Esta seção inclui um procedimentopara excluir endereços de e-mail usando a AWS CLI. Para obter mais informações sobre como instalar econfigurar a AWS CLI, consulte o Guia do usuário do AWS Command Line Interface.

Como remover um endereço da lista de supressão no nível da conta usando a AWS CLI

• Na linha de comando, insira o seguinte comando:

aws sesv2 delete-suppressed-destination --email-address [email protected]

No comando anterior, substitua [email protected] pelo endereço de e-mail que você desejaremover da lista de supressão no nível da conta.

468

Page 476: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExclusão de dados sobre e-mails enviados

Exclusão de dados sobre e-mails enviados usandoo Amazon SES

Ao usar o Amazon SES para enviar um e-mail, você pode enviar informações sobre esse e-mail paraoutros serviços da AWS. Por exemplo, você pode enviar informações sobre eventos de e-mail (comoentregas, aberturas e cliques) ao Kinesis Data Firehose. Esse evento normalmente contém dados de seuendereço de e-mail e o endereço IP do qual o e-mail foi enviado. Ele também contém os endereços de e-mail de todos os destinatários aos quais o e-mail foi enviado.

Use o Kinesis Data Firehose para fazer streaming de dados de eventos de e-mail para vários destinos,incluindo o Amazon Simple Storage Service, o Amazon Elasticsearch Service e o Amazon Redshift. Pararemover esses dados, você deve primeiro interromper o streaming de dados para o Kinesis Data Firehosee, em seguida, excluir os dados que já foram transmitidos. Para interromper o streaming de dados deeventos do Amazon SES para o Kinesis Data Firehose, é necessário excluir o destino de eventos doKinesis Data Firehose.

Para remover um destino de eventos do Kinesis Data Firehose usando o console do Amazon SES

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. Em Email Sending (Envio de e-mail), selecione Configuration Sets (Conjuntos de configurações).3. Na lista de conjuntos de configurações, selecione aquele que contém o destino de eventos do Kinesis

Data Firehose.4. Ao lado do destino de eventos do Kinesis Data Firehose que deseja excluir, selecione o botão delete

(excluir) ( ).5. Se necessário, remova os dados que o Kinesis Data Firehose gravou em outros serviços. Para obter

mais informações, consulte the section called “Remover dados de eventos armazenados” (p. 469).

Também é possível usar a API do Amazon SES para excluir destinos de eventos. O procedimento a seguirusa a AWS Command Line Interface (AWS CLI) para interagir com a API do Amazon SES. Você tambémpode interagir com a API usando um SDK da AWS ou fazendo solicitações HTTP diretamente.

Para remover um destino de eventos do Kinesis Data Firehose usando a AWS CLI

1. Na linha de comando, digite o seguinte comando:

aws ses delete-configuration-set-event-destination --configuration-set-name configSet \--event-destination-name eventDestination

Neste comando, substitua configSet pelo nome do conjunto de configurações que contém o destinode eventos do Kinesis Data Firehose. Substitua eventDestination pelo nome do destino deeventos do Kinesis Data Firehose.

2. Se necessário, remova os dados que o Kinesis Data Firehose gravou em outros serviços. Para obtermais informações, consulte the section called “Remover dados de eventos armazenados” (p. 469).

Remover dados de eventos armazenadosPara obter mais informações sobre como excluir informações de outros serviços da AWS, consulte osseguintes documentos:

• Excluir um objeto e um bucket no Guia de conceitos básicos do Amazon Simple Storage Service• Excluir um domínio do Amazon ES no Guia do desenvolvedor do Amazon Elasticsearch Service

469

Page 477: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExclusão de dados sobre identidades

• Excluir um cluster no Guia de gerenciamento de clusters do Amazon Redshift

Você também pode usar o Kinesis Data Firehose para fazer streaming de dados de e-mail para o Splunk,um serviço de terceiros que não é compatível com a AWS ou gerenciado no Console de gerenciamentoda AWS. Para obter mais informações sobre como remover dados do Splunk, consulte o administrador dosistema ou a documentação no site do Splunk.

Exclusão de dados sobre identidadesAs identidades incluem os endereços de e-mail e os domínios que você usa para enviar e-mails usando oAmazon SES. Em algumas jurisdições, endereços de e-mail ou domínios podem ser considerados comodados de identificação pessoal.

Para excluir uma identidade usando o console do Amazon SES

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. No Identity Management (Gerenciamento de identidades), proceda de uma das seguintes maneiras:

• Selecione Domains (Domínios) para excluir um domínio.• Selecione Email Addresses (Endereços de e-mail) para excluir um endereço de e-mail.

3. Selecione a identidade a ser excluída e, em seguida, selecione Remove (Remover).4. Na caixa de diálogo de confirmação, selecione Yes, Delete Identity (Sim, excluir identidade).

Também é possível usar a API do Amazon SES para excluir identidades. O procedimento a seguir usa aAWS Command Line Interface (AWS CLI) para interagir com a API do Amazon SES. Você também podeinteragir com a API usando um SDK da AWS ou fazendo solicitações HTTP diretamente.

Para excluir uma identidade usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

aws ses delete-identity --identity [email protected]

Nesse comando, substitua [email protected] pela identidade a ser excluída.

Excluir dados de autenticação de remetenteA autenticação do remetente faz referência ao processo de configuração do Amazon SES para que outrousuário possa enviar e-mails em seu nome. Para habilitar a autorização do remetente, você deve criar umapolítica, conforme descrito em Uso de autorização de envio com o Amazon SES (p. 153). Essas políticascontêm identidades (que pertencem a você), além de IDs da AWS (que estão associadas à pessoa ouao grupo que envia e-mail em seu nome). Você pode remover esse dados pessoais modificando ouexcluindo as políticas de autenticação do remetente. Os procedimentos a seguir mostram como excluiressas políticas.

Para excluir uma política de autenticação de remetente usando o console do Amazon SES

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. No Identity Management (Gerenciamento de identidades), proceda de uma das seguintes maneiras:

• Escolha Domains (Domínios) se a política de autenticação de remetente que você deseja excluirestiver associada a um domínio.

470

Page 478: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExcluir dados relacionados às regras de recebimento

• Escolha Email Addresses (Endereços de e-mail) se a política de autenticação de remetente quevocê deseja excluir estiver associada a um endereço de e-mail.

3. Em Identity Policies (Políticas de identidade), selecione a política que você deseja excluir e selecioneRemove Policy (Remover política).

Também é possível usar a API do Amazon SES para excluir políticas de autenticação de remetente.O procedimento a seguir usa a AWS Command Line Interface (AWS CLI) para interagir com a API doAmazon SES. Você também pode interagir com a API usando um SDK da AWS ou fazendo solicitaçõesHTTP diretamente.

Para excluir uma política de autenticação de remetente usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

aws ses delete-identity-policy --identity example.com --policy-name samplePolicy

Nesse comando, substitua example.com pela identidade que contém a política de autenticação deremetente. Substitua samplePolicy pelo nome da política de autenticação de remetente.

Excluir dados relacionados às regras derecebimento

Se usar o Amazon SES para receber e-mail de entrada, você poderá criar regras de recebimento que sãoaplicadas a uma ou mais identidades (endereços de e-mail ou domínios). Essas regras determinam o queo Amazon SES faz com os e-mails recebidos enviados às identidades especificadas.

Para excluir uma regra de recebimento usando o console do Amazon SES

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. Em Email Receiving (Recebimento de e-mail), selecione Rule Sets (Conjuntos de regras).3. Se a regra de recebimento fizer parte do conjunto de regras ativo, selecione View Active Rule Set

(Visualizar conjunto de regras ativo). Caso contrário, selecione o conjunto de regras que contém aregra de recebimento que você deseja excluir.

4. Na lista de regras de recebimento, selecione a regra que você deseja excluir.5. No menu Ações, escolha Excluir.6. Na caixa de diálogo de confirmação, selecione Delete (Excluir).

Também é possível usar a API do Amazon SES para excluir regras de recebimento. O procedimento aseguir usa a AWS Command Line Interface (AWS CLI) para interagir com a API do Amazon SES. Vocêtambém pode interagir com a API usando um SDK da AWS ou fazendo solicitações HTTP diretamente.

Para excluir uma regra de recebimento usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

aws ses delete-receipt-rule --rule-set myRuleSet --rule-name myReceiptRule

Nesse comando, substitua myRuleSet pelo nome do conjunto de regras de recebimento que contéma regra de recebimento. Substitua myReceiptRule pelo nome da regra de recebimento que vocêdeseja excluir.

471

Page 479: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExcluir dados relacionados aos filtros de endereços IP

Excluir dados relacionados aos filtros de endereçosIP

Se usar o Amazon SES para receber e-mail de entrada, você poderá criar filtros para aceitar ou bloquearexplicitamente mensagens que são enviadas de endereços IP específicos.

Para excluir um filtro de endereços IP usando o console do Amazon SES

1. Abra o console do Amazon SES em https://console.aws.amazon.com/ses/.2. Em Email Receiving (Recebimento de e-mail), selecione IP Address Filters (Filtros de endereços IP).3. Na lista de filtros de endereços IP, selecione o filtro que você deseja remover e, em seguida, selecione

Delete (Excluir).

Também é possível usar a API do Amazon SES para excluir filtros de endereços IP. O procedimento aseguir usa a AWS Command Line Interface (AWS CLI) para interagir com a API do Amazon SES. Vocêtambém pode interagir com a API usando um SDK da AWS ou fazendo solicitações HTTP diretamente.

Para excluir um filtro de endereços IP usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

aws ses delete-receipt-filter --filter-name IPfilter

Nesse comando, substitua IPfilter pelo nome do filtro de endereços IP que você deseja excluir.

Excluir dados em modelos de e-mailSe você usar modelos de e-mail para enviar e-mails, é possível que esses modelos contenham dadospessoais, dependendo de como você os configurou. Por exemplo, você pode ter adicionado um endereçode e-mail ao modelo com o qual os destinatários podem entrar em contato para obter mais informações.

Você só pode excluir modelos de e-mail usando a API do Amazon SES.

Para excluir um modelo de e-mail usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

aws ses delete-template --template-name sampleTemplate

Nesse comando, substitua sampleTemplate pelo nome do modelo de e-mail que você desejaexcluir.

Excluir dados de modelos de e-mail de verificaçãopersonalizados

Se você usar modelos personalizados para verificar novos endereços de envio de e-mail, é possível queesses modelos contenham dados pessoais, dependendo de como você os configurou. Por exemplo, você

472

Page 480: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorExcluir todos os dados encerrando sua conta da AWS

pode ter adicionado um endereço de e-mail ao modelo de e-mail de verificação com o qual os destinatáriospodem entrar em contato para obter mais informações.

Você só pode excluir modelos de e-mail de verificação personalizados usando a API do Amazon SES.

Para excluir um modelo de e-mail de verificação personalizado usando a AWS CLI

• Na linha de comando, digite o seguinte comando:

aws ses delete-custom-verification-email-template --template-name verificationEmailTemplate

Nesse comando, substitua verificationEmailTemplate pelo nome do modelo de e-mail deverificação personalizado que você deseja excluir.

Excluir todos os dados pessoais encerrando suaconta da AWS

Também é possível excluir todos os dados pessoais armazenados no Amazon SES encerrando suaconta da AWS. No entanto, essa ação também exclui todos os outros dados, pessoais ou não pessoais,armazenados em qualquer outro serviço da AWS.

Quando você encerra sua conta da AWS, os dados em sua conta da AWS são retidos por 90 dias. Apósesse período de retenção, eles são excluídos de forma permanente e irreversível.

Warning

Não conclua o procedimento a seguir, a menos que você tenha certeza de que deseja removercompletamente todos os dados que estão armazenados em sua conta da AWS em todos osserviços e regiões da AWS.

Você pode encerrar sua conta da AWS usando o Console de gerenciamento da AWS.

Para fechar sua conta AWS

1. Abra o Console de gerenciamento da AWS em https://console.aws.amazon.com/.2. Acesse a página Account Settings (Configurações da conta) em https://console.aws.amazon.com/

billing/home?#/account.

Warning

As duas etapa a seguir excluirão permanentemente todos os dados armazenados em todosos serviços da AWS em todas as regiões da AWS.

3. Em Close Account (Encerrar conta), leia o aviso de isenção que descreve as consequências deencerrar sua conta da AWS. Se concordar com os termos, marque a caixa de seleção e selecioneEncerrar conta.

4. Na caixa de diálogo de confirmação, selecione Encerrar conta.

473

Page 481: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPerguntas frequentes sobre o processo de análise de envios

Perguntas frequentes sobre AmazonSES

Esta seção contém respostas às várias perguntas frequentes relacionadas ao uso do Amazon SES.

Esta seção contém perguntas frequentes sobre os seguintes tópicos:• Perguntas frequentes sobre o processo de análise de envios do Amazon SES (p. 474)• Perguntas frequentes sobre listas negras de IP do Amazon SES (p. 490)• Perguntas frequentes sobre métricas de envio de e-mails do Amazon SES (p. 493)

Perguntas frequentes sobre o processo de análisede envios do Amazon SES

Nós monitoramos o e-mail enviado pelo Amazon SES para garantir que o serviço não esteja sendo usadopara entregar e-mails mal-intencionados, não solicitados ou de baixa qualidade. Se for determinado queum usuário está enviando conteúdo que se encaixa em uma dessas categorias, tomamos ações nessaconta. Chamamos esse processo de processo de análise de envios.

Em muitos casos, quando detectamos um problema com uma conta, colocamos essa conta sobanálise (p. 474). Em outros casos, pausamos a capacidade da conta enviar e-mails (p. 477). Tomamosessas ações para proteger a reputação do remetente de cada conta e para impedir que outros usuários doAmazon SES tenham problemas de interrupções do serviço e de capacidade de entrega.

Esta seção contém perguntas frequentes sobre os seguintes tópicos:• Perguntas frequentes sobre contas sob análise (p. 474)• Perguntas frequentes sobre a pausa de envio (p. 477)• Perguntas frequentes sobre devolução (p. 479)• Perguntas frequentes sobre reclamações (p. 482)• Perguntas frequentes sobre spamtrap (p. 486)• Perguntas frequentes sobre investigação manual (p. 488)

Perguntas frequentes sobre contas sob análiseP1. Eu recebi uma mensagem informando que a minha contaestá sob análise. O que isso significa?Detectamos um problema relacionado ao envio de e-mail da sua conta, e estamos oferecendo tempopara você corrigi-lo. Você pode continuar a enviar e-mails normalmente, mas também deverá corrigir oproblema que fez com que sua conta fosse colocada sob análise. Se você não corrigir o problema antes deo período de análise terminar, poderemos pausar sua capacidade de enviar e-mails adicionais.

P2. Sempre serei notificado se minha conta for colocada sobanálise?Sim. Você receberá uma notificação no endereço de e-mail associado à sua conta da AWS.

474

Page 482: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorContas sob análise

P3. Por que eu não recebi uma notificação informando que aminha conta está sob análise?Quando sua conta é colocada sob análise, nós automaticamente enviamos uma notificação para oendereço de e-mail associado à sua conta da AWS. Esse é o endereço de e-mail que você especificouquando criou sua conta da AWS. Em alguns casos, esse endereço de e-mail pode ser diferente daqueleque é usado para enviar e-mails usando o Amazon SES.

Nós recomendamos que você monitore a reputação do remetente consultando regularmente oPainel de reputação (p. 360). Você também pode configurar alarmes automatizados no AmazonCloudWatch (p. 374). Esses alarmes podem enviar uma notificação quando as métricas de reputaçãoexcedem determinados limites. Também é possível configurar o Amazon CloudWatch para entrar emcontato com você de outras maneiras, por exemplo, enviando uma mensagem de texto ao seu celular.

P4. O fato da minha conta do Amazon SES estar sob análiseafetará o meu uso de outros serviços da AWS?Você ainda poderá usar outros serviços da AWS enquanto sua conta do Amazon SES estiver sob análise.No entanto, se você solicitar um aumento na cota de serviço para outro serviço da AWS que enviacomunicações de saída (como o Amazon SNS), essa solicitação poderá ser negada até que o período deanálise da sua conta do Amazon SES seja suspenso.

P5. O que devo fazer se minha conta estiver sob análise?Você deverá fazer o seguinte:

• Se a sua situação permitir, interrompa o envio de e-mails até corrigir o problema. Você ainda pode enviare-mails enquanto sua conta estiver sob análise. No entanto, se você continuar a enviar e-mails semfazer alterações, é possível que o problema piore inadvertidamente.

• Examine o e-mail que você recebeu de nós para ver um resumo do problema.• Investigue o envio para determinar quais aspectos do seu envio acionaram especificamente o problema.• Após fazer alterações que acredita que resolverão o problema, envie um e-mail para ses-

[email protected] a partir do endereço de e-mail associado à sua conta da AWS. Na mensagem,forneça informações detalhadas sobre as etapas que tiver feito para resolver o problema e descrevacomo essas etapas evitam que o problema ocorra novamente no futuro.

• Forneça as informações que solicitarmos especificamente. Precisamos dessas informações para avaliarseu caso.

P6. O que é uma análise?Você pode solicitar uma revisão da nossa decisão de colocar sua conta sob análise. Consulte a próximapergunta para obter mais informações sobre como solicitar uma revisão.

P7. Como faço para solicitar uma revisão?Para solicitar uma revisão, envie um e-mail para [email protected] a partir do endereço de e-mailassociado à sua conta da AWS.

Important

Para proteger a segurança da sua conta, só podemos responder a solicitações de revisão queforem enviadas a partir do endereço de e-mail associado à sua conta da AWS.

Na solicitação, forneça as seguintes informações:

475

Page 483: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorContas sob análise

• As informações sobre a causa raiz do evento que fez com que sua conta fosse colocada sob análise.• Uma lista das alterações que foram feitas para corrigir o problema. Somente incluir as etapas que você

já tiver implementado, e não as etapas que você pretende implementar no futuro.• Informações sobre como essas alterações impedem que o mesmo problema ocorra novamente no

futuro.

Dependendo da natureza do evento que nos levou a colocar sua conta sob análise, nós podemos exigirinformações adicionais. Consulte o tópico de perguntas frequentes associado ao problema que você tevepara obter uma lista das informações que devem ser incluídas na solicitação.

P8. O que acontece se a minha solicitação de revisão não foraceita?Vamos responder à sua solicitação com informações sobre o motivo de não aceitarmos. Em alguns casos,você poderá enviar outra solicitação se conseguir demonstrar que você resolveu o problema, e que asalterações impedem que o problema ocorra novamente no futuro.

P9. Vocês podem me ajudar a diagnosticar o problema?Normalmente, podemos dar somente uma visão geral de alto nível de seu problema (por exemplo, se vocêtem problema com devoluções). Você precisará investigar a causa raiz de sua parte.

P10. Como posso saber se a minha conta não está mais sobanálise?O painel de reputação inclui informações sobre o status atual da sua conta. Para obter mais informações,consulte Uso do painel de reputação para acompanhar as taxas de devolução e reclamação (p. 360).

P11. A minha conta é colocada sob análise sempre que houverum problema?Não. Em algumas situações, poderemos pausar a capacidade de sua conta enviar e-mails sem antescolocar sua conta sob análise. Por exemplo:

• Se o problema for muito grave.• Se a sua conta tiver sido colocada sob análise pelo mesmo problema várias vezes no passado. Por esse

motivo, é importante resolver o problema subjacente em vez de apenas resolver o incidente específicoque levou sua conta a ser colocada sob análise. Por exemplo, se uma determinada campanha fez comque sua conta fosse colocada sob análise, é necessário fazer mais do que simplesmente interromper acampanha. Você precisa determinar quais propriedades da campanha foram problemáticas e garantirque existem processos implementados, de forma que as campanhas futuras não tenham o mesmoproblema.

Em ambas as situações, enviaremos automaticamente uma notificação quando a capacidade de sua contaenviar e-mails for pausada.

P12. O que acontece se eu fizer correções pouco antes doperíodo de análise expirar?Envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta daAWS. Na mensagem, nos informe que você resolveu o problema.

476

Page 484: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausas de envio

P13. Posso obter ajuda do meu representante da AWS ou doPremium Support?Se você já estiver trabalhando com um representante de conta da AWS, entraremos em contato comele automaticamente quando sua conta for colocada sob análise. O representante da conta talvez possafornecer informações adicionais para ajudá-lo a compreender melhor o problema. Se você usa o PremiumSupport, também deve entrar em contato com a equipe de ajuda adicional.

Perguntas frequentes sobre a pausa de envioP1. Eu recebi uma mensagem informando que a capacidade daminha conta enviar e-mails foi pausada. O que isso significa?Nós pausamos a capacidade de sua conta enviar e-mails devido a um problema crítico com e-mailsenviados. Na maioria dos casos, pausamos contas devido a um dos seguintes motivos:

• Sua conta já foi colocada sob análise anteriormente. Os problemas que nos fizeram colocar sua contasob análise não forem corrigidos antes do final do período de análise, por isso pausamos a capacidadede sua conta enviar e-mails.

• Colocamos sua conta sob análise várias vezes pelo mesmo problema.• Sua conta enviou um e-mail que violou os Termos de serviço da AWS. Se essas violações forem sérias,

poderemos pausar a capacidade de sua conta enviar e-mails sem antes colocar sua conta sob análise.

P2. Sempre serei notificado se a capacidade da minha contaenviar e-mail for pausada?Sim. Você receberá uma notificação no endereço de e-mail associado à sua conta da AWS.

P3. A capacidade da minha conta enviar e-mails foi pausada. Porque não recebi uma notificação?Quando pausamos capacidade de uma conta enviar e-mails, enviamos automaticamente uma notificaçãoao endereço de e-mail correspondente a essa conta.

Note

Quando você cria uma conta da AWS, deve fornecer um endereço de e-mail. É possível alteraresse endereço a qualquer momento. Para obter mais informações sobre como alterar o endereçode e-mail correspondente à conta da AWS, consulte Gerenciamento de uma conta da AWS noGuia do usuário do AWS Billing and Cost Management.

Você pode usar o Amazon CloudWatch para criar alarmes que informam quando suas taxas de devoluçãoe reclamação estão muito altas. É aconselhável criar um alarme para receber um aviso antecipado dosfatores que podem impedir que sua conta envie e-mails. No entanto, existem outros fatores de devoluçãoe reclamação que podem nos levar a impedir que você envie e-mails. Para obter mais informações sobrecomo criar alarmes no CloudWatch, consulte Criação de alarmes de monitoramento de reputação com oCloudWatch (p. 374).

Você pode usar também o painel de capacidade de entrega (p. 360) para determinar o status atual desua conta. Por exemplo, se no momento sua conta estiver impedida de enviar e-mails, a seção Accountstatus (Status da conta) do painel de capacidade de entrega exibirá o status SENDING PAUSE (PAUSADE ENVIO). Se sua conta estiver enviando e-mails normalmente, exibirá o status HEALTHY (Íntegra).

477

Page 485: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPausas de envio

Por fim, você pode verificar o AWS Personal Health Dashboard (PHD) no https://phd.aws.amazon.com/para determinar se no momento a capacidade de sua conta enviar e-mails está pausada. Quandopausamos a capacidade de sua conta enviar e-mails, adicionamos automaticamente um evento de SESsending paused (Envio do SES pausado) à seção Event log (Log de eventos) do PHD. O evento de SESsending paused (Envio do SES pausado) sempre tem o status Closed (Fechado), independentemente de acapacidade de sua conta enviar e-mails estar pausada no momento. O log de eventos também inclui umacópia do e-mail que enviamos no endereço de e-mail correspondente à conta da AWS quando ocorre umevento de pausa de envio.

Você pode usar o CloudWatch para criar um alarme para alertá-lo quando novos eventos forem exibidosem seu painel de status pessoal. Para obter mais informações, consulte Monitoramento de eventos doIntegridade da AWS com o Eventos do CloudWatch no Guia do usuário do AWS Health.

P4. A capacidade da minha conta enviar e-mails foi pausada.Isso afeta a minha capacidade de usar outros serviços da AWS?Você ainda pode usar outros serviços da AWS enquanto a capacidade de sua conta enviar e-mailsestiver pausada. No entanto, se você solicitar um aumento na cota de serviço para outro serviço da AWSque envia mensagens de saída (como o Amazon SNS), poderemos negar essa solicitação até que acapacidade de envio de e-mails da sua conta seja restaurada.

P5. O que devo fazer se a capacidade da minha conta enviar e-mails for pausada?Você deverá fazer o seguinte:

• Examine o e-mail que você recebeu de nós para ver um resumo do problema.• Investigue o envio para determinar quais aspectos do seu envio acionaram especificamente o problema.• Após fazer alterações que acredita que resolverão o problema, envie um e-mail para ses-

[email protected] a partir do endereço de e-mail associado à sua conta da AWS. Na mensagem,forneça informações detalhadas sobre as etapas que tiver feito para resolver o problema e descrevacomo essas etapas evitam que o problema ocorra novamente no futuro.

• Forneça as informações que solicitarmos especificamente. Precisamos dessas informações para avaliarseu caso.

P6. O que é uma análise?Você pode solicitar uma revisão da nossa decisão de colocar sua conta sob análise. Consulte a próximapergunta para obter mais informações sobre como solicitar uma revisão.

P7. Como faço para solicitar uma revisão?Para solicitar uma revisão, envie um e-mail para [email protected] a partir do endereço de e-mailassociado à sua conta da AWS.

Important

Para proteger a segurança da sua conta, nós só pode responder a solicitações que são enviadasa partir do endereço de e-mail associado à sua conta da AWS.

Na solicitação, forneça as seguintes informações:

• Informações sobre o que causou o problema.• Uma lista das alterações que foram feitas para corrigir o problema. Somente incluir as etapas que você

já tiver implementado, e não as etapas que você pretende implementar no futuro.

478

Page 486: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorDevoluções

• Informações sobre como essas alterações impedirão que o mesmo problema ocorra novamente nofuturo.

Dependendo da natureza do evento que nos levou a pausar a capacidade da sua conta enviar e-mails,poderemos exigir informações adicionais. Consulte o tópico de perguntas frequentes associado aoproblema que você teve para obter uma lista das informações que devem ser incluídas na solicitação.

P8. O que acontece se a minha solicitação não for aceita?Vamos responder à sua solicitação com informações sobre o motivo de não aceitarmos. Em alguns casos,você poderá enviar outra solicitação se conseguir demonstrar que você resolveu o problema, e que asalterações impedem que o problema ocorra novamente no futuro.

P9. Vocês podem me ajudar a diagnosticar o problema?Normalmente, podemos dar somente uma visão geral de alto nível de seu problema (por exemplo, se vocêtem problema com devoluções). A correção do problema é responsabilidade sua.

P10. Como posso saber se a capacidade de enviar e-mails daminha conta foi restabelecida?O painel de reputação inclui informações sobre o status atual da sua conta. Para obter mais informações,consulte Uso do painel de reputação para acompanhar as taxas de devolução e reclamação (p. 360).

P11. Posso obter ajuda do meu representante da AWS ou doPremium Support?Se você já estiver trabalhando com um representante de conta da AWS, entraremos em contato com eleautomaticamente se pausarmos a capacidade da sua conta enviar e-mails. O representante da contatalvez possa fornecer informações adicionais para ajudá-lo a compreender melhor o problema. Se vocêusa o Premium Support, também deve entrar em contato com a equipe de ajuda adicional.

Perguntas frequentes sobre devoluçãoP1. Por que você se preocupa com minhas devoluções?As altas taxas de devolução são comumente usadas por entidades como provedores de e-mail eorganizações antispam para detectar remetentes que tomem parte em práticas de envio de e-mailsincorretas. As altas taxas de devolução podem levar ao envio de e-mail para a pasta de spam em vez dacaixa de entrada.

P2. O que devo fazer se receber uma notificação informandoque a minha conta está sob análise ou que o envio está pausadodevido à taxa de devoluções da minha conta?Identifique a causa do problema e, em seguida, corrija-o. Após fazer alterações que acredita queresolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mailassociado à sua conta da AWS. Na mensagem, forneça informações detalhadas sobre as etapas que tiverfeito para resolver o problema e descreva como essas etapas evitam que o problema ocorra novamente nofuturo. Inclua também as seguintes informações:

• O método que você usa para rastrear suas devoluções

479

Page 487: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorDevoluções

• Como você garante que os endereços de e-mail dos novos destinatários são válidos antes de enviara eles. Por exemplo, quais das recomendações você está seguindo em P11. O que posso fazer paraminimizar devoluções? (p. 481)

P3. Que tipos de devoluções contam para minha taxa dedevoluções?Sua taxa de devoluções inclui apenas devoluções definitivas para domínios ainda não verificados.Devoluções definitivas são falhas de entrega permanente, como "endereço não existe". Falhasintermitentes e temporárias, como uma "caixa postal cheia", ou devoluções por endereços IP bloqueados,não contam para sua taxa de devoluções.

P4. Vocês revelam as taxas de devoluções que podem fazer comque a minha conta seja colocada sob análise ou que podem fazercom que o envio seja pausado?Para obter os melhores resultados, você deve manter uma taxa de devolução abaixo de 2%. Taxas dedevolução mais altas podem afetar a entrega de seus e-mails.

Se a taxa de devoluções for de 5% ou superior, colocaremos sua conta sob análise. Se a taxa dedevoluções for 10% ou superior, poderemos pausar a capacidade da sua conta enviar e-mails adicionaisaté que você resolva o problema que resultou na alta taxa de devoluções.

P5. Ao longo de qual período minha taxa de devoluções écalculada?Nós não calculamos sua taxa de devoluções com base em um período fixo, porque diferentes remetentesenviam em taxas diferentes. Em vez disso, analisamos um volume representativo, uma quantidade de e-mails que representa as suas práticas típicas de envio. Para ser justo com remetentes de alto e pequenovolume, o volume representativo é diferente para cada usuário e muda conforme os padrões de envio dousuário.

P6. Posso calcular minha própria taxa de devoluções usandoas informações do console do Amazon SES ou da API doGetSendStatistics?Não. A taxa de devoluções é calculada usando o volume representativo (consulte P5. Ao longode qual período minha taxa de devoluções é calculada? (p. 480)). Dependendo da sua taxa deenvios, a taxa de devoluções poderá pegar uma época ainda anterior que o console do Amazon SESou a GetSendStatistics conseguem recuperar. Além disso, apenas os e-mails para domíniosnão verificados são considerados ao calcular a taxa de devoluções. No entanto, se você monitorarregularmente suas taxas de devoluções usando esses métodos, ainda terá um bom indicador que podeusar para prever os problemas antes que atinjam níveis que nos fazem colocar sua conta sob análise oupausar a capacidade da sua conta enviar e-mails.

P7. Como posso descobrir quais endereços de e-maildevolveram?Examine as notificações de devolução que o Amazon SES lhe envia. O endereço de e-mail ao qualo Amazon SES encaminha as notificações depende de como você enviou as mensagens originais,conforme descrito em Notificações do Amazon SES via e-mail (p. 259). Você também pode configurar

480

Page 488: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorDevoluções

notificações de devolução pelo Amazon Simple Notification Service (Amazon SNS), conforme descrito emMonitoramento com o uso de notificações do Amazon SES (p. 258). Observe que simplesmente removerendereços devolvidos da sua lista, sem investigação adicional, pode não resolver o problema subjacente.Para obter informações sobre o que você pode fazer para reduzir as devoluções, consulte P11. O queposso fazer para minimizar devoluções? (p. 481).

P8. Se eu não estiver monitorando minhas devoluções, vocêspodem me dar uma lista de endereços que devolveram?Não, não podemos fornecer uma lista completa de endereços que causaram uma devolução. Você éresponsável por monitorar e agir sobre as devoluções da sua conta.

P9. Como devo lidar com devoluções?Você precisa remover os endereços que devolveram da sua lista de e-mails e interromper o envio de e-mail a eles imediatamente. Se você enviar poucas mensagens, pode bastar simplesmente monitorar asdevoluções por e-mail e remover os endereços devolvidos manualmente da lista de correspondência. Se oseu volume for maior, pode ser conveniente automatizar esse processo, seja por meio de processamentoprogramático da caixa postal onde você recebe as devoluções ou por meio da criação de notificaçõesde devolução pelo Amazon SNS. Para obter mais informações, consulte Monitoramento com o uso denotificações do Amazon SES (p. 258).

P10. Meus e-mails podem estar sendo devolvidos porque euatingi as cotas de envio?Não. As devoluções não estão relacionadas às cotas de envio. Se você tentar exceder as cotas de envio,receberá um erro da API do Amazon SES ou da interface SMTP quando tentar enviar um e-mail.

P11. O que posso fazer para minimizar devoluções?Primeiro, você deve estar ciente das suas devoluções (consulte P7. Como posso descobrir quaisendereços de e-mail devolveram? (p. 480)). Depois, siga estas diretrizes:

• Não compre, não alugue nem compartilhe endereços de e-mail. Envie e-mails somente aos destinatáriosque solicitaram explicitamente receber seus e-mails.

• Remova os endereços de e-mail devolvidos da sua lista.• Em formulários da Web, solicite que os usuários insiram os endereços de e-mail duas vezes e verifique

se os endereços são iguais antes de enviar o formulário.• Use a inclusão dupla para cadastrar novos usuários. Ou seja, quando um novo usuário se cadastrar,

envie a ele um e-mail de confirmação no qual ele precisará clicar antes de receber e-mails adicionais.Isso impede que as pessoas cadastrem outras pessoas, bem como cadastramentos acidentais.

• Se você precisar enviar para endereços que não tem enviado ultimamente (e, portanto, não for possívelter certeza de que os endereços ainda são válidos), faça isso com apenas uma pequena parte doseu envio geral. Para obter mais informações, consulte nossa postagem de blog Nunca envie paraendereços antigos – mas e se você precisar?

• Certifique-se de que você não está estruturando o cadastramento de forma a incentivar as pessoasa usarem endereços fictícios. Por exemplo, não agregue valor nem forneça benefícios até que osdestinatários verifiquem seus endereços.

• Se você tiver um recurso de "enviar para um amigo", use o CAPTCHA ou um mecanismo semelhantepara desencorajar o uso automatizado do recurso e não permita que o usuário insira nenhum conteúdoarbitrário.

• Se você estiver usando o Amazon SES para notificações do sistema, certifique-se de que está enviandoas notificações para endereços reais que podem receber e-mails. Além disso, considere desligar asnotificações de que você não precisar.

481

Page 489: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorReclamações

• Se você estiver testando um novo sistema, verifique se está enviando para endereços reais que podemreceber e-mails ou se você está usando o simulador de caixa postal do Amazon SES. Para obter maisinformações, consulte Teste de envio de e-mail no Amazon SES (p. 187).

Perguntas frequentes sobre reclamaçõesP1. O que é uma reclamação?Uma reclamação ocorre quando um destinatário relata que não quer receber um e-mail. Ele pode clicarno botão "Denunciar como spam" do cliente de e-mail dele, reclamar para o provedor de e-mail, notificardiretamente o Amazon SES ou por meio de algum outro método. Este tópico inclui informações geraissobre reclamações. Se sua notificação contiver informações específicas sobre a origem das reclamações,leia também o tópico relevante: Perguntas frequentes sobre reclamações do Amazon SES por meio deciclos de comentários (p. 483), Perguntas frequentes sobre reclamações do Amazon SES diretamentedos destinatários (p. 485) ou Perguntas frequentes sobre reclamações do Amazon SES através dosprovedores de e-mail (p. 486).

P2. Por que você se preocupa com minhas reclamações?As taxas elevadas de reclamação são frequentemente usadas por entidades como provedores de e-maile organizações antispam como indicadores de que um remetente está enviando para destinatários quenão se cadastraram especificamente para receber e-mails, ou que o remetente está enviando conteúdodiferente do tipo para o qual os destinatários se registraram.

P3. O que devo fazer se receber um aviso informando que aminha conta está sob análise ou que o envio está pausadodevido a um problema com reclamações?Revise seu processo de aquisição de lista e o conteúdo dos seus e-mails para tentar entender por que osdestinatários podem não estar gostando do e-mails que estão recebendo. Identifique a causa do problemae, em seguida, corrija-o. Após fazer alterações que acredita que resolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Namensagem, forneça informações detalhadas sobre as etapas que tiver feito para resolver o problema edescreva como essas etapas evitam que o problema ocorra novamente no futuro.

P4. O que posso fazer para minimizar reclamações?Primeiro, monitore as reclamações sobre as quais o Amazon SES pode notificá-lo, que são reclamaçõesque o Amazon SES recebe por meio de ciclos de comentários do provedor de e-mail (consulte a Perguntasfrequentes sobre reclamações do Amazon SES por meio de ciclos de comentários (p. 483)). Depois, sigaestas diretrizes:

• Não compre, não alugue nem compartilhe endereços de e-mail. Use apenas os endereços queespecificamente solicitaram sua mensagem.

• Use a inclusão dupla para cadastrar novos usuários. Ou seja, quando os usuários se cadastrarem, enviea eles um e-mail de confirmação no qual eles precisam clicar antes de receberem e-mails adicionais.Isso impede que as pessoas cadastrem outras pessoas, bem como cadastramentos acidentais.

• Monitore o engajamento com os e-mails que você envia e interrompa o envio para destinatários que nãoabrirem nem clicarem nas suas mensagens.

• Quando novos usuários se cadastrarem, seja claro quanto ao tipo de e-mail que eles receberão de vocêe garanta o envio apenas o tipo de e-mail no qual eles se registraram. Por exemplo, se os usuários secadastrarem em notícias, não envie anúncios.

• Sua mensagem deve estar bem formatada e ter um aspecto profissional.

482

Page 490: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorReclamações

• O e-mail deve ser claramente seu e não pode ser confundido com alguma outra coisa.• Forneça aos usuários uma maneira fácil e óbvia para cancelar a assinatura do seu e-mail.

Perguntas frequentes sobre reclamações do Amazon SES pormeio de ciclos de comentáriosEste tópico fornece informações sobre reclamações que o Amazon SES recebe de provedores de e-mailpor meio de ciclos de comentários. Para ver informações gerais aplicáveis a todos os tipos de reclamação,consulte Perguntas frequentes sobre reclamações (p. 482).

P1. Como esse tipo de reclamação é relatada?

A maioria dos programas de cliente de e-mail fornece um botão chamado "Marcar como spam", oualgo semelhante, que move a mensagem para uma pasta de spam e a encaminha ao provedor de e-mail. Além disso, a maioria dos provedores de e-mail mantém um endereço de abuso (por exemplo,[email protected]), para onde os usuários podem encaminhar e-mails indesejados e solicitar que oprovedor de e-mail execute uma ação para impedi-los. Se o Amazon SES tiver um ciclo de comentários(FBL) configurado com o provedor de e-mail, este enviará a reclamação de volta para o Amazon SES.

P2. Essas reclamações estão incluídas na estatística de taxa dereclamação exibida no console do Amazon SES e apresentada pela API doGetSendStatistics?

Sim. No entanto, a estatística da taxa de reclamações não inclui reclamações dos provedores de e-mailque não fornecem feedback ao Amazon SES. A taxa de reclamações de domínios que fornecem feedbackprovavelmente é representativa do restante do seu envio também.

P3. Como posso ser notificado sobre essas reclamações?

Você pode ser notificado por e-mail ou por meio de notificações do Amazon SNS. Consulte as instruçõesde configuração em Monitoramento com o uso de notificações do Amazon SES (p. 258).

P4. O que devo fazer se receber uma notificação de reclamação por e-mail ou porAmazon SNS?

Primeiro, você precisa remover os endereços que geraram reclamações da sua lista de e-mails einterromper o envio de e-mail a eles imediatamente. Não envie um e-mail que diz que você recebeu asolicitação para cancelar a assinatura. Considere a possibilidade de configurar a automação para esseprocesso, seja por meio de processamento programático da caixa postal onde você recebe reclamaçõesou por meio da criação de notificações pelo Amazon SNS. Para obter mais informações, consulteMonitoramento com o uso de notificações do Amazon SES (p. 258).

Em seguida, verifique atentamente o envio para determinar por que os destinatários não apreciam oe-mail que você está enviando e resolva o problema subjacente. Para cada pessoa que reclama, hápotencialmente dezenas que não gostam do seu e-mail e que não reclamaram (ou que não conseguiramreclamar). Se você só remover os destinatários que de fato reclamam, não estará resolvendo o problemafundamental.

P5. Vocês revelam as taxas de reclamações do Amazon SES que podem fazercom que a minha conta seja colocada sob análise ou que podem resultar napausa da capacidade da minha conta enviar e-mails?

Para obter os melhores resultados, você deve manter uma taxa de reclamação abaixo de 0,1%. Taxas dereclamação mais altas podem afetar a entrega de seus e-mails.

483

Page 491: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorReclamações

Se a taxa de reclamações for de 0,1% ou superior, colocaremos sua conta sob análise. Se a taxa dereclamações for 0,5% ou superior, poderemos pausar a capacidade da sua conta enviar e-mails adicionaisaté que você resolva o problema que resultou na alta taxa de reclamações.

P6. Ao longo de qual período minha taxa de reclamações é calculada?

Nós não calculamos sua taxa de reclamações com base em um período fixo, porque diferentes remetentesenviam em taxas diferentes. Em vez disso, analisamos um volume representativo, uma quantidade demensagens que representa as suas práticas típicas de envio. Para ser justo com remetentes de alto epequeno volume, o volume representativo é diferente para cada usuário e muda conforme os padrõesde envio do usuário. Além disso, a taxa de reclamações não é calculada com base em cada e-mail. Emvez disso, ela é calculada como a porcentagem de reclamações no e-mail enviado para os domínios queenviam feedback de reclamação para Amazon SES.

P7. Posso calcular minha própria taxa de reclamações usando as métricas doconsole do Amazon SES ou da API do GetSendStatistics?

Não. Há dois motivos principais para isso:

• A taxa de reclamações é calculada usando o volume representativo (consulte P6. Ao longo de qualperíodo minha taxa de reclamações é calculada? (p. 484)). Dependendo da sua taxa de envios, ataxa de reclamações poderá pegar uma época ainda anterior que o console do Amazon SES ou aAPI GetSendStatistics conseguem recuperar. Por esse motivo, recomendamos que você useregularmente esses métodos para monitorar a taxa de reclamações para sua conta. Monitorar sua taxade reclamações dessa forma fornece as informações que você precisa para identificar os problemasantes que eles atinjam níveis capazes de afetar a entrega de seus e-mails.

• Ao calcular a taxa de reclamações, nem todo e-mail conta. A taxa de reclamações é calculada comoporcentagem de reclamações no e-mail enviado para os domínios que enviam feedback de reclamaçãopara Amazon SES.

P8. Como posso descobrir quais endereços de e-mail reclamaram?

Examine as notificações de reclamações que o Amazon SES envia a você por e-mail ou pelo Amazon SNS(consulte Monitoramento com o uso de notificações do Amazon SES (p. 258)). No entanto, provedoresde e-mail diferentes fornecem diferentes quantidades de informações, e alguns provedores ocultamo endereço de e-mail do destinatário antes de repassar a notificação da reclamação para o AmazonSES. Para permitir que você encontre o endereço de e-mail do destinatário no futuro, a melhor opção éarmazenar seu próprio mapeamento entre um identificador e o ID de mensagem do Amazon SES que oAmazon SES transmite de volta ao aceitar o e-mail. Observe que o Amazon SES não mantém os IDs demensagem personalizados que você adiciona.

P9. Se eu não estiver monitorando minhas reclamações, vocês podem me daruma lista de endereços que reclamaram?

Infelizmente, não podemos oferecer a você uma lista abrangente. No entanto, você pode monitorarreclamações futuras por e-mail ou pelo Amazon SNS.

P10. Posso obter um exemplo de e-mail?

Não é possível enviar um exemplo de e-mail mediante solicitação, mas você pode encontrar essainformação na notificação da reclamação. Para obter mais informações, consulte P8. Como possodescobrir quais endereços de e-mail reclamaram? (p. 484).

484

Page 492: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorReclamações

Perguntas frequentes sobre reclamações do Amazon SESdiretamente dos destinatáriosEste tópico fornece informações sobre reclamações que o Amazon SES recebe diretamente dedestinatários. Para ver informações gerais aplicáveis a todos os tipos de reclamação, consulte Perguntasfrequentes sobre reclamações (p. 482).

P1. Como esse tipo de reclamação é relatada?Vários destinatários entraram em contato direto com o Amazon SES sobre seu e-mail por meio de e-mailou outros meios.

P2. Essas reclamações estão incluídas na estatística de taxa dereclamação exibida no console do Amazon SES e apresentada pela API doGetSendStatistics?Não. A estatística da taxa de reclamações recuperada ao usar o console do Amazon SES ou a APIGetSendStatistics só inclui as reclamações que o Amazon SES recebe pelos ciclos de comentários.Para obter mais informações sobre esses tipos de reclamações, consulte Perguntas frequentes sobrereclamações do Amazon SES por meio de ciclos de comentários (p. 483).

P3. Por que não ouvi falar dessas reclamações por notificações de feedback pore-mail ou pelo Amazon SNS?O encaminhamento de feedback de e-mails e as notificações do Amazon SNS só incluem as reclamaçõesque o Amazon SES recebe pelos ciclos de comentários. Você não receberá notificações de reclamaçõesque os destinatários tenham arquivado diretamente com o Amazon SES.

P4. Como posso descobrir quais endereços de e-mail reclamaram?Para proteger as identidades dos destinatários que reclamaram, não podemos listar os endereços de e-mail que reclamaram sobre seu e-mail.

Em vez de se concentrar em remover destinatários individuais da sua lista, recomendamos que vocêdetermine qual foi o problema que provocou as reclamações que estão sendo enviadas. Recomendamosque você comece revisando seu processo de aquisição de clientes e que remova os clientes de sua listaque não solicitaram explicitamente para receber seus e-mails. Você também deve analisar o conteúdo dosseus e-mails para tentar entender por que os destinatários estão reclamando.

P5. Posso obter um exemplo de e-mail?Para proteger as identidades dos destinatários que reclamaram, não podemos fornecer cópias dos e-mailsque causaram as reclamações dos destinatários.

P6. O que devo fazer se receber uma notificação informando que a minha contaestá sob análise ou que o envio está pausado devido a reclamações diretas?Mude o seu processo de envio imediatamente, de forma que você só envie mensagens aos destinatáriosque se cadastraram para recebê-las. Além disso, certifique-se de que você está enviando o tipo deconteúdo que seus destinatários se cadastraram para receber. Após fazer alterações que acredita queresolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mailassociado à sua conta da AWS. Na mensagem, forneça informações detalhadas sobre as etapas que tiverfeito para resolver o problema e descreva como essas etapas evitam que o problema ocorra novamente nofuturo.

Se você não solicitar uma revisão dentro de três semanas e nós continuarmos a receber reclamações dedestinatário direto, poderemos pausar a capacidade da sua conta enviar e-mails.

485

Page 493: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSpamtraps

Perguntas frequentes sobre reclamações do Amazon SESatravés dos provedores de e-mailEste tópico fornece informações sobre reclamações que o Amazon SES recebe por meio de provedores dee-mail (também chamados de provedores de caixa postal). Para ver informações gerais aplicáveis a todosos tipos de reclamação, consulte Perguntas frequentes sobre reclamações (p. 482).

P1. Como esse tipo de reclamação é relatada?Um provedor de e-mail relatou ao Amazon SES que um número significativo de seus clientes marcaramseu e-mail como spam. O relatório foi fornecido ao Amazon SES por um meio diferente dos ciclos decomentários descritos no Perguntas frequentes sobre reclamações do Amazon SES por meio de ciclos decomentários (p. 483).

P2. Essas reclamações estão incluídas na estatística de taxa dereclamação exibida no console do Amazon SES e apresentada pela API doGetSendStatistics?Não. A estatística da taxa de reclamações recuperada ao usar o console do Amazon SES ou a APIGetSendStatistics só inclui as reclamações que o Amazon SES recebe pelos ciclos de comentários.

P3. Por que não ouvi falar dessas reclamações por notificações de feedback pore-mail ou pelo Amazon SNS?O encaminhamento de feedback de e-mails e as notificações do Amazon SNS só incluem as reclamaçõesque o Amazon SES recebe pelos ciclos de comentários.

P4. Como posso descobrir quais endereços de e-mail reclamaram?Os provedores de e-mail normalmente não divulgam essas informações. No entanto, em vez de seconcentrar em remover destinatários individuais da sua lista, você precisa se concentrar em localizar ecorrigir o problema. Comece revisando seu processo de aquisição de lista e o conteúdo dos seus e-mailspara tentar entender por que os destinatários podem não estar gostando do seu e-mail.

P5. Posso obter um exemplo de e-mail?Não. Os provedores de e-mail normalmente não fornecem um exemplo de e-mail.

P6. O que devo fazer se receber uma notificação informando que a minhaconta está sob análise ou que o envio está pausado devido a reclamações deprovedores de e-mail?Identifique a causa do problema e, em seguida, corrija-o. Após fazer alterações que acredita queresolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mailassociado à sua conta da AWS. Na mensagem, forneça informações detalhadas sobre as etapas que tiverfeito para resolver o problema e descreva como essas etapas evitam que o problema ocorra novamenteno futuro. Se você não solicitar uma revisão dentro de três semanas e nós continuarmos a receberreclamações de provedores, poderemos pausar a capacidade da sua conta enviar e-mails adicionais.

Perguntas frequentes sobre spamtrapP1. O que são spamtraps?Um spamtrap é um endereço de e-mail especial mantido por um provedor de serviços de Internet (ISP),provedor de e-mail ou uma organização antispam. Como esse endereço nunca se registrou para receber

486

Page 494: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorSpamtraps

e-mails, as organizações que mantêm esses spamtraps sabem que qualquer pessoa que envie e-mailspara um desses endereços provavelmente está envolvida em práticas de e-mail questionáveis.

P2. Como os spamtraps são configurados?Os endereços de spamtrap podem ser configurados de diversas maneiras. Eles podem ser convertidosde endereços válidos anteriormente, mas que foram inutilizados (e devolvidos) por um período extenso.Podem ser endereços configurados somente para serem spamtraps. Eles podem ser endereços incomuns,difíceis de adivinhar e, às vezes, são endereços próximos de endereços reais (por exemplo, inserindoum erro ortográfico em um nome de domínio comum). Muitas vezes, mas não sempre, spamtraps são"implantados" no mundo, colocando-os na Internet em uma variedade de formas.

P3. Como o Amazon SES sabe se eu estou enviando paraspamtraps?Determinadas organizações que usam spamtraps enviam notificações do Amazon SES quando seusspamtraps são atingidos por remetentes do Amazon SES.

P4. Como o Amazon SES usa os relatórios de spamtrap?Nós analisamos os relatórios. Se determinarmos que a sua conta está enviando e-mails para spamtraps,colocaremos a conta sob análise e pediremos que corrija o problema subjacente. Se você não corrigir oproblema antes que o período de análise termine, poderemos pausar a capacidade da sua conta enviar e-mails adicionais. Se o seu problema com spamtraps for muito grave, poderemos pausar a capacidade dasua conta enviar e-mails imediatamente, sem antes colocar sua conta sob análise.

P5. O que devo fazer se receber um aviso informando que aminha conta está sob análise ou que o envio está pausadodevido a um problema com spamtraps?Primeiro, resolva o problema que nos fez colocar sua conta sob análise ou pausar sua capacidade deenviar e-mails. Em seguida, envie um e-mail para [email protected] a partir do endereço de e-mail associado à sua conta da AWS. Na mensagem, forneça informações detalhadas sobre as etapasque tiver feito para resolver o problema e descreva como essas etapas evitam que o problema ocorranovamente no futuro. Se nós concordarmos que as alterações feitas resolvem o problema de formaadequada, cancelaremos o período de análise ou removeremos o pausa de envio da sua conta.

Devido à forma como os acessos de spamtraps são relatados, pode levar até três semanas ou mais antesque possamos determinar se as alterações feitas resolveram o problema.

P6. Quantos acessos de spamtrap posso ter antes que a minhaconta seja colocada sob análise ou antes que capacidade deenviar e-mails seja pausada?Nós não divulgamos o número específico de acessos de spamtrap que fazem com tomemos ações em suaconta. No entanto, é importante observar que até mesmo um pequeno número de acessos de spamtrapspode ter um efeito negativo na sua reputação como remetente, portanto, você deve levar os relatórios despamtrap a sério.

P7. Vocês revelam os endereços de spamtrap?Não. Para que os spamtraps sejam eficazes, é essencial que eles permaneçam confidenciais. Asorganizações de spamtraps divulgam apenas a ocorrência de acessos de spamtraps, não os endereçosem si.

487

Page 495: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorInvestigações manuais

P8. O que posso fazer para evitar o envio para spamtraps?Para reduzir o risco de envio para spamtraps, siga estas diretrizes:

• Não compre, não alugue nem compartilhe endereços de e-mail. Use apenas os endereços queespecificamente solicitaram sua mensagem.

• Em formulários da Web, solicite que os usuários insiram os endereços de e-mail duas vezes e verifiquese os endereços são iguais antes de enviar o formulário.

• Use a inclusão dupla para cadastrar novos usuários. Ou seja, quando os usuários se cadastrarem, enviea eles um e-mail de confirmação no qual eles precisam clicar antes de receberem e-mails adicionais.

• Você deve remover os endereços que tiverem devolução definitiva da sua lista, para que eles sejamremovidos antes de serem convertidos em spamtraps.

• Verifique se você está monitorando o engajamento dos seus destinatários e interrompa o envio paradestinatários que não se engajaram com seus e-mails ou seu site recentemente. Os cronogramas parao que é "usuário engajado" dependem do seu caso de uso, mas em termos gerais se os usuários nãoabriram nem clicaram nos seus e-mails em vários meses, você deve considerar removê-los, a menosque tenha evidências que eles desejam seu e-mail.

• Tenha muito cuidado com campanhas de reengajamento nas quais você intencionalmente entra emcontato com pessoas que não interagiram com você recentemente. Esses esforços tendem a seraltamente arriscados e muitas vezes podem causar problemas não apenas com envio de spamtraps,mas também com devoluções e reclamações.

• Envie uma mensagem de inclusão para toda sua lista de correspondência e mantenha somente osdestinatários que clicaram no link de verificação. Além de remover os destinatários inativos da sua lista,esse procedimento também ajuda a remover endereços de spamtrap. No entanto, não recomendamosusar essa técnica se você achar que sua lista de correspondência pode conter uma grande quantidadede endereços inválidos ou se a sua conta já tiver um problema com devoluções, pois pode fazer comque a taxa de devoluções da sua conta aumente ainda mais.

Perguntas frequentes sobre investigação manualP1. O que devo fazer se receber uma notificação informandoque a minha conta está sob análise ou que o envio está pausadodevido a uma investigação manual?Um investigador do Amazon SES identificou um problema significativo com seu envio. Os problemastípicos incluem, entre outros, os seguintes:

• Seu envio viola a Política de uso aceitável da AWS (AUP).• Seus e-mails parecem não ser solicitados.• Seu conteúdo está associado a um caso de uso ao qual o Amazon SES não oferece suporte.

Se acreditamos que o problema possa ser corrigido, colocaremos sua conta sob análise durante umdeterminado período. Enquanto sua conta estiver sob análise, faça alterações em suas práticas de enviode e-mails para corrigir o problema.

Se não acreditarmos que o problema possa ser corrigido ou se o problema for muito grave, poderemospausar a capacidade da sua conta enviar e-mails sem antes colocar a conta sob análise.

488

Page 496: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorInvestigações manuais

P2. Quais problemas podem fazer com que vocês executem umaanálise manual do meu envio de e-mails?Existem diversos problemas que podem nos levar a iniciar uma análise manual da sua conta. Este motivosincluem, mas não se limitam a, o seguinte:

• Os destinatários entram em contato com o Amazon SES para reclamar sobre e-mails enviados da suaconta.

• Nós detectamos alterações incomuns nos seus padrões de envio de e-mails.• Nosso filtros de spam encontram características dos seus e-mails que são típicas de conteúdo não

solicitado ou de baixa qualidade.

Ao colocar sua conta sob análise ou pausar a capacidade da sua conta enviar e-mails, enviaremos umanotificação. Na maioria dos casos, essa notificação contém informações sobre o problema e forneceinformações sobre as próximas etapas que você pode realizar.

P3. O que são e-mails "não solicitados"?E-mails não solicitados são e-mails que o destinatário não pediu explicitamente para receber. Isso incluicasos nos quais o destinatário se cadastra para determinado tipo de e-mail (por exemplo, notificações) e,em vez disso, recebe um tipo diferente de e-mail (por exemplo, anúncios).

Ao colocar sua conta sob análise ou pausar a capacidade da sua conta enviar e-mails, enviaremos umanotificação. Se você receber uma notificação informando que estamos tomando uma destas ações devidoa um problema com e-mails não solicitados, envie um e-mail para [email protected] a partir doendereço de e-mail associado à sua conta da AWS. Na mensagem, inclua as seguintes informações:

• Todas as mensagens que você envia foram especificamente solicitadas pelo destinatário? E elas estãoem conformidade com a Política de uso aceitável da AWS?

• Você adquiriu endereços de e-mail de alguma forma que não seja um cliente interagir especificamentecom você ou com seu site e solicitando os e-mails? Você deve explicar como adquiriu sua lista decorrespondência.

• Como funcionam seus processos de inscrição e cancelamento de inscrição? Você deve incluir links deinclusão e exclusão.

P4. O que devo fazer se receber uma notificação informandoque a minha conta está sob análise ou que o envio está pausadodevido a uma análise manual?Identifique a causa do problema e, em seguida, corrija-o. Após fazer alterações que acredita queresolverão o problema, envie um e-mail para [email protected] a partir do endereço de e-mailassociado à sua conta da AWS. Na mensagem, forneça informações detalhadas sobre as etapas que tiverfeito para resolver o problema e descreva como essas etapas evitam que o problema ocorra novamenteno futuro. Se nós concordarmos que as alterações feitas resolvem o problema de forma adequada,cancelaremos o período de análise da sua conta.

P5. Que tipos de problemas vocês veem como "corrigíveis?"Geralmente, acreditamos que a situação é corrigível se você tiver histórico de boas práticas de envio ese houver etapas que você pode tomar para eliminar o envio problemático, enquanto dá continuidade aovolume geral dos seus envios. Por exemplo, se você estiver enviando três diferentes tipos de e-mail e

489

Page 497: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPerguntas frequentes sobre listas negras de IP

apenas um tipo for problemático, é possível simplesmente interromper o envio problemático e continuarcom o restante do seu envio.

P6. E se eu não conseguir encontrar a origem do problema?Você pode envie um e-mail para [email protected] a partir do endereço de e-mail associado à suaconta da AWS e solicitar um exemplo do e-mail que causou o problema.

Important

Para proteger a segurança da sua conta, nós só pode responder a solicitações que são enviadasa partir do endereço de e-mail associado à sua conta da AWS.

Perguntas frequentes sobre listas negras de IP doAmazon SES

Listas negras de IP destinam-se a informar os provedores de e-mail sobre endereços da Internet suspeitosde enviar e-mails indesejados. Algumas vezes, essas listas são chamadas de realtime blackhole lists(RBLs) ou DNS-based Blackhole Lists (DNSBLs).

Listas negras diferentes têm impactos diferentes sobre a capacidade de entrega de e-mails. Este tópicodescreve como as listas negras afetam a entrega de e-mails enviados com o Amazon SES, bem comonossas políticas para remover os endereços IP do Amazon SES de listas negras.

Note

Este tópico refere-se a listas negras usadas pelos provedores de e-mail para bloquear mensagensrecebidas. Para obter informações sobre como o Amazon SES bloqueia mensagens enviadaspara destinatários cujos endereços de e-mail já geraram devoluções, consulte Usar a lista desupressão global do Amazon SES (p. 192).

P1. Como as listas negras afetam a entrega de e-mail?Listas negras diferentes têm impactos diferentes sobre a entrega bem-sucedida de uma mensagem. Osprincipais provedores de e-mail — como o Gmail, Hotmail, AOL e Yahoo — reconhecem um númeromuito pequeno de listas negras bem conceituadas, como aquelas oferecidas pela Spamhaus. Na nossaexperiência, outras listas negras tendem a ter um baixo impacto, embora alguns sistemas de e-mailenfatizem determinadas listas negras sobre outras.

Concluindo, muitos provedores de e-mail têm suas próprias listas negras internas. Eles preservam essaslistas de uma maneira bastante rigorosa e raramente as compartilham com o público. Se um endereçoIP estiver em uma dessas listas, pode ter grande impacto sobre a capacidade de enviar e-mails paradestinatários que usam esse provedor.

P2. Como os endereços IP acabam entrando em umalista negra?Um endereço IP pode acabar em uma lista negra por vários motivos. Os endereços IP podem seradicionados a listas negras ao enviarem um e-mail para um spamtrap. Um spamtrap é um endereço de e-mail que não pertence a um usuário humano. O spamtraps existem somente para coletar spam e identificarspammers. Algumas listas negras também permitem que usuários específicos enviem endereços IP.Algumas permitem até que os usuários enviem um intervalo inteiro de endereços IP. Outras listas negras

490

Page 498: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPerguntas frequentes sobre listas negras P3

são mantidas por meio de contribuições por administradores de e-mails e podem incluir endereços IP queos administradores acreditam estarem abusando de seus próprios sistemas.

P3. Como o Amazon SES impede que seus endereçosIP apareçam em listas negras?Nossos sistemas procuram sinais de abuso. Se detectarmos padrões de envio ou outras característicasque podem fazer com que um endereço IP seja incluído em uma lista negra, enviaremos uma notificaçãoao remetente. Se a situação for grave ou se o remetente não corrigir o problema após o envio danotificação, pausaremos a capacidade do remetente de enviar e-mails até que resolvam o problema. Impornossas políticas de envio dessa forma ajuda a reduzir as chances de que nossos endereços IP acabemem listas negras.

P4. Os endereços IP do Amazon SES podem serremovidos de uma lista negra?Nós monitoramos ativamente as listas negras que podem afetar a entrega em todo o serviço do AmazonSES ou que podem afetar a capacidade de enviar e-mails para destinatários que usam os principaisprovedores de e-mail, como o Gmail, Yahoo, AOL e Hotmail. As listas negras oferecidas pela Spamhausse encaixam nessa categoria. Quando um dos nossos endereços IP aparece em uma lista que atendeesses critérios, tomamos medidas imediatas para que esse endereço seja removido da lista negra o maisrápido possível.

Nós não monitoramos listas negras que dificilmente afetarão a entrega em todo o serviço do AmazonSES ou que não têm um impacto mensurável sobre a entrega para os principais provedores de e-mail. Aslistas negras oferecidas pela SORBS e UCEPROTECT se enquadram nesta categoria. Devido às práticasespecíficas de listagem e exclusão de listas dos fornecedores que operam essas listas, não podemosremover nossos endereços IP dessas listas.

P5. Um provedor de e-mail está rejeitando meus e-mail porque o endereço IP de envio está listado emuma lista negra que não é da Spamhaus. O que possofazer?Primeiro, confirme se a mensagem foi realmente bloqueada em virtude de uma lista negra de IP. Se seu e-mail tiver sido rejeitado porque o endereço IP de envio encontra-se em uma lista negra, você receberá umanotificação de devolução que menciona o provedor de lista negra por nome, conforme o exemplo a seguir:

554 5.7.1 Service unavailable; Client host [192.0.2.0] blocked using blacklistName; See: http://www.example.com/query/ip/192.0.2.0

Se você recebeu uma notificação de devolução que não contém informações semelhantes às damensagem mostrada no exemplo anterior, é provável que o provedor de e-mail tenha rejeitado suamensagem por um motivo não relacionado a listas negras.

Se você puder confirma que um provedor de e-mail está bloqueando seu e-mail porque o endereço IP deenvio está listado em uma lista negra, existem algumas coisas que você pode fazer:

• Entre em contato com o postmaster do domínio que rejeitou a mensagem para solicitar uma exceçãona política de filtragem de spam. Alguns postmasters têm processos de suporte e podem publicar umapágina de postmaster que descreve esse processo. Se o domínio com o qual estiver tentando entrarem contato não publicar suas políticas de suporte de postmaster, você poderá entrar em contato com o

491

Page 499: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPerguntas frequentes sobre listas negras P6

postmaster enviando um e-mail para [email protected], onde example.com é o domínio emquestão. A RFC 5321 exige que os domínios tenham uma caixa de e-mails de postmaster.

Ao entrar em contato com o postmaster, forneça os códigos de devolução recebidos, os cabeçalhosdo e-mail que está tentando enviar, uma medida do impacto da lista negra sobre a entrega do e-maile informações sobre o motivo pelo qual acredita que o e-mail está sendo bloqueado incorretamente.Quanto mais informações puder fornecer ao postmaster para demonstrar que está enviando um e-maillegítimo, maior será a probabilidade do postmaster abrir uma exceção para você.

• Se o provedor de e-mail não responder ou não estiver disposto a alterar suas políticas, considere usarum endereço IP dedicado (p. 178). Endereços IP dedicados são endereços que somente você podeusar. Ao implementar boas práticas de envio, você pode manter um alto grau de envolvimento e taxasbaixas de devolução, reclamação e acesso de spamtrap. Boas práticas de envio podem ajudar a garantirque seus endereços não acabem em listas negras.

P6. Os e-mails que envio ao Gmail, Yahoo, Hotmailou a outro provedor importante estão sendo enviadospara a pasta de spam. Isso está ocorrendo porquemeu endereço IP de envio está em uma lista negra?Provavelmente não. Se um endereço IP for listado por uma lista negra com impacto significativo, comouma das listas negras do Spamhaus, os principais provedores de e-mails rejeitarão o e-mail desseendereço IP de forma definitiva em vez de enviá-los para a pasta de spam.

Quando os principais provedores de e-mail aceitam um e-mail (em vez de rejeitar), eles geralmenteconsideram o envolvimento do usuário ao determinar se devem colocar a mensagem na caixa de entradaou na pasta de spam. O envolvimento do usuário se refere às formas como os usuários interagem com asmensagens enviadas por você anteriormente.

Para aumentar a probabilidade de que suas mensagens cheguem à caixa de entrada de seus clientes,você deve implementar todas práticas recomendadas a seguir:

• Nunca alugue ou empreste listas de endereços de e-mail. Alugar ou comprar listas é uma violaçãoda Política de uso aceitável da AWS (AUP) e essas práticas não são permitidas no Amazon SES sobqualquer circunstância.

• Envie e-mails somente aos clientes que solicitaram explicitamente para receber seus e-mails. Em muitospaíses e jurisdições ao redor do mundo, é ilegal enviar e-mails para destinatários que não concordaramexplicitamente em receber seus e-mails.

• Pare de enviar e-mail aos clientes que não abriram nem clicaram nos links presentes nas mensagensque você enviou nos últimos 30 a 90 dias. Esta etapa pode ajudar você a manter as taxas deenvolvimento altas, o que aumenta as chances de que as mensagens enviadas por você cheguem àscaixas de entrada dos destinatários no futuro.

• Use elementos de layout e estilos de redação consistentes em todas as mensagens que enviar para queos clientes identifiquem facilmente as mensagens enviadas por você.

• Use mecanismos de autenticação de e-mail, como SPF (p. 133) e DKIM (p. 134).• Quando os clientes usarem um formulário da web para assinar seu conteúdo, envie a eles um e-mail

para confirmar se de fato desejam receber seus e-mails. Não lhes envie e-mails adicionais enquanto nãoconfirmarem se desejam mesmo receber e-mail. Esse processo é conhecido como inclusão confirmadaou inclusão dupla.

• Facilite para que seus clientes cancelem a assinatura e honre as solicitações de cancelamentoimediatamente.

• Se enviar um e-mail que contém links, compare os links com a lista de bloqueio de domínio (DBL) daSpamhaus. Para testar seus links, use a Domain Lookup Tool no site da Spamhaus.

492

Page 500: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorPerguntas frequentes sobre métricas de e-mail

Ao implementar essas práticas, você pode melhorar a reputação do remetente, o que aumenta aprobabilidade de que o e-mail enviado chegue às caixas de entrada dos destinatários. A implementaçãodessas práticas também ajuda a manter as taxas de devolução e reclamação baixas para sua conta e areduzir o risco de envio de e-mails para spamtraps.

Perguntas frequentes sobre métricas de envio de e-mails do Amazon SES

O Amazon SES coleta várias métricas sobre os e-mails que você envia. Essas métricas permitem quevocê analise a eficácia de seu programa de e-mail e monitore estatísticas importantes, como taxas dedevolução e reclamação.

Esta seção contém perguntas frequentes sobre os tópicos a seguir relacionados a métricas de envio de e-mail:

• Perguntas gerais (p. 493)• Rastreamento de abertura (p. 494)• Rastreamento de cliques (p. 494)

Perguntas geraisP1. Após um e-mail ser entregue, por quanto tempo o AmazonSES continua a coletar métricas de abertura e clique?O Amazon SES coleta métricas de abertura e clique por 60 dias após cada e-mail ser enviado.

P2. Se um usuário abrir um e-mail várias vezes ou clicar emum link de e-mail várias vezes, cada um desses eventos serárastreado separadamente?Se um destinatário abrir um e-mail várias vezes, cada instância será contada como um evento de aberturaexclusivo. Da mesma forma, se um destinatário clicar no mesmo link várias vezes, cada clique serácontado como um evento de clique exclusivo.

P3. As métricas de abertura e clique são somadas ou podem sermedidas até o nível do destinatário?As aberturas e os cliques são rastreados até o nível do destinatário. Com o rastreamento de aberturas ecliques, você pode determinar quais destinatários abriram um e-mail ou clicaram em um link de um e-mail.

P4. Posso recuperar métricas de abertura e clique usando a APIdo Amazon SES?A API do Amazon SES não fornece um método para recuperação de métricas de abertura e clique, Noentanto, você pode recuperar as métricas de abertura e clique para o Amazon SES usando a API doCloudWatch. Por exemplo, use a AWS CLI para recuperar métricas de abertura e clique usando a API doCloudWatch emitindo o seguinte comando:

aws cloudwatch get-metric-statistics --namespace AWS/SES --metric-name Click \

493

Page 501: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRastreamento de abertura

--statistics Sum --period 86400 --start-time 2017-01-01T00:00:00Z \ --end-time 2017-12-31T23:59:59Z

O comando exibido acima recupera o número total de eventos de clique para cada dia em 2017. Pararecuperar métricas de abertura, altere o valor do parâmetro metric-name para Open. Você também podemodificar os parâmetros start-time e end-time para alterar o período de análise, ou o parâmetroperiod para uma análise mais refinada.

Rastreamento de aberturaP1. Como funciona o rastreamento de abertura?No final de cada e-mail enviado pelo Amazon SES, inserimos uma imagem GIF transparente de 1 pixelpor 1 pixel. Cada e-mail inclui uma referência exclusiva para esse arquivo de imagem; quando a imagem éaberta, o Amazon SES consegue dizer exatamente qual mensagem foi aberta e por quem.

A adição desse pixel de rastreamento não altera a aparência do seu e-mail.

P2. O rastreamento de abertura é habilitado por padrão?O rastreamento de abertura está disponível a todos os usuários do Amazon SES por padrão. Para usar orastreamento de abertura, você deve fazer o seguinte:

1. Criar um conjunto de configurações.2. No conjunto de configurações, crie um destino de evento.3. Configure o destino do evento para publicar notificações de evento de abertura em um destino.4. Em todos os e-mails dos quais você deseja rastrear a abertura, especifique o conjunto de configurações

criado na etapa 1.

Para uma explicação mais detalhada desse processo, consulte the section called “Monitoramento usandopublicação de eventos” (p. 282).

P3. Posso omitir o pixel de rastreamento de abertura de alguns e-mails?Há duas maneiras de omitir o pixel de rastreamento de abertura do seu e-mails. O primeiro método éenviar o e-mail sem especificar um conjunto de configurações. Como alternativa, você pode especificar umconjunto de configurações que não está configurado para publicar dados sobre eventos de abertura.

P4. Vocês rastreiam as aberturas de e-mails em texto simples?O rastreamento de abertura só funciona com e-mails HTML. Como o rastreamento de abertura dependeda inclusão de uma imagem, não é possível coletar métricas de abertura para usuários que abrem e-mailsusando um cliente de e-mail somente em texto (não HTML).

Rastreamento de cliquesP1. Como funciona o rastreamento de cliques?Para rastrear cliques, o Amazon SES modifica cada link no corpo do e-mail. Quando os destinatáriosclicarem em um link, eles serão enviados a um servidor do Amazon SES e imediatamente encaminhadospara o endereço de destino. Assim como ocorre com o rastreamento de abertura, cada link do

494

Page 502: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRastreamento de cliques

redirecionamento é exclusivo. Isso permite que o Amazon SES determine qual destinatário clicou no link,quando o fez e o e-mail de quais deles chegaram ao link.

Important

Se você enviar uma única mensagem para vários destinatários, cada destinatário salvaráo mesmo link de rastreamento de clique. Para monitorar a atividade dos cliques de cadadestinatário, envie e-mails para um destinatário por operação de envio.

P2. Posso desabilitar o rastreamento de cliques?Você pode desabilitar o rastreamento de cliques adicionando um atributo ses:no-track às tags deâncora no corpo HTML do seu e-mail. Por exemplo, se você criar um link para a página inicial da AWS, umlink de âncora normal será parecido com o seguinte:

<a href="https://aws.amazon.com">Amazon Web Services</a>

Para desativar rastreamento de cliques para esse mesmo link, modifique o link para se parecer com oseguinte:

<a ses:no-track href="aws.amazon.com">Amazon Web Services</a>

Como ses:no-track não é um atributo HTML padrão, nós automaticamente o removemos da versão doe-mail que chega na caixa de entrada dos seus destinatários.

P3. Quantos links podem ser rastreados em cada e-mail?O sistema de rastreamento de cliques pode rastrear um máximo de 250 links.

P4. As métricas de cliques são coletadas para links em e-mailscom texto simples?Para usar o rastreamento de cliques, é preciso enviar e-mails em HTML. Links em e-mails com textosimples não são rastreados pelo Amazon SES.

P5. Posso usar tags em links com identificadores exclusivos?Você pode adicionar um número ilimitado de tags, como pares de chave-valor, a links no seu e-mailusando o atributo ses:tags. Quando você usar esse atributo, especifique as chaves e os valores usandoo mesmo formato que usaria para passar propriedades CSS em linha: digite a chave seguida por doispontos (:) e seguida pelo valor. Se você precisar passar vários pares de chave-valor, separe cada umdeles com ponto-e-vírgula (;).

Por exemplo, vamos supor que você deseje adicionar as tags product:book, genre:fiction,subgenre:scifi, type:newrelease a um link. O link resultante se parecerá com o seguinte:

<a ses:tags="product:book;genre:fiction;subgenre:scifi;type:newrelease;" href="http://www.amazon.com/…/">New Releases in Science Fiction</a>

Essas tags são passadas para seu destino de publicação de eventos, para que você possa executaranálises adicionais nos links específicos que seus usuários clicaram.

Note

Tags de link podem incluir números de 0–9, as letras A–Z (letras maiúsculas e minúsculas), hífens(-) e sublinhados (_).

495

Page 503: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorRastreamento de cliques

P6. Os links rastreados usam o protocolo HTTP ou HTTPS?Os links de rastreamento usam o mesmo protocolo que os links originais no seu e-mail.

Por exemplo, se seu e-mail incluir um link para https://www.amazon.com, o link será substituídopor um link de rastreamento que usa o protocolo HTTPS. Se seu e-mail incluir um link para http://www.example.com, o link será substituído por um link de rastreamento que usa HTTP. Se seu e-mailincluir os dois links mencionados anteriormente, o link HTTPS será substituído por um link de rastreamentoque usa o protocolo HTTPS, e o link HTTP é substituído por um link de rastreamento que usa o protocoloHTTP.

P7. Um link no meu e-mail não está sendo acompanhado. Porque não?O Amazon SES espera que os links de seus e-mails contenham URLs codificadas corretamente.Especificamente, as URLs em seus links devem estar em conformidade com a RFC 3986. Se um linkem um e-mail não estiver codificado corretamente, os destinatários ainda verão o link no e-mail, mas oAmazon SES não acompanhará os eventos de clique desse link.

Normalmente, os problemas relacionados à codificação incorreta ocorrem em URLs que contêmsequências de consulta. Por exemplo, se o URL de um link no seu e-mail contém um caractere de espaçonão codificado na string de consulta (como o espaço entre "John" e "Doe" no exemplo a seguir: http://www.example.com/path/to/page?name=John Doe), o Amazon SES não acompanhará esse link. Noentanto, se o URL usar um caractere de espaço codificado (como "%20" no exemplo a seguir: http://www.example.com/path/to/page?name=John%20Doe), o Amazon SES fará o acompanhamento esperado.

496

Page 504: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Recursos do Amazon SESA tabela a seguir indica os recursos que podem ser úteis quando você trabalha com o Amazon SimpleEmail Service (Amazon SES).

Recurso Descrição

Amazon Simple Email Service APIReference

A referência da API do Amazon SES. Contém descriçõescompletas de ações de API, parâmetros e tipos de dados,além de uma lista de erros que o serviço retorna.

Definição de preço do Amazon SES Informações sobre definição de preço para o Amazon SES.

SES Sending Limits Increase case O formulário do Support Center para solicitar um aumento nascotas de envio e sair da sandbox.

Fórum do Amazon SES O fórum em que os usuários do Amazon SES podem publicarperguntas e discutir vários tópicos do Amazon SES.

Blog de sistema de mensagens eobjetivos da AWS

O blog que contém postagens de blog e anúncios da equipedo Amazon SES.

Ferramentas de desenvolvedor AWS Links para ferramentas de desenvolvedor e recursos quefornecem documentação, exemplos de código, notas derelease e outras informações para ajudar você a criaraplicativos inovadores com a AWS.

AWS Support Center O centro para criar e gerenciar seus casos de suporte daAWS. Também inclui links para outros recursos úteis, comofóruns, perguntas frequentes, status de integridade do serviçoe AWS Trusted Advisor.

Entre em contato conosco Um ponto de contato central para consultas relativas afaturamento, conta, eventos, abuso e outros problemas daAWS.

Glossário da AWS O glossário da AWS. Contém definições de termos comunsusados no Amazon SES e em outros serviços da AWS.

Condições de uso Política de uso aceitável da AWS. Descreve abuso de e-maile outros usos proibidos dos serviços da Web oferecidos pelaAmazon Web Services, Inc.

[email protected] Um endereço de e-mail para relatar e-mails maliciosos ou nãosolicitados (spam) enviados do Amazon SES.

Quando você entrar em contato com esse endereço, forneçaas seguintes informações:

• Os cabeçalhos completos da mensagem de e-mail. Paraobter mais informações sobre a recuperação de cabeçalhosde e-mail, consulte https://support.google.com/mail/answer/22454?hl=en.

• O tipo de abuso que você sofreou. Por exemplo, e-mails não solicitados que não fornecem um método dedesativação.

497

Page 505: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorApêndice: Campos do cabeçalho

Apêndice do Guia do desenvolvedordo Amazon SES

Este apêndice contém informações suplementares sobre o envio de e-mails por meio do Amazon SimpleEmail Service (Amazon SES).

• Para obter os requisitos de campos de cabeçalho para e-mails enviados pelo Amazon SES, consulteApêndice: Campos do cabeçalho (p. 498).

• Para obter uma lista dos tipos de anexos que o Amazon SES não aceita, consulte Apêndice: tipos deanexo sem suporte (p. 500).

Apêndice: Campos do cabeçalhoO Amazon SES pode aceitar todos os cabeçalhos de e-mail que sigam o formato descrito na RFC 822.

Os seguintes campos não podem aparecer mais de uma vez na seção de cabeçalho de uma mensagem:

• Accept-Language• acceptLanguage

Note

Esse campo é não padrão. Se for possível, você deverá usar o cabeçalho Accept-Language.• Archived-At• Auto-Submitted• Bounces-to• Comentários• Content-Alternative• Content-Base• Content-Class• Content-Description• Content-Disposition• Content-Duration• Content-ID• Content-Language• Content-Length• Content-Location• Conteúdo-MD5• Content-Transfer-Encoding• Content-Type:• Data

Note

Se você especificar um cabeçalho Date, o Amazon SES o substituirá por um time stampcorrespondente à data e hora no fuso horário UTC de quando o Amazon SES aceitou amensagem.

498

Page 506: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorApêndice: Campos do cabeçalho

• Delivered-To• Disposition-Notification-Options• Disposition-Notification-To• DKIM-Signature• DomainKey-Signature• Errors-To• From• Importance• In-Reply-To• Keywords• List-Archive• List-Help• List-Id• List-Owner• List-Post• List-Subscribe• List-Unsubscribe• Message-Context• Message-ID

Note

Se você fornecer um cabeçalho Message-ID, o Amazon SES substituirá o cabeçalho por seupróprio valor.

• MIME-Version• Organization• Original-From• Original-Message-ID• Original-Recipient• Original-Subject• Precedence• Priority• Referências• Reply-To• Return-Path

Note

Se você especificar um cabeçalho Return-Path, o Amazon SES enviará notificações dedevolução e reclamação para o endereço especificado. No entanto, a mensagem que seusdestinatários recebem contém um valor diferente para o cabeçalho Return-Path.

• Return-Receipt-To• Sender• Solicitation• Sensitivity• Subject• Thread-Index• Thread-Topic• Agente de usuário

499

Page 507: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedorApêndice: tipos de anexo sem suporte

• VBR-Info

Apêndice: tipos de anexo sem suporteVocê pode enviar mensagens com anexos por meio do Amazon SES usando o padrão MultipurposeInternet Mail Extensions (MIME). O Amazon SES aceita todos os tipos de anexos de arquivos, excetoanexos com as extensões de arquivo na lista a seguir.

Note

Alguns ISPs têm outras restrições (como restrições relativas a anexos arquivados), por isso,recomendamos testar o envio de e-mails usando os principais ISPs antes de enviar e-mails deprodução.

.ade

.adp

.app

.asp

.bas

.bat

.cer

.chm

.cmd

.com

.cpl

.crt

.csh

.der

.exe

.fxp

.gadget

.hlp

.hta

.inf

.ins

.isp

.its

.js

.jse

.ksh

.lib

.lnk

.mad

.maf

.mag

.mam

.maq

.mar

.mas

.mat

.mau

.mav

.maw

.mda

.mdb

.mde

.mdt

.mdw

.mdz

.msc

.msh

.msh1

.msh2

.mshxml

.msh1xml

.msh2xml

.msi

.msp

.mst

.ops

.pcd

.pif

.plg

.prf

.prg

.reg

.scf

.scr

.sct

.shb

.shs

.sys

.ps1

.ps1xml

.ps2

.ps2xml

.psc1

.psc2

.tmp

.url

.vb

.vbe

.vbs

.vps

.vsmacros

.vss

.vst

.vsw

.vxd

.ws

.wsc

.wsf

.wsh

.xnk

500

Page 508: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Histórico do documento Guia dodesenvolvedor do Amazon SES

A tabela a seguir lista as principais alterações no Guia do desenvolvedor do Amazon Simple Email Service(Amazon SES).

Alteração Descrição Alterado em

Novo recurso Agora você pode usar seus próprios intervalos de IP para enviare-mail. Para obter mais informações, consulte Usar seus própriosendereços IP para enviar e-mail usando o Amazon SES (p. 186).

23 dedezembro de2019

Novo recurso Agora você pode usar seu próprio par de chaves pública-privadapara concluir o processo de autenticação DKIM de um domínio.Para obter mais informações, consulte Forneça seu próprio token deautenticação DKIM no Amazon SES (p. 142).

13 dedezembro de2019

Novo recurso Agora é possível usar uma lista de supressão no nível daconta (p. 189) para impedir automaticamente o envio de mensagenspara endereços de e-mail que anteriormente resultaram em umadevolução ou em uma reclamação.

25 denovembro de2019

Novo recurso Se a sua conta estiver em situação regular e você estiver seaproximando das cotas de envio da conta, o Amazon SESaumentará automaticamente as cotas. Para obter mais informações,consulte Aumentar suas cotas de envio do Amazon SES (p. 150).

 

Atualização dadocumentação

Adição de informações sobre a exclusão de dados pessoais doAmazon SES (p. 468).

13 de março de2018

Documentaçãoaberta

A documentação do Amazon SES está disponível no GitHub. Vocêpode enviar problemas ou solicitar alterações no repositório doGitHub, ou fazer alterações diretamente e enviar uma solicitaçãopull.

22 de fevereirode 2018

Atualização dadocumentação

Adição de uma seção que fornece informações sobre a exclusão dedados pessoais (p. 468) armazenados no Amazon SES.

28 de fevereirode 2018

Atualização dadocumentação

Revisão das definições do campo de publicação de eventos doAmazon SNS (p. 312) e adição de um exemplo de evento de Falhade renderização (p. 330).

22 de janeirode 2018

Atualização dadocumentação

Atualização do apêndice Painel de capacidade de entrega à contapara alterações nos consoles do IAM e do Lambda.

Note

Excluímos este apêndice em 3 de maio de 2019, pois eleusava componentes que não são mais compatíveis.

18 de janeirode 2018

Atualização dadocumentação

Atualização de conteúdo relacionado a eventos de publicação noCloudWatch (p. 285) para mencionar campos na lista negra.

15 de janeirode 2018

Atualização dadocumentação

Atualização de procedimentos de envio de e-mails usandoOpenSSL (p. 108) para que sejam mais fáceis de acompanhar.

11 de janeirode 2018

501

Page 509: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Alteração Descrição Alterado em

Atualização dadocumentação

Adição de exemplo de código para envio de e-mail bruto usando oAWS SDK para Ruby.

2 de janeiro de2018

Atualização dadocumentação

Adicionado exemplo de código de envio de e-mail bruto usando AWSSDK para PHP.

29 dedezembro de2017

Novo recurso Adição de conteúdo relacionado aos e-mails de verificaçãopersonalizados.

7 de dezembrode 2017

Novo recurso Adição de conteúdo relacionado à pausa de envio de e-maile exportação de métricas de reputação para conjuntos deconfiguração.

15 denovembro de2017

Atualização dadocumentação

Adicionado exemplo de código de envio de e-mail bruto usando oAWS SDK for Java.

23 de outubrode 2017

Atualização dadocumentação

Adicionado exemplo de código de envio de e-mail bruto usando oAWS SDK for Python (Boto).

20 de outubrode 2017

Novo recurso Adição de conteúdo relacionado aos modelos de e-mail e recursosde e-mail personalizados.

11 de outubrode 2017

Novo recurso Adição de conteúdo relacionado ao recurso do domíniopersonalizado de abertura e clique.

18 de setembrode 2017

Novo recurso Adição de conteúdo relacionado ao painel de reputação. 24 de agostode 2017

Novo recurso Adição de conteúdo relacionado ao recurso de grupos de IPdedicados.

17 de agostode 2017

Novo recurso Adição de conteúdo relacionado ao recurso de rastreamento deabertura e clique.

1° de agosto de2017

Atualização dadocumentação

Adição de um índice de exemplos de código. 26 de junho de2017

Atualização dadocumentação

Adição de um apêndice que demonstra o processo de criação de umpainel de capacidade de entrega para o Amazon SES.

Note

Excluímos este apêndice em 3 de maio de 2019, pois eleusava componentes que não são mais compatíveis.

22 de junho de2017

Atualização dadocumentação

Atualização dos exemplos de código de envio de e-mail. 6 de junho de2017

Novo recurso Atualização quanto aos IPs dedicados. 21 denovembro de2016

Novo recurso Atualização quanto à publicação de eventos de envio de e-mail. 2 de novembrode 2016

Atualização deserviços

Atualização para refletir que os usuários não precisam maisexplicitamente habilitar a entrada no Easy DKIM após gerarem seusregistros DKIM.

15 de setembrode 2016

502

Page 510: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Alteração Descrição Alterado em

Atualização dadocumentação

Adição de um tutorial de conceitos básicos para recebimento de e-mails.

12 de julho de2016

Novo recurso Atualização quanto a notificações aprimoradas. 14 de junho de2016

Novo recurso Atualização quanto a domínios MAIL FROM personalizados. 14 de março de2016

Novo recurso Atualização quanto a e-mails de entrada. 28 de setembrode 2015

Novo recurso Atualização quanto a autorização de envio. 8 de julho de2015

Novo recurso Atualização quanto ao registro em log do AWS CloudTrail. 7 de maio de2015

Atualização deserviços

Atualização para refletir a consolidação dos formulários de aumentode cotas do Amazon SES e removida a terminologia "acesso àprodução".

8 de abril de2015

Atualização deserviços

Atualização com novos requisitos para registros TXT de verificaçãodo domínio.

25 de fevereirode 2015

Atualização dadocumentação

Adição de Perguntas frequentes sobre aplicação. 15 dedezembro de2014

Novo recurso Atualização quanto a notificações de entrega. 23 de junho de2014

Novo recurso Atualização quanto a suporte a subdomínio. 19 de março de2014

Novo recurso Atualização quanto à expansão do Amazon SES para a região Oestedos EUA (Oregon).

29 de janeirode 2014

Novo recurso Atualização quanto à expansão do Amazon SES para a regiãoEuropa (Irlanda).

15 de janeirode 2014

Novo recurso Atualização para refletir as alterações na validação dos campos decabeçalho e tipos de MIME.

6 de novembrode 2013

Atualização dadocumentação

Remoção de conteúdo do ID do remetente 22 de agostode 2013

Novo recurso Atualização para refletir o novo design do console do Amazon SES. 19 de junho de2013

Novo recurso Substituição da lista negra pela lista de supressão. 8 de maio de2013

Novo recurso Atualização quanto ao recurso de remoção da lista negra. 4 de março de2013

Atualização dadocumentação

Adição de tipos de MIME. 4 de fevereirode 2013

503

Page 511: Amazon Simple Email Service...Amazon Simple Email Service Guia do desenvolvedor Gerenciamento de destinos de eventos 238 Atualização de um destino de evento 238

Amazon Simple Email Service Guia do desenvolvedor

Alteração Descrição Alterado em

Atualização dadocumentação

Incluída uma seção de conceitos básicos para substituir o guiade conceitos básicos independente, reestruturado o sumário eatualizadas as instruções de integração do Sendmail.

21 de janeirode 2013

Atualização dadocumentação

Adicionadas seções de solução de problemas quanto a problemasde SMTP e de aumento da taxa de transferência.

12 dedezembro de2012

Atualização dadocumentação

Reestruturadas as informações sobre as cotas de envio. 9 de novembrode 2012

Novo recurso Atualização quanto ao simulador de caixa postal do Amazon SES. 3 de outubro de2012

Novo recurso Atualização quanto ao uso de uma assinatura DKIM para assinar e-mails de uma identidade verificada.

17 de julho de2012

Novo recurso Atualização quanto ao recebimento de notificações de feedback dedevolução e reclamação por meio do Amazon Simple NotificationService (Amazon SNS).

26 de junho de2012

Novo recurso Atualização quanto à verificação do domínio. 15 de maio de2012

Novo recurso Atualização para refletir os tipos adicionais de cabeçalho e anexos. 25 de abril de2012

Novo recurso Atualização quanto à extensão STARTTLS para SMTP. 7 de março de2012

Novo recurso Atualização quanto a VERP (Variable Envelope Return Path). 22 de fevereirode 2012

Novo recurso Atualização quanto ao suporte de SMTP. 13 dedezembro de2011

Novo recurso Atualização quanto ao suporte do Console de Gerenciamento daAWS.

17 denovembro de2011

Novo recurso Atualização quanto ao suporte a anexos. 18 de julho de2011

Versão inicial Este é a primeira versão do Guia do desenvolvedor do AmazonSimple Email Service.

25 de janeirode 2011

504