Managing AWS SES (Simple Email Service)

From Contensive Wiki
Revision as of 16:26, 1 March 2017 by Admin (Talk | contribs) (How to manage bounce processing on the website)

Jump to: navigation, search

This tool is used to capture email bounces and automatically mark them as bad addresses.

Terms

Transient Email Failures 
Are emails that cannot be delivered because of non-permanent problems. These may be temporary issues like "out of the office", or problems with a particular email like "cannot accept email from this address".
Permanent Email Failures 
Are emails that cannot be delivered for reasons that will not recover, like "user does not exist"
Email Bounce List 
A database table found in the Email Bounce Process Collection that includes an entry for every bounce email detected.
AWS SES 
Amazon Web Services - Simple Email Service.
AWS SQS 
Amazon Web Services - Simple Query Service, a persistent messaging tool.
AWS SNS 
Amazon Web Services - Simple notification Service, a push notification tool.

Roles

Administrator 
A user with the Administrator checkbox set in their user record, under permissions. Administrators can review the email drop list.

How To

How to setup Amazon AWS Server

  1. Go to aws.amazon.com and sign in to the console.
  2. Select SES.
  3. Select Domains under Identity Management.
  4. Enter a Domain to verify
  5. Edit DNS records; add a TXT file with given key values.

How to setup Amazon SES Email

  1. Go to aws.amazon.com and sign in to the console.
  2. Select SES.
  3. Select Email Addresses under Identity Management.
  4. Enter an email address to verify and click on VERIFY A NEW EMAIL ADDRESS.

How to setup Amazon SES Email Bounce Processing

  1. You must have first configured SES Email
  2. Click on Amazon SNS (Notifications) on the Amazon AWS Dashboard. Create a topic.
  3. Click on Amazon SQS (Message Queues). Add a message queue. Subscribe the queue to the the SNS topic. Get the URL in the details tab and save in the "AWS SQS Bounce Email Queue Endpoint" in the Email Bounce Settings.
  4. Go to Amazon (SES) and assign the sending Domain and/or email addresses to the SNS topic.
  5. Go to Amazon Identity & Access Management and create a new user for the email block process. Under permissions, add a policy for "AmazonSQSFullAccess". Under Security, create an access key. Save the "AWS Access Key Id" and the "AWS Secret Access Key" in the Email Bounce Settings.
  6. in Email Bounce Settings, check the box next to "Allow AWS Email Bounce Processing".
  7. To test the configuration, send to the following AXS SEs email addresses from the system.
    • success@simulator.amazonses.com
    • bounce@simulator.amazonses.com
    • ooto@simulator.amazonses.com
    • complaint@simulator.amazonses.com
    • suppressionlist@simulator.amazonses.com

How to Manage Bounce Processing on the Website

  1. Install add-ons Email Bounce Process and Email Blocked Report.
  2. Under Manage Add-Ons, Email Bounce Process, click on Email Bounce Settings.
  3. Make sure box is checked next to "Allow AWS Email Bounce Processing".
  4. Enter number of days that emails with transient issues (such as on vacation) will be allowed. After this time they will be blocked from receiving emails from your site.
  5. Click OK to save.
  6. Periodically review the list at Manage Add-ons, Email Bounce Processing, Email Bounce List.
  7. If in the Details the bounce is marked as Transient, after you make any necessary changes to recover it, you can delete this record from the list to enable emails to this email address
  8. If in the Details the bounce is marked as Permanent, the email address will be added to the Email Blocked Report, available by clicking Reports, Email Blocked Report. To have an email removed from this list, please contact support@contensive.com to provide the list of emails you would like removed from the blocked list.

References

Email Bounce Settings

Under Navigator > Settings > Email Bounce Settings

Allow AWS Email Bounce Processing 
(For Amazon AWS hosted sites only, requires Amazon SES Email) Use Amazon Notifications to automatically block bad email addresses from your database. When enabled, the site will check with Amazon AWS hourly and if bad email addresses where detected, the user's Allow Group Email will be disabled and the email address will be added to the site's blocked list.
AWS Transient Email Grace Period 
The period of time up to 30 days that email addresses with transient issues will be allowed. You must periodically review the transient email issues in the Email Block List. Transient issues older than this period will be blocked from receiving email.
AWS Access Key Id 
The access key associated with the identity you will use to communicate with the AWS Message system to retrieve bounce and complaint notifications. Use the AWS Identity and Access Management to create you credentials.
AWS Secret Access Key 
The secret access key associated with the identity you will use to communicate with the AWS Message system to retrieve bounce and complaint notifications. Use the AWS Identity and Access Management to create you credentials.
AWS SQS Bounce Email Queue Endpoint 
The URL for the AWS Message Queue you configured to store the bounce messages.

Under Navigator > Settings > Preferences > Email Tab

Test Cases

  1. End-To-End test
    • Setup Amazon SES Email and verify you can send a group email to a known address
    • Configure Bounce Processing using the instructions on this page.
    • Create a group "AWS SES Bounce Test"
    • Create five users, one named for each test email above, using that email, and adding them to the AWS SES Bounce Email group
    • Send a group test and check the confirmation email to make sure all is setup correctly.
    • Send the group email.
    • After one minute, manually run the Manage Addons > Email Bounce Process > AWS SES Email Bounce Process
    • Verify the user with the bounce address no longer has "Allow Group Email" checked.
    • Verify the Email Bounce List has
      • A permanent entry for the bounce user.
      • A transient entry for the ooto user.
    • Use the Email Block Log Tool and verify the bounce user is on the block log.

Change History

10/28/2016 
This build adds the AWS SES email handling, required if you send SES email. Instead of reading addresses from a pop3 account, it receives messages from the Amazon SQS message queue and marks records appropriately.