我目前正在我组织的 AWS 中构建一个简单的应用程序来跟踪 SNS 取消订阅活动。到目前为止,我还没有找到任何方法让 SNS 根据取消订阅活动触发/创建事件。我认为唯一可能的方法是从 CloudTrail 跟踪它,并从那里触发 Lambda 脚本来触发另一个 SNS 以用于通知目的。这是有趣的部分。在过去几天里,我多次尝试订阅和取消订阅,我意识到并非所有取消订阅都被记录(我想说可能只有 10-20% 被记录)。最后一张记录的日期是 5 天前。
也许我在这里错过了一些东西。任何专家都可以指出/推荐其他更可靠的方法来跟踪 SNS 取消订阅吗?谢谢,祝你有美好的一天!
[更新] 事实证明,CloudTrail 只能记录 ADMIN 发起的取消订阅(通过管理控制台),而不是订阅者自己发起的取消订阅(通过电子邮件)。有什么方法可以跟踪订阅者发起的取消订阅吗?
SNS 似乎不会记录未经身份验证的订阅确认或取消订阅。根据文档:
“当您未登录 Amazon Web Services(未经身份验证模式)并且调用确认订阅或取消订阅操作时,它们将不会记录到 CloudTrail。例如,当您选择电子邮件通知中提供的链接进行确认时对于主题的待定订阅,ConfirmSubscription 操作会在未经身份验证的模式下调用。在此示例中,ConfirmSubscription 操作不会记录到 CloudTrail。”