Azure Web App无法访问虚拟网络内OpenAI专用端点问题求助
私有网络中WebApp调用OpenAI API遇权限拒绝问题的解决方案
问题背景
- 部署架构:隔离虚拟网络内托管私有ChatGPT类Web应用,无外部互联网访问;WebApp(10.0.0.5)调用OpenAI API的私有端点(10.0.0.6);通过Bastion虚拟机访问WebApp。
- 正常状态:OpenAI Studio仅能在私有网络内通过Bastion VM使用;WebApp仅私有网络可访问,公网返回
403 Forbidden;公网访问OpenAI Studio提示Public access is disabled. Please configure private endpoint,均符合预期。 - 当前故障:WebApp请求OpenAI API时返回
Access denied due to Virtual Network/Firewall rules.
排查与解决方案
1. 验证OpenAI API私有端点的网络规则
- 检查OpenAI API私有端点的虚拟网络访问权限:确认WebApp所在子网已被添加到OpenAI资源的允许访问虚拟网络列表中。
- 确认私有端点防火墙规则:确保未拒绝WebApp IP(10.0.0.5)或其所在子网的入站流量,需允许来自WebApp子网的TCP 443端口请求。
2. 检查WebApp的网络配置
- 确认WebApp已启用虚拟网络集成:确保WebApp已加入目标私有网络的子网,且配置为仅私有网络内传输流量,无公网出站路由。
- 验证WebApp出站规则:检查WebApp的网络安全组(NSG)是否允许向10.0.0.6的443端口发起请求。
- 核对API请求地址:确认WebApp代码中调用的OpenAI API地址为私有端点
10.0.0.6,而非公网域名,避免请求走公网被拦截。
3. 检查网络安全组与路由表
- 配置WebApp子网出站NSG规则:添加允许访问
10.0.0.6/32、443端口的规则,优先级需高于全局拒绝出站的规则。 - 配置OpenAI端点子网入站NSG规则:添加允许来自WebApp子网(或
10.0.0.5/32)、443端口的规则。 - 确认路由表:确保WebApp到10.0.0.6的流量走私有网络内部路由,未被转发至互联网网关。
4. 检查OpenAI资源的访问控制设置
- 在OpenAI Studio资源配置中,确认网络访问控制设置为“允许选定的虚拟网络和IP地址”,并已添加WebApp所在的虚拟网络/子网。
- 验证专用链接状态:确保OpenAI API的私有端点已正确关联到虚拟网络,状态显示为“已连接”。
内容的提问来源于stack exchange,提问作者KevJo
相关产品推荐
相关产品推荐

