あめがえるのITブログ

頑張りすぎない。ほどほどに頑張るブログ。

【AWS】SESでドメインを登録してみた & 11/4(月) 実装されたインラインテンプレートを使用してみた


2024/11/4(月) SESでインラインテンプレートの機能が実装されたのでID登録からインラインテンプレートを使用したメール送信テストを行ってみた。
aws.amazon.com

前提条件

  • 接続テストはWindows端末から行います。
  • 送信元EメールアドレスのドメインはRoute53であらかじめ取得しているものを利用します。

実践!

1.SES ID登録
1-1.AWS - SES - ID

1-2.[ID の作成]

1-3.下記を選択
 ID の詳細:
  ID タイプ:ドメイン
   ※ドメイン:取得しているドメインでSESを利用する場合
    Eメールアドレス:取得しているEメールアドレスでSESを利用する場合
  ドメイン:Route53で取得したドメイン
  デフォルト設定セットの割り当て:□
  カスタム MAIL FROM ドメインの使用:□
 ドメインの検証:
  DKIM 署名キーの長さ:RSA_2048_BIT
  DNS レコードの Route53 への発行:
   有効化:✅
  DKIM 署名:
   有効化:✅


1-4.[ID の作成]

1-5.ID ステータスが検証済みになることを確認
 ※5分程度かかる


2.送信先メールアドレス登録
 ※サンドボックスを解除しないと不特定多数へ送信できないため、今回はサンドボックスを解除せず、送信先もID登録して送受信テストを行う
2-1.AWS - SES - ID

2-2.[ID の作成]

2-3.下記を選択
 ID の詳細:
  ID タイプ:Eメールアドレス
  Eメールアドレス:送信先として使うEメールアドレス

2-4.[ID の作成]

2-5.設定したEメールアドレスに承認メールが届くため、承認用のURLをクリック

2-6.ID ステータスが検証済みになることを確認


3.メール送信テスト
3-1.ローカルにテンプレートJSONを作成する
※今までは事前にテンプレートをSESに登録しておく必要があったが、今回のアップデートでローカルのJSONファイルを指定できるようなった。
※ChatGPTで作ってもらったのでよくわからないものも入っている、、、

{
  "FromEmailAddress": "sender@<ID登録したドメイン>",
  "Destination": {
    "ToAddresses": ["<送信先で登録したEメールアドレス>"]
  },
  "Content": {
    "Template": {
      "TemplateData": "{\"name\":\"Recipient Name\",\"favoriteanimal\":\"Dolphin\"}",
      "Subject": "Hello, {{name}}!",
      "Html": "<h1>Hello {{name}},</h1><p>Your favorite animal is {{favoriteanimal}}.</p>",
      "Text": "Hello {{name}},\nYour favorite animal is {{favoriteanimal}}."
    }
  }
}

3-2.コマンドプロンプトを起動し、下記を実行

# aws sesv2 send-email --cli-input-json file://<JSONファイルパス>
C:\U>aws sesv2 send-email --cli-input-json file://C:\template.json --profile testvault
{
    "MessageId": "01060193575eaf0f-6e25243c-c82f-4dff-87d4-f64c38278b54-000000"
}

2-3.メールが受信されたことを確認


感想

新機能も追わなきゃいけないし、資格も取らなきゃいけないし、なにがおもしろいのやら、、、