Azure web app has no access to openai private endpoint in virtual network

news/2025/1/15 2:35:59/

题意:"Azure Web 应用无法访问虚拟网络中的 OpenAI 私有端点。"

问题背景:

I am trying to host a web application similar to a private ChatGPT instance within a secluded virtual network, ensuring that there's no external internet access.

"我正在尝试在一个隔离的虚拟网络中托管一个类似于私人 ChatGPT 实例的 Web 应用程序,确保没有外部互联网访问。"

I have developed a web application that serves as the interface for the OpenAI API, where the API itself is utilized for ChatGPT functionality. To achieve privacy, I established a virtual network and set up private endpoints for both components. As a result, the Webapp resides at 10.0.0.5, while the OpenAI API is located at 10.0.0.6. Furthermore, I configured a virtual machine (VM) with a Bastion to gain access to my private web application. This setup has been functioning seamlessly thus far. The Chat feature within OpenAI Studio exclusively operates within the confines of my private network (via the Bastion VM), and I can only interact with my web application when connected to the VM. Any attempt to access the web app from the public internet results in a "403 Forbidden" error. Similarly, accessing OpenAI Studio from the public internet prompts the message "Public access is disabled. Please configure private endpoint," which is the intended behavior.

"我开发了一个作为 OpenAI API 界面的 Web 应用程序,API 本身用于 ChatGPT 功能。为了实现隐私,我建立了一个虚拟网络,并为两个组件设置了私有端点。因此,Web 应用位于 10.0.0.5,而 OpenAI API 位于 10.0.0.6。此外,我配置了一台带有 Bastion 的虚拟机 (VM),以便访问我的私有 Web 应用程序。目前,该设置一直运行良好。OpenAI Studio 内的聊天功能仅在我的私有网络(通过 Bastion VM)范围内运行,并且我只能在连接到虚拟机时与我的 Web 应用交互。任何从公共互联网访问该 Web 应用的尝试都会导致 '403 Forbidden' 错误。同样,从公共互联网访问 OpenAI Studio 会提示消息 'Public access is disabled. Please configure private endpoint',这正是预期的行为。"

However, I've encountered an issue: even with internet access restricted and proper access via the virtual network on my VM, attempting to use the question feature in my web application within the private network leads to the same "Public access is disabled. Please configure private endpoint" error. Strangely, the chat functionality in OpenAI Studio works flawlessly. There seems to be a specific obstacle affecting my web app's functionality.

"然而,我遇到了一个问题:即使限制了互联网访问,并且通过虚拟机的虚拟网络正常访问,在私有网络中尝试使用我 Web 应用程序中的提问功能时,仍然会出现相同的 'Public access is disabled. Please configure private endpoint' 错误。奇怪的是,OpenAI Studio 中的聊天功能运行得非常顺利。似乎有某个特定的障碍影响了我 Web 应用程序的功能。"

So i would like to ask if someone has an idea how to solve this.

"所以我想询问是否有人有解决这个问题的想法。"

//EDIT: This is what my private network looks like 

enter image description here

Now i made a few changes and seems like im a step further. Now if im requesting the OpenAI from my WebApp, it tells me "Access denied due to Virtual Network/Firewall rules."

"现在我做了一些更改,似乎有了进一步的进展。现在,当我从我的 Web 应用程序请求 OpenAI 时,它提示我 '由于虚拟网络/防火墙规则,访问被拒绝'。"

问题解决:

The fix was to create another subnet and activate the vnet integration in the web app and link it to the created subnet. 

"解决方法是创建另一个子网,并在 Web 应用程序中启用虚拟网络集成,并将其链接到创建的子网。"

enter image description here


http://www.ppmy.cn/news/1525592.html

相关文章

以太网--TCP/IP协议(二)

上文中讲述了IP协议,本文主要来讲一下TCP协议。 TCP协议 (1)端到端通信 直接把源主机应用程序产生的数据传输到目的主机使用这 些数据的应用程序中,就是端到端通信。 (2)传输层端口 公认端口&#xff0…

CCF刷题计划——训练计划(反向拓扑排序)

训练计划 计算机软件能力认证考试系统 这道题70分还是很好拿的。后面30分需要用到 反向拓扑排序 ,相对而言就麻烦点,需要逆序遍历。不着急,我们慢慢来。首先给出70分的代码。 本题可以学到:反向拓扑排序 70分题解:…

红黑树的删除

文章目录 前言一.删除的节点左子树右子树都有二.删除的节点只有左/右子树删除调整操作 三.删除的节点没有孩子1.删除的节点为红色2.删除的节点为黑色1).兄弟节点为黑色(1).兄弟节点至少有一个红色的孩子节点LL型RR型RL型LR型 (2).兄弟节点没有孩子或所有孩子为黑色 2).兄弟节点…

【贪心算法】贪心算法

贪心算法简介 1.什么是贪心算法2.贪心算法的特点3.学习贪心的方向 点赞👍👍收藏🌟🌟关注💖💖 你的支持是对我最大的鼓励,我们一起努力吧!😃😃 1.什么是贪心算法 与其说是…

跨系统环境下LabVIEW程序稳定运行

在LabVIEW开发中,不同电脑的配置和操作系统(如Win11与Win7)可能对程序的稳定运行产生影响。为了确保程序在不同平台上都能正常且稳定运行,需要从兼容性、驱动、以及性能优化等多个方面入手。本文将详细介绍如何在不同系统环境下&a…

Integer 缓存

在 Java 中,如果你通过 new Integer(value) 显式创建一个 Integer 对象,以下几点需要注意: 内存中的 Integer 对象 缓存范围: Java 自动缓存的 Integer 对象范围是从 -128 到 127。这些对象在类加载时被创建并存储在内存中。 使…

服务网关工作原理,如何获取用户真实IP?

文章目录 一、什么是网关二、网关工作原理 (★)三、SpringCloud Gateway3.1 Gateway 简介3.2 Gateway 环境搭建3.3 自定义路由规则 (★)3.4 局部过滤器3.5 全局过滤器(案例:获取用户真实IP地址) (★) 补充1:不同类型的客户端如何设…

使用@test-library/react的screen中的方法和直接使用getByText,getByTestId等的区别?

在 React Testing Library 中,screen 对象和直接使用 getByText, getByTestId 等方法之间的主要区别在于它们的使用方式和上下文。然而,从功能的角度来看,它们实际上是相互关联的,因为 screen 对象提供了一组封装好的查询方法&…