🥺

AWS SNSのトピックが多すぎてWebコンソールが動かない・・・

に公開

何が起きたのか

AWS SNS(以下、SNS)では、1万以上のトピックが存在するとトピック数の取得や表示に時間がかかりすぎ、一部サービスのWebコンソールが正常に動作しなくなってしまいます。

ちなみにデフォルトでは1アカウントにつき、10万トピックまで作成可能です。
https://docs.aws.amazon.com/ja_jp/general/latest/gr/sns.html

弊社のケースでは、SNSにAPNs用のp8ファイルを設定しようとした際にこの現象に遭遇し、設定作業ができない状態になってしまいました。

具体的には、Webコンソール上からSNSのListTopics APIリクエストが実行されるものの、トピック数が多すぎて通信に時間がかかり、それが原因で入力フォームに不具合が発生していました。

解決方法

作業するユーザにSNSトピックの取得を禁止するポリシーを付与する。

IAMのポリシー例
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Deny",
            "Action": "sns:ListTopics",
            "Resource": "*"
        }
    ]
}

このポリシーでトピック取得のAPIコールを強制的に失敗させることで、Webコンソールの機能を復活させることができます。

SARAH Tech Blog

Discussion