【发布时间】:2020-03-28 02:45:57
【问题描述】:
我必须使用 AWS lambda 函数处理 Twilio 帐户的所有入站消息并将其转发到另一个号码。因此,我使用 Amazon API Gateway 创建了一个 POST API,并在 Twilio SMS webhook 配置上对其进行了配置。对于任何入站 SMS,Twilio 正在创建一个事件并调用 API。 API Gateway 依次调用 Lambda 函数。一切正常。 但问题是,据我所知,Twilio 仅支持 webhook 的公共 API。所以,我必须保持 API 公开。我正在寻找一些方法来防止未经授权的访问。
我研究了两种方法 -
将 Twilio IP 范围列入白名单:这似乎是不可能的,因为 Twilio 的 IP 地址是可变的。
验证请求来自 Lambda 函数内部的 Twilio: Twilio 文档也建议采用这种方法 - https://www.twilio.com/docs/usage/security。但是这样一来,每次都必须执行 Lambda 函数,即使是无效请求也是如此。
所以,我想知道是否有任何其他方法可以在不执行 Lambda 函数的情况下防止未经授权的访问。
【问题讨论】:
-
为什么不使用 Twilio 函数?它内置了这个功能。
-
@Alan 感谢您的回复。我不使用 Twilio 函数有几个原因。 1.它只支持Node js,我必须使用Golang。 2. 它目前作为测试版提供。 3. 我正在使用 AWS Lambda 免费套餐,所以,我不想花钱购买 Twillio 功能。
标签: amazon-web-services aws-lambda twilio aws-api-gateway