我已经配置了AWS SNS通知来调用我的HTTP端点。我需要打开我的防火墙,允许AWS SNS调用它。
但是,我找不到任何关于SNS HTTP通知呼叫IP的信息。我通过它的呼叫捕获了一些IP(54.240.194.1,54.240.194.65,54.240.194.29)。但我不确定SNS HTTP通知源IP的完整列表是什么
我可以打开我的防火墙54.240.194.0/24。但没有官方信息表明这是正确的。
谢谢。
亚马逊社交网络论坛中提供了亚马逊社交网络通知来源的IP地址列表。随着IP信息的变化,我们更新了这篇文章。
请注意,虽然通知通常来自创建主题的同一地区的IP,但这并不能保证,例如,从US-EAST-1中创建的主题发送的通知可能来自US-WEST-1或EU-WEST-1。换句话说,您应该将此列表中的所有地址添加到您的入口规则中,即使您只计划使用一个区域。
在这种情况下,SQS可能更合适,因为您将启动与亚马逊的连接,而不是要求AWS联系您。这意味着你不需要更改防火墙,也不会在你的安全性上戳洞。。。
如果你需要其他端点的SNS通知,你可以将SNS泵送到这个特定端点的SQS:
http://docs.aws.amazon.com/sns/latest/dg/SendMessageToSQS.html
非常确定您不能指望任何特定的IP地址或范围。
如果你想保护你的端点,或者至少确保发送给它的任何消息都来自AWS,那么这份文档可能会有所帮助:
您可以验证通知的真实性,订阅确认,或由发送的取消订阅确认消息亚马逊SNS。使用亚马逊SNS消息中包含的信息,端点可以重新创建要签名的字符串和签名您可以通过匹配使用签名从邮件内容中重新创建的签名亚马逊社交网络发送的消息。
http://docs.aws.amazon.com/sns/latest/dg/SendMessageToHttp.verify.signature.html
上面接受的答案在亚马逊论坛中已过期。
这个链接可能更有帮助,希望是永久性的,但显然适用于所有IP范围。
发件人https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html....
AWS IP地址范围
这是一个用来过滤/搜索大量文件的工具https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html#filter-json文件