CloudFlare 中将 Twilio 请求列入白名单的等效替代方案

问题描述 投票:0回答:1

我的要求: 使用 CloudFlare 防止非 Twilio 访问我的 ALB 托管应用程序。

我的限制: 由于 Twilio 云设计的性质,由于请求可能来自大量 IP,因此不可能将访问列入白名单到一组 IP。

可能的解决方案: Twilio 在 https://www.twilio.com/docs/usage/security 下建议了几个选项,但我不知道如何使用这些方法中的任何一个作为仅允许 twilio 流量的方法。但任何设计的验证都只能应用于我网站的 url 中 /api 的 dns 记录。

更多信息: 底层应用程序是用 php 编写的。 我更喜欢 CloudFlare 解决方案,而不是更改应用程序中的代码。

amazon-web-services twilio cloudflare twilio-php
1个回答
2
投票

一种可能的方法是:

  • 使用 Cloudflare 防火墙规则 检查 api 路径上是否存在
    X-Twilio-Signature
    (作为第一个基本检查),阻止没有它的请求。
  • 使用在 API 路径上配置的 Cloudflare Worker。工作人员代码可以读取
    X-Twilio-Signature
    和请求数据,并使用 Twilio 文档中描述的过程来验证它。如果匹配,则将请求转发到您的负载均衡器。如果没有,则向调用者返回错误。

此外,请确保您的源服务器仅接受来自 Cloudflare 的流量,以防止直接篡改。

© www.soinside.com 2019 - 2024. All rights reserved.