ForgeVision Engineer Blog

フォージビジョン エンジニア ブログ

Amazon SNSトピックのサブスクリプション(保留中の確認)が削除出来ない件

はじめに

こんにちは。クラウドインテグレーション事業部の北原です。

本記事はForgeVision Advent Calendar 23日目の記事です。

皆さん、Amazon SNS使っていますか?

SESであったり、Lambdaと連携して最近良く使うことが多いんですが、
サブスクリプションとして登録するメールアドレスを間違えたり、
アプリ構築前にHTTPSのサブスクリプションを作ってしまい、
トピックのサブスクリプションを削除したい事が結構あります。

そこで保留中の確認ステータスの場合、削除が出来ずに困ったので、
対応の一連の流れを記載させていただきます。

Amazon SNSのおさらい

まず、本題に入る前にAmazon SNSのおさらいをしたいと思います。

docs.aws.amazon.com

Amazon Simple Notification Service(Amazon SNS) は、発行者からサブスクライバー (プロデューサーおよびコンシューマーとも呼ばれます) へのメッセージ配信を提供するマネージド型サービスです。発行者は、論理アクセスポイントおよび通信チャネルであるトピックにメッセージを送信することによって、受信者と非同期的に通信します。クライアントは、SNS トピックにサブスクライブし、サポートされているプロトコル ( Amazon SQS 、 AWS Lambda 、HTTP、E メール、モバイルプッシュ通知、モバイルテキストメッセージ (SMS) など) を使用して、発行されたメッセージを受信できます。

SNSに登録したトピックとサブスクリプションの連携で
各種連携されたプロトコルの呼び出しをするAWSで利用出来る
プッシュ型のメッセージングサービスになります。

本題

さて、本題なんですが、これ、チェック入れた後

サブスクリプション保留中のチェック

なんと削除が出来ないんです!

まず、公式ドキュメントは以下に記載があります。

docs.aws.amazon.com

保留中の確認を削除することはできません。3 日後に、
Amazon SNS で自動的に削除されます。

作成後に3日経つと消えると書いてあるので待ちました。
ですが、1週間経っても消えないので、AWSサポートに問い合わせを
実施しました。

問い合わせ内容と回答

◆問い合わせ内容:

ご担当者様

本システムに構築しているSNSトピックXXX-snsのサブスクリプションで
利用しないものがあり、削除したいと考えています。
対象:notification@XXXX

こちらですが、存在しないメールアドレスのため、保留中のまま削除が
出来ない状況です。
公式ドキュメントでは3日経つと自動で消えると記載がありますが、
1週間程前に作成したものの現在残っている状況です。
こちらにつきまして、削除する方法をご教示ください。

以上、宜しくお願いいたします。


結構急いでいたので、緊急度をSystem impairedで起票したところ、
すぐに以下の内容で返ってきました。

大変恐縮ではございますが Amazon SNS の「保留中の確認」ステータスの
サブスクリプションはお客様にて削除できないものとなっております。

ドキュメントの表記が不正確な点があり誠に恐縮ではございますが、
通常該当のサブスクリプションは 3 日が経過したのち、数日から数十日の間に
マネジメントコンソール上に表示されなくなるふるまいとなります。

また、該当のステータスのサブスクリプションが表示上残留している
場合でも、通常 Amazon SNS サービスのご利用に影響はなく、
料金も発生しないものでございます。

そのため差し支えなければ該当のサブスクリプションが表示されなくなるまで
お待ちいただけますと幸いでございます。

該当のサブスクリプションと同等の内容を作成したい場合は、削除されない
サブスクリプションは無視していただき再度新しいサブスクリプションの
作成を行っていただく形となります。

なお、サービスの利用上支障がございます場合、AWS サポートにて削除の
手続きを賜ることも可能でございます。
その際は、サブスクリプションについて以下のような情報を
お知らせいただけますと幸いでございます
(リージョンおよび該当サブスクリプションが残留していることに
よるサービス影響をご連絡ください)。
---
リージョン:
トピック名: (xxx-sns)
プロトコル: (Email)
エンドポイント: (notification@xxxx)
該当サブスクリプションが残留していることによるサービス影響
---

結論

なるほど!AWSサポート様、迅速なご回答ありがとうございます!

通常該当のサブスクリプションは 3 日が経過したのち、数日から数十日の間に マネジメントコンソール上に表示されなくなるふるまいとなります。

ドキュメントには3日と明確に書いてありますが、表記が正しくなく
3日~数十日待たないと消えないそうで、自動削除されるまでは
待たないといけないようです。

また、サポートからの回答もありましたが、サービス影響がある場合は
サポート経由で消せるようなので、もし環境引き渡し等で不要なリソースを
見せたくない場合など、特別な理由があれば削除依頼をおススメします。
(機会があれば私も今度実施してみたいと思います)

以上、勉強になりました!!