首页 > 解决方案 > 即使没有过滤策略,SNS 订阅也会收到消息

问题描述

一个 SNS 主题有 2 个订阅。一个有过滤策略(我们称之为 A),另一个没有(我们称之为 B)。当一条消息发布到 SNS 主题时,其过滤属性匹配订阅和过滤策略(订阅 A),它会接收到该消息。我在这里发现的问题是没有过滤策略的问题(订阅 B)也收到相同的消息。如何仅向订阅“A”发送消息?

假设我向订阅 B 添加了不同的过滤策略。然后,如果我使用订阅 A 的过滤策略属性向 SNS 发布消息,则只有订阅 A 会收到该消息。这解决了我之前提到的问题,但每个账户有 200 个订阅过滤策略的限制。这有点破坏了订阅过滤策略的目的。

结束我的问题:如何在不向同一主题的其他订阅添加过滤策略的情况下仅向订阅“A”发送消息?

注意:使用的 SNS 协议是 EMAIL。我也不打算增加 SNS 限制。

标签: amazon-web-servicesemailpublish-subscribeamazon-snsamazon-policy

解决方案


如果您的用例是向用户发送电子邮件,那么 Amazon SNS 并不是一个真正合适的架构。Amazon SNS 最适合用于应用程序之间的消息传递,或用于向内部员工发出警报。

对于向外部用户发送电子邮件,您确实应该使用 Amazon Simple Email Service (SES)。


推荐阅读