SNS Topic のメールサブスクリプションが確認後に削除されてしまうのはどうしてですか
困っていた内容
SNS Topic にメールアドレスを登録して確認リンクを押下し、確認済みの状態になったにもかかわらず、しばらくすると自動的に削除されてしまいます。
何度登録しても同じ現象が発生するのですが、原因は何でしょうか。
どう対応すればいいの?
このようなケースは、メールプロバイダーによるセキュリティチェックが原因で発生している可能性があります。
メールシステムやメールプロバイダーによっては、メール本文に含まれる URL をセキュリティチェックのため自動的にアクセスすることがあります。
この際、Unsubscribe リンクも自動的にクリックされてしまい、サブスクリプションが解除されてしまうことがあります。
特に企業向けメールシステムでは、このようなセキュリティチェック機能が実装されているケースがあります。
なお、メッセージ送信レートが制限を超えた場合も、サブスクリプションが自動削除される可能性があります。
SNS の E メールサブスクリプションには、1秒あたり10メッセージという配信レート制限があります。
この制限を超えると、サブスクリプションが自動停止され、最終的に削除されることがあります。
メールプロバイダーによるセキュリティチェックが原因の場合、対策としては、E メールサブスクリプションの解除に AWS 認証を必要とする設定が有効です。
以下のナレッジセンター記事の手順や、DevelopersIO の記事に従って設定することで、メールプロバイダーによる自動 Unsubscribe を防ぐことができます。
この設定を行うことで、サブスクリプションの解除には AWS Management Console のログインまたは AWS API/CLI の認証が必要となり、メールプロバイダーによる自動アクセスでは解除されなくなります。
すでに削除されてしまったサブスクリプションはどうすればいい?
すでに削除されてしまったサブスクリプションは、マネジメントコンソールで ID が「削除済み」と表示され、削除ボタンが押せない状態となっています。
通常、この「削除済み」ステータスのサブスクリプションは、Amazon SNS によって自動で削除されるまでに 72時間程度 かかります。
そのため、同じメールアドレスで再度サブスクライブしたい場合は、72時間経過して完全に削除されるまで待つ必要があります。
ただし、すぐに再登録したい場合は回避方法があります。
同一エンドポイント・同一トピックで新規サブスクリプションを再作成し、メール内の「Confirm subscription」リンクをクリックしてください。
その後、コンソール画面を更新すると ID が表示され、削除可能な状態になります。
削除できる状態になったら、一度削除してから、改めて上記の手順で AWS 認証を必要とする設定を行ってサブスクリプションを再登録してください。
これにより、今後の自動解除を防ぐことができます。
参考情報






