我正在使用LambStatus https://lambstatus.github.io/创建一个状态页面,并希望组件的状态通过cloudwatch警报自动更新。我必须限制访问状态页面。目前,我只将来自VPN或VPC IP地址的流量列入白名单。在理想情况下,cloudwatch警报会触发SNS ----> Lambda函数--->卷曲API端点以更新组件。
我需要将Lambda放在VPC中,以便HTTPS修补程序来自一组IP地址,或者发现将VPC列入白名单的其他方法。
Lambda函数可以访问VPC资源,但仍存在于默认VPC中。我可以控制lambda函数的IP地址,还是可以通过某种方式将lambda请求列入白名单?
答案 0 :(得分:1)
由于如果您打算使用WAF,则Lambda使用EC2范围内的IP地址,因此您需要在CURL中添加一个显式标头,并且仅当该标头存在时才允许WAF中的请求。
自从您提到WAF以来,我假设API端点是公共端点,可以通过公共IP地址访问。
在这种情况下,好的选择是在VPC中使用Lambda。 Lambda与VPC环境中的公共IP通信,它需要启动一个私有子网,您可以选择一个具有到NAT网关的默认路由的子网,NAT网关需要一个弹性IP地址,因此来自Lambda的所有流量都将被发送出去通过NAT网关,您可以将NAT网关IP列入白名单。 我不建议使用NAT实例,因为我不知道实例类型和请求数。