OPS

Amazon SNSの通知メールにて、unsubscribeを無効化

Amazon SNSの通知メールにて、unsubscribeのリンクを無効化する方法

2021.10.12

本記事のポイント

アプリケーションからの通知を受け取ることができるAmazon SNSですが、メール通知の本文には通知を停止する「unsubscribe」というリンクがあります。

本記事では、「unsubscribe」をクリックしても、メールの通知を停止できないようにする設定方法をご紹介します。



はじめに

Amazon SNSとは Amazon Simple Notification Service(アマゾン シンプルノーティフィケーションサービス)の略で、アプリケーションからの通知を受け取ることができるサーバレスのサービスです。AWSの一部として提供されています。

AWSに限らず、Google Cloud、Azure、オンプレ環境などに構築された お客様のシステム監視を行う当社では、監視アラートを検知した際、Amazon SNSを利用して監視を行うエンジニアに通知を飛ばしています。

このAmazon SNSですが、通知メールの中に「unsubscribe」という通知を届かなくするための停止リンクがあり、クリックすると当然通知は飛ばなくなります。誤ってクリックしてしまい、しばらく通知停止に気づかなかった・・・という方もいらっしゃるのではないでしょうか?

そこで本日のブログでは、Amazon SNSの通知メールに記載されている「unsubscribe」のリンクを無効化する方法をご紹介します。


> AWS の面倒な運用や障害対応、まるっとお任せ!

> AWS利用料 今なら8%OFF – 利用中の方も、アカウント移管だけで割引適用

Amazon SNS、unsubscribe(通知停止)と再通知の流れ

まず始めに、Amazon SNSのEメール サブスクリプションの仕様について簡単に説明します。通知されるアラートメールに、常に表示されている unsubscribe(通知停止)のURLは、以下のようなものです。

例:https://sns.ap-northeast-1.amazonaws.com/unsubscribe.html?SubscriptionArn=arn:aws:sns:ap-northeast-1:XXXXXXXXXXXX:XXXX:XXXXXXXXXXXX&Endpoint=〓Eメールアドレス〓

Amazon SNS、unsubscribe(通知停止)のリンク

そして、上記リンクをクリックすると以下画面がブラウザに表示され、サブスクリプションが削除されてしまいます。

Amazon SNS、サブスクリプションが削除

AWSコンソール上で確認すると、unsubscribe(通知停止)されたサブスクリプションは以下のようにIDが【削除済み】となり、以降はメール通知ができない状況となってしまいます。

Amazon SNS、IDが削除済み

サブスクリプションが停止された場合、件名が【AWS Notification – unsubscribe Confirmation 】というメールが受信されます。ここで、メール本文内に記載の【Resubscribe】をクリックすることで、再度Eメールを受信することが可能になります。

Amazon SNS、AWS Notification - unsubscribe Confirmation

リンクをクリックすると以下画面がブラウザに表示され、サブスクリプションがconfirmed(確認済み)になります。

Amazon SNS、サブスクリプションがconfirmed

注意:上記画像 右下部分に記載の【click here to unsubscribe.】を押すと再度サブスクリプションが削除されます。

AWSコンソール上で確認すると、【削除済み】が解消され、任意のIDが記載されます。

Amazon SNS、click here to unsubscribe.で削除済


> AWS の面倒な運用や障害対応、まるっとお任せ!

> AWS利用料 今なら8%OFF – 利用中の方も、アカウント移管だけで割引適用

unsubscribeのリンクを無効化する方法

設定は、以下の3ステップで行います。

  • SNS Subscriptionの再作成
  • Confirm Subscription のメール登録
  • 動作確認
  • SNS Subscriptionの再作成

    対象のSubscriptionに対して【サブスクリプションの削除】を実施します。
    ※ 既に登録していた場合のみ実施

    Amazon SNS、SNS Subscriptionの再作成

    次に、削除前と同じ内容で再度【サブスクリプションの作成】を実施します。

    Amazon SNS、サブスクリプションの作成

    正常に作成が完了するとID部分に【保留中の確認】と表示されます。

    Amazon SNS、保留中の確認】

    作成時に設定したEメールアドレス宛に【AWS Notification – Subscription Confirmation】という件名で、【Confirm subscription】というリンクが本文に張られたメールを受信します。
    ※ このリンクを押下してはいけません。

    Amazon SNS、Confirm subscription

    Confirm subscription のリンク登録

    まず、【Confirm subscription】リンク先のURLに対して、右クリック⇒「リンクのURLをコピー」を実施し、URLを取得します。

    例:https://sns.ap-northeast-1.amazonaws.com/confirmation.html?TopicArn=arn:aws:sns:ap-northeast-1:XXXXXXXXXXXX:XXXX&Token=XXXXXXXXXXXX&Endpoint=〓Eメールアドレス〓

    次にAWSコンソール上より再作成したサブスクリプションを選択し、【サブスクリプションの確認】を押下します。

    Amazon SNS、サブスクリプションの確認

    【Confirm subscription】より取得したURLを入力し、【サブスクリプションの確認】を押下します。

    Amazon SNS、サブスクリプションの確認

    「サブスクリプションが正常に確認されました」という以下のような画面を確認できれば、問題なく作成できています。

    Amazon SNS、サブスクリプションが正常に確認されました

    動作確認

    トピックよりテストメールを送付し、以下【unsubscribe】リンクを押下します。

    Amazon SNS、unsubscribe

    以下のような画面に遷移、unsubscribeが無効化されていることが確認できました。

    Amazon SNS、unsubscribeが無効化


    > AWS の面倒な運用や障害対応、まるっとお任せ!

    > AWS利用料 今なら8%OFF – 利用中の方も、アカウント移管だけで割引適用

    まとめ

    今回は、メール通知 unsubscribeリンクを無効化する方法について記載させていただきました。

    例えば、当社が行っているようなシステムの監視アラートの通知を受信されるようなケースでは、メーリングリスト宛に通知を飛ばし、様々な人にアラートメールが送付されるよう設定されている方も多いかと思います。誰かが誤ってクリックしてしまい解消方法が分からない、とお問い合わせをいただくケースもございますので、ご紹介させていただきました。

    多くの方に通知される場合、あるいはunsubscribeする予定がない場合には、ぜひお試しください。

    また、当社ではAWSやAzure、Google Cloud、Zabbixなどのアラートメールの監視を24時間365日行い、 監視から障害対応、運用保守まで一括で代行するサービス をご提供しています。委託をご検討の際は、ぜひお気軽にお問い合わせください。