Azure Function突然使用未列在属性中的新IP访问KeyVault问题咨询
解答
基于Function App属性页列出的IP配置KeyVault IP过滤并非完全不可行,只是该方案存在明确适用边界,IP不在属性列表的问题本质是没有覆盖Function App所有可能的出站IP段。
陌生出站IP的产生原因
- 消费计划、弹性Premium(EP)计划的Function App由平台根据负载动态伸缩实例,门户属性页展示的仅为当前正在使用的出站IP,并非对应区域下Function App服务可分配的全部出站IP范围。当平台资源池扩容、或应用触发跨资源池缩放时,就会产生未在属性页展示的新出站IP。
- 若Function App开启了VNet集成,出站流量会走VNet的SNAT地址池而非Function App默认公网出站IP,此时属性页展示的IP本身和实际出站IP不一致。
优化方案
- 保留IP白名单方案:将Function App所在区域的
AzureFunction服务标签对应的全部IP段加入KeyVault白名单,可通过Az PowerShell或Azure CLI命令拉取对应区域的全量IP段,避免遗漏动态分配的IP。 - 更免维护的方案:放弃公网IP过滤逻辑,给KeyVault配置Function App所在子网的服务端点,或者配置私有端点,让Function App走内网访问KeyVault,无需维护动态变化的公网IP白名单。
内容的提问来源于stack exchange,提问作者Ryan Sangha
相关产品推荐
相关产品推荐

