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

求助:Azure APIM IP策略适配Azure Front Door动态IP的解决方案

问题:Azure APIM IP限制与Front Door动态IP冲突解决方案

我们使用Azure APIM管理各客户端的API调用,并通过IP限制策略仅允许特定IP地址访问API。主应用(网站)部署在Azure VM上,请求通过Azure Front Door进行路由,但启用IP策略后,请求被Azure APIM拦截。

此前我们将网站的IP地址添加到IP策略XML中,但发现当承载网站的VM重启或停止后,Azure Front Door的IP地址会发生变化,每日手动更新IP范围的操作难度极大。

当前使用的IP策略配置如下:

<!-- Add policies as children to the <inbound>, <outbound>, <backend>, and <on-error> elements -->
<policies>
    <!-- Throttle, authorize, validate, cache, or transform the requests -->
    <inbound>
        <base />
        <cors allow-credentials="false">
            <allowed-origins>
                <origin>*</origin>
            </allowed-origins>
            <allowed-methods>
                <method>*</method>
            </allowed-methods>
                .........................................
  <ip-filter action="allow">
            <address-range from="xx.xx.xx.xx" to="xxxx:xxx:bdf:0:0:0:0:xx" />
            <address-range from="xx.xx.xx.xx" to="xxxx:1ec:bdf::xx" />
            <address>xx.xx.xx.xx</address>
            <address>xx.xx.xx.xx</address>
            <address>xx.xx.xx.xx</address>
            <address>xx.xx.xx.xx</address>
  </ip-filter>

以下是无需额外增加Application Gateway成本的可行解决方案:

  • 基于X-Forwarded-For头验证原始VM IP
    APIM会保留Front Door转发的原始客户端IP在X-Forwarded-For请求头中。如果给VM配置静态公网IP,可修改IP过滤策略,直接验证该头中的原始IP(即VM的静态IP),而非Front Door的动态出口IP。
    实现思路:先用set-variable提取X-Forwarded-For的第一个IP值,再通过ip-filter或choose策略对该IP进行校验。

  • 用APIM命名值+自动化脚本管理IP列表
    将允许的IP/IP范围存储到APIM的**命名值(Named Values)**中,策略里直接引用命名值(如{{AllowedVMIPs}})。若VM是动态IP,可编写Azure Automation脚本,定期获取VM的公网IP并自动更新命名值,完全替代手动操作。

  • 替换为Azure AD身份验证
    若业务场景允许,给Front Door配置Azure AD身份验证,仅让经过认证的请求到达APIM。APIM可验证Front Door传递的身份令牌,确保请求来自可信的Front Door实例,彻底摆脱IP依赖的限制。

  • 使用Front Door静态IP前缀(预览功能)
    Azure Front Door提供静态IP前缀预览服务,申请后可获得固定的IP范围,将这些前缀添加到APIM的IP过滤策略中即可,无需担心IP动态变化。该功能无需额外成本,适合不想调整架构的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 03:57:05