Azure 逻辑应用程序 - Disable/Limit 基于已启动的运行

Azure Logic Apps - Disable/Limit based on Runs Started

我有一个 Azure 逻辑应用程序,它提供可公开访问的 HTTPS URL 来触发 Azure 逻辑应用程序。逻辑应用程序执行大量数据操作等,然后将响应发送回请求者。这运作良好,但我担心如果有人故意调用此 HTTPS URL(即:DDOS 攻击或类似的东西)

阻止这种情况的最佳方法是什么?我知道 Azure 有每 5 分钟 100 000 次运行的限制,但这仍然很快加起来。有没有更好的方法来设置一个阈值来阻止这种情况?我的一些想法:

  1. 创建指标警报并调用另一个 Azure 逻辑应用程序以禁用重复调用的开放逻辑应用程序。但我似乎无法让它工作。
  2. 使用流量管理器或类似的东西来管理一些限制或阈值,但也不确定它是如何工作的。

任何建议或想法都会很有帮助。 Logic App 的吞吐量相对较低,10 分钟内超过 5000 次调用将不正常。由于这个原因,成本相对较低,而像 Azure DDOS 保护这样的东西太贵了。因此,该方法肯定需要具有成本效益。

最好的解决方案是使用某种形式的 API 管理来安全地公开您的 API。 这是一个很好的博客 post,介绍如何使用 Azure API 管理保护您的 API:

using-azure-api-management-to-prevent-denial-of-wallet-attacks