This project is not covered by Drupal’s security advisory policy.

This module provides a **very simple** Amazon Simple Email Service mailer implementation for Drupal 8. It's more suited to developers or sysops who know how to set up and configure AWS credentials without the needs for admin forms.


For a more feature-complete Mailer solution, take a look at Swift Mailer.

Installation

This module requires you to have the AWS SDK loaded in your classpath.

The recommended approach is to have a composer file in your project root, and run:

composer require aws/aws-sdk-php:~3.0

Configuration

You need to specify the SES Mailer as the default system mailer. This can be done in your settings.php file by adding the following configuration:

$conf['system.mail']['interface']['default'] = 'ses_mail';

Alternatively, you can use drush to set it, then export as part of your site configuration.

drush config-set system.mail interface.default ses_mail

Specifying SES region

The region is specified using service container parameters. For example, to change from the default region of us-east-1 to us-west-2, add the following to your site-specific services.yml file:

parameters:
  ses_mailer.ses_client.options:
    region: us-west-2
    version: latest

AWS Authentication

This module does not require setting AWS access keys, and assumes you are following best practices and
following the SDK Guide on Credentials

This means, either using:

  • IAM Roles
  • Exporting credentials using environment variables
  • Using a profile in a ~/.aws/credentials file

You will need to add the ses:SendEmail and ses:ListIdentities actions to your IAM policy.

{
    "Effect": "Allow",
    "Action": [
        "ses:ListIdentities",
        "ses:SendEmail"
    ],
    "Resource": [
        "*"
    ]
}

Similar Modules

SwiftMailer

SwiftMailer provides a more full-featured Mailer component. You can use SMTP mode and set your AWS SES SMTP credentials.

Amazon_SES

  • In comparison, this SES Mailer does not have any dependencies other than the SDK which is loaded by composer.
  • This module does not require AWS credentials to be entered via an admin form, and instead assumes they will be provided by the methods above. See Credentials
  • This module only implements sending emails, and does not try to support getting information back from AWS such as statistics, validated emails and domains, etc.
Supporting organizations: 
Developed By

Project information

Releases