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日行い、 監視から障害対応、運用保守まで一括で代行するサービス をご提供しています。委託をご検討の際は、ぜひお気軽にお問い合わせください。