Amazon SNSでメール通知を作る手順(AWSコンソールだけで完結)

クラウド・インフラ(AWS)

「メールで通知が飛ぶ仕組み」を最短で作りたいとき、Amazon SNS(Simple Notification Service)はかなり手軽です。
トピックを作って、通知先メールアドレスを購読(Subscription)させるだけで、アプリやLambdaなどからメッセージを投げた瞬間にメールが届きます。

この記事では、AWSコンソールの操作だけでできる SNSメール通知の作成手順をまとめます。
開発中の通知(例:一次受付/監視/問い合わせ受付など)をまず動かしたい人向けです。

この記事でできるようになること

  • SNSの「トピック」を作る
  • メールアドレスを購読(Subscription)させる
  • テスト送信して、メールが届くのを確認する
  • そのトピックARNを、別システム(Lambda等)の設定に使えるようにする

SNSのメール通知の考え方(超ざっくり)

SNSメール通知は、構成が単純です。

  • トピック(Topic):通知を投げ込む宛先の箱
  • サブスクリプション(Subscription):その箱を受け取る人(メールアドレス等)

アプリ側は「TopicにPublishする」だけ。
誰に送るかはSNS側のSubscriptionで管理します。

SNSトピックを作成する

  1. AWSコンソールで Amazon SNS を開く
  2. 左メニューから「トピック」を選ぶ
  3. 「トピックを作成」を押す
  4. タイプは「標準(Standard)」を選択
  5. 名前を入力する(例:connect-voicemail-notify)
  6. 「トピックを作成」

作成後に表示される トピックARN はあとで使うので控えます。
(例:arn:aws:sns:ap-northeast-1:xxxx:connect-voicemail-notify)

メールアドレスを購読(Subscription)させる

  1. 作成したトピックを開く
  2. 「サブスクリプションを作成」を押す
  3. プロトコル:Email
  4. エンドポイント:通知を受けたいメールアドレス(例:example@example.com
  5. 「サブスクリプションを作成」

購読確認メールを承認する(ここが必須)

Emailで購読した場合、すぐには有効になりません。
SNSから購読確認メールが届くので、メール内のリンクを開いて Confirm subscription を完了させます。

SNSコンソールでサブスクリプションの状態が

  • Pending confirmation(未承認)→ Confirmed(承認済み)
    になればOKです。

ステータスが【確認済み】になっているので今後使用可能です。

テスト送信してメールが届くか確認する

  1. SNSのトピック画面を開く
  2. 「メッセージの発行」を押す
  3. 件名(Subject)と本文(Message)を入力
  4. 送信(Publish)

数秒〜数十秒でメールが届けば設定完了です。

よくある詰まりポイント

Pending confirmation のまま

購読確認メールのリンクを押していないのが原因です。
迷惑メールフォルダも確認します。

メールが届かない

  • SubscriptionがConfirmedになっているか
  • メールアドレスの入力ミスがないか
  • SNSのPublish先がそのTopicか(別Topicに送ってないか)

件名が思った通りにならない

SNSのSubjectは反映されますが、メールソフト側の表示や制約で見え方が変わる場合があります。
まずは本文の情報を信頼するのが安全です。


まとめ

Amazon SNSのメール通知は、AWSコンソールだけで最短で作れます。

  • トピックを作る
  • Emailで購読する
  • 購読確認(Confirm)する
  • Publishでテスト送信する
  • できたらトピックARNを使って、Lambdaなどから通知を飛ばす

「まずメールで通知が届く状態」を作っておくと、次の実装(LambdaやConnect連携など)が一気に進めやすくなります。

コメント

タイトルとURLをコピーしました