AWS SES での Bounce, Complaint, Reject のシミュレーション方法

AWS SES での Bounce, Complaint, Reject のシミュレーション方法

岩佐 孝浩
岩佐 孝浩
3 min read
SES

はじめに

SES ユーザーは、BounceComplaint、および Reject 率を AWS の許容範囲内に維持する必要があります。これらのシナリオをシミュレートすることで、効果的な対応を設計し、コンプライアンスを確保できます。

詳細については、公式の AWS SES ドキュメント をご参照ください。

前提条件

開始する前に、以下の手順を完了してください。

  1. AWS SES にメールアドレスを登録します。
  2. 登録したメールアドレスに Email Feedback Forwarding を有効にします。

Email Feedback Forwarding Setup

Bounce シミュレーション

以下のコマンドを使用して Bounce をシミュレートします。

aws ses send-email --from <YOUR_EMAIL> --to bounce@simulator.amazonses.com --subject test --text test

指定した --from オプションのメールアドレスに、Bounce が発生したことを示すメールが届きます。

Bounce Simulation Example

Complaint シミュレーション

Complaint をシミュレートするには、次のコマンドを実行します。

aws ses send-email --from <YOUR_EMAIL> --to complaint@simulator.amazonses.com --subject test --text test

--from アドレスに Complaint を示すメールが送信されます。

Complaint Simulation Example

Reject シミュレーション

EICAR テストファイル を添付してメールを送信することで、Reject をシミュレートします。以下のスクリプトを使用してください。

FROM=<YOUR_EMAIL>
MESSAGE='{"Data": "From: $FROM\nTo: $FROM\nSubject: test\nMIME-Version: 1.0\nContent-type: Multipart/Mixed; boundary=\"NextPart\"\n\n--NextPart\nContent-Type: text/plain\n\ntest\n\n--NextPart\nContent-Type: text/plain;\nContent-Disposition: attachment; filename=\"sample.txt\"\n\nX5O!P%@AP[4\\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*\n\n--NextPart--"}'
MESSAGE=$(echo $MESSAGE | sed "s/\$FROM/$FROM/g")
aws ses send-raw-email --cli-binary-format raw-in-base64-out --raw-message "$MESSAGE"

FROM アドレスに Reject 通知メールが届きます。

Reject Simulation Example

まとめ

AWS SES で BounceComplaint、および Reject のシナリオをシミュレーションする方法を理解することは、メール配信可能性とコンプライアンスの管理において重要です。これらのシミュレーションを実践することで、潜在的な問題を積極的に監視して対処し、SES アカウントを保護できます。

Happy Coding! 🚀

岩佐 孝浩

岩佐 孝浩

Software Developer at KAKEHASHI Inc.
AWS を活用したクラウドネイティブ・アプリケーションの要件定義・設計・開発に従事。 株式会社カケハシで、処方箋データ収集の新たな基盤の構築に携わっています。 Japan AWS Top Engineers 2020-2023