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

如何实现Azure Function与Azure Managed Instance无需IP白名单的交互?

解决Azure Function与Azure Managed Instance无需IP白名单的交互方案

针对你遇到的IP白名单不稳定问题,以下是几种无需配置IP白名单即可实现两者安全交互的方案,按推荐程度排序:

方案1:将Function部署至同一VNET的委派子网(最稳定)

利用同一虚拟网络内资源互通的特性,把Function接入Managed Instance所在的VNET:

  • 准备一个独立子网,在子网设置中完成子网委派,目标选择Microsoft.Web/serverFarms(仅高级/Premium或专用/Dedicated App Service计划支持)
  • 创建或更新Function的App Service计划为高级/Premium或专用/Dedicated类型(消费计划不支持VNET集成)
  • 在Function应用的「网络」设置中,开启「VNET集成」,选择上述已委派的子网
  • 修改Function的数据库连接字符串,使用Managed Instance的内部FQDN(如mi-name.private.database.windows.net)或私有IP,确保流量走VNET内部而非公网
  • 检查Managed Instance所在子网的NSG规则,无需额外添加IP允许规则(同一VNET内默认互通,除非NSG有明确拒绝规则)

方案2:使用Service Connector一键打通私有访问

Service Connector会自动处理私有端点、VNET配置等细节,操作更简便:

  • 在Function应用的Azure门户页面,找到「Service Connector」(左侧导航「开发工具」或「网络」分类下)
  • 点击「创建」,服务类型选择「Azure SQL Managed Instance」,选中你的目标实例
  • 认证方式选择SQL认证(匹配你当前的使用场景),网络选项选择「私有访问」
  • 完成配置后,Service Connector会自动生成并注入正确的私有连接字符串到Function应用中,直接测试连接即可

方案3:启用SQL服务端点(轻量配置)

如果不想改动Function的部署计划,可通过服务端点让流量走Azure骨干网络:

  • 在Managed Instance所在子网的设置中,启用Microsoft.Sql服务端点
  • 在Function应用的「网络」设置里,开启「服务端点访问」,添加SQL服务的端点规则
  • 此时Function到Managed Instance的流量会通过Azure内部骨干传输,无需IP白名单,且Managed Instance的公网端点可保持仅允许服务端点流量的限制

补充:关于之前出站IP白名单失效的原因

即使Resource Explorer显示固定出站IP,Function在部署扩容、临时实例调度时,可能会使用额外的临时出站IP(消费计划尤为明显),导致仅添加固定IP的白名单无法覆盖所有流量,这也是IP白名单方案不稳定的核心原因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 09:13:14