You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Azure API Management策略对Azure App Service路由生效?

问题原因与解决方案

为什么直接访问App Service不会触发APIM限流策略

Azure API Management(APIM)的策略仅对通过APIM网关转发的请求生效。当你直接访问App Service的URL时,请求完全绕过了APIM网关,自然不会触发在APIM中配置的任何策略(包括限流)。

让限流策略生效的两种方案

方案1:限制App Service仅允许APIM访问(推荐)

通过配置App Service的访问限制,拒绝所有非APIM来源的请求,强制所有流量必须经过APIM,这样限流策略就能覆盖所有合法请求:

  • 登录Azure门户,进入你的App Service资源
  • 左侧导航选择 网络 > 访问限制
  • 点击 添加规则,设置允许的IP范围:
    1. 先获取APIM的出站IP地址:进入APIM资源的概述页面,复制页面中的“出站IP地址”列表
    2. 将这些IP地址逐一添加到App Service的允许规则中
  • 设置默认规则为 拒绝,这样除了APIM的IP外,其他所有直接访问都会被拦截

方案2:在App Service中独立实现限流

如果业务需要保留App Service的直接访问权限,那么需要在Web API代码中自行实现限流逻辑:

  • 对于ASP.NET Core项目,可以使用官方的Microsoft.AspNetCore.RateLimiting中间件,在Program.cs中配置限流规则
  • 或者使用Azure App Service自带的限流功能(在App Service的性能 > 限流中配置),不过该功能的限流规则相对基础,无法实现APIM那样复杂的策略

内容的提问来源于stack exchange,提问作者Nataliya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 22:20:41