AWS Amazon SES Configuration Set

This page shows how to write Terraform and CloudFormation for Amazon SES Configuration Set and write them securely.

aws_ses_configuration_set (Terraform)

The Configuration Set in Amazon SES can be configured in Terraform with the resource name aws_ses_configuration_set. The following sections describe 5 examples of how to use the resource and its parameters.

Example Usage from GitHub

main.tf#L8
resource "aws_ses_configuration_set" "transactional" {
  name = "Transactional"
}

resource "aws_ses_configuration_set" "marketing" {
  name = "Marketing"
ses-configuration-set.tf#L3
resource "aws_ses_configuration_set" "$configurationSetName" {
  name = "$configurationSetName"
}
ses.tf#L9
resource "aws_ses_configuration_set" "this" {
  name = "skole-ses-config"
}

resource "aws_ses_event_destination" "this" {
  name                   = "skole-ses-destination"
main.tf#L7
resource "aws_ses_configuration_set" "this" {
  name = var.name
}

email_ses_errors.tf#L1
resource "aws_ses_configuration_set" "ms" {
  name = "ms-ses-configuration-set"
}

resource "aws_ses_event_destination" "ses_errors" {
  name                   = "ses-error-sns-destination"

Review your Terraform file for AWS best practices

Shisho Cloud, our free checker to make sure your Terraform configuration follows best practices, is available (beta).

Parameters

Explanation in Terraform Registry

Provides an SES configuration set resource.

AWS::SES::ConfigurationSet (CloudFormation)

The ConfigurationSet in SES can be configured in CloudFormation with the resource name AWS::SES::ConfigurationSet. The following sections describe 10 examples of how to use the resource and its parameters.

Example Usage from GitHub

ses-configuration-set.yml#L3
      Type: 'AWS::SES::ConfigurationSet'
      Properties:
        Name: ${self:custom.resourcePrefix}-statistic
ses.yml#L3
    Type: AWS::SES::ConfigurationSet
    Properties:
      Name: ${self:custom.ses-configuration-set}

  SesEventsTopic:
    Type: AWS::SNS::Topic
ses-template.yml#L12
    Type: AWS::SES::ConfigurationSet
    Properties:
      Name: !Ref ConfigSetName
  CWEventDestination:
    Type: AWS::SES::ConfigurationSetEventDestination
    Properties:
service.yml#L101
    Type: AWS::SES::ConfigurationSet
    Properties:
      Name: promotional

  PromotionalConfigurationSetEventDestination:
    DependsOn:
template.yaml#L95
    Type: AWS::SES::ConfigurationSet
    Properties:
      Name: EmailServiceConfigurationSet

  EmailServiceEventsSQS:
    Type: AWS::SQS::Queue
SESConfigurationSetSpecification.json#L3
    "AWS::SES::ConfigurationSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html",
      "Properties": {
        "Name": {
          "Required": false,
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name",
SESConfigurationSetSpecification.json#L3
    "AWS::SES::ConfigurationSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html",
      "Properties": {
        "Name": {
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name",
          "UpdateType": "Immutable",
SESConfigurationSetSpecification.json#L3
    "AWS::SES::ConfigurationSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html",
      "Properties": {
        "Name": {
          "Required": false,
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name",
SESConfigurationSetSpecification.json#L3
    "AWS::SES::ConfigurationSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html",
      "Properties": {
        "Name": {
          "Required": false,
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name",
SESConfigurationSetSpecification.json#L3
    "AWS::SES::ConfigurationSet": {
      "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html",
      "Properties": {
        "Name": {
          "Required": false,
          "Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name",

Parameters

Name Not currently supported by AWS CloudFormation.
Required: No
Type: String
Update requires: Replacement

Explanation in CloudFormation Registry

The name of the configuration set.

Configuration sets let you create groups of rules that you can apply to the emails you send using Amazon SES. For more information about using configuration sets, see Using Amazon SES Configuration Sets in the Amazon SES Developer Guide.

Frequently asked questions

What is AWS Amazon SES Configuration Set?

AWS Amazon SES Configuration Set is a resource for Amazon SES of Amazon Web Service. Settings can be wrote in Terraform and CloudFormation.

Where can I find the example code for the AWS Amazon SES Configuration Set?

For Terraform, the alfiesal/terraform-examples, infraxys-aws/aws-ses and skoleapp/skole-infra source code examples are useful. See the Terraform Example section for further details.

For CloudFormation, the ovandr/serverless-mail-sender, carlhueffmeier/mister-mail and burgess1109/AWS-CloudFormation-Sample source code examples are useful. See the CloudFormation Example section for further details.