Allow anonymous access to my Azure OpenAI chat bot

题意:允许匿名访问我的 Azure OpenAI 聊天机器人

问题背景:

I have an Azure OpenAI chat bot using my own data (I configured an OpenAI resource and chose Deploy as Web App) . Members of my domain can access it by logging in. Now I want it to be accessible anonymously or for other domains I define - whatever is easier to configure.

我有一个使用我自己数据的 Azure OpenAI 聊天机器人(我配置了一个 OpenAI 资源并选择了以 Web 应用的形式部署)。我的域内成员可以通过登录访问它。现在我希望它可以匿名访问,或者对我定义的其他域开放------以更容易配置的方式为准。

In the Azure Web App Authentication settings I could do two things:

在 Azure Web 应用的身份验证设置中,我可以做两件事:

  • Disable Authentication 禁用身份验证
  • Allow unauthenticated access 允许未认证的访问

See this screenshot: 看下面的截图

When I disable authentication or when I allow unauthenticated access I get in both cases the same error message when opening the chat bot:

当我禁用身份验证或允许未认证的访问时,在打开聊天机器人时,两种情况下都会出现相同的错误消息:

Authentication Not Configured

I also tried to allow not only my single domain but multiple account types of the Identity Provider. But when I login with a different domain I still the an error messge:

我还尝试允许不仅是我的单一域名,还包括多个身份提供者的帐户类型。但是,当我使用不同的域名登录时,我仍然看到错误消息:

AADSTS50020: User account 'myuser@otherdomain' from identity provider 'https://sts.windows.net/....../' does not exist in tenant 'MyDomain' and cannot access the application 'MyChatBot') in that tenant.

How to do it properly? 该如何正确配置?

问题解决:

Context

You have to understand that the "Deploy to Web App" button in Azure OpenAI Studio is only an accelerator for the "all-in-one" deployment of a project which is in fact open-sourced by Microsoft.

你需要了解,Azure OpenAI Studio 中的"部署到 Web 应用"按钮只是一个用于项目"一体化"部署的加速器,而该项目实际上是由微软开源的。

It's this one: 就是这个: GitHub - microsoft/sample-app-aoai-chatGPT: Sample code for a simple web chat experience through Azure OpenAI, including Azure OpenAI On Your Data.

So the Authentication Not Configured message you are facing is implemented inside this project, here:

所以你遇到的 "Authentication Not Configured" 错误消息是实现于该项目内部的,位置在这里:sample-app-aoai-chatGPT/frontend/src/pages/chat/Chat.tsx at af9d06b4ba153523fed366d3f8b1b19d1fc5f5e8 · microsoft/sample-app-aoai-chatGPT · GitHub

Possible solution 可能的解决方案

The README of the project explains that you can remove it if you want, here

该项目的 README 中解释了如果你想移除它,可以查看这里。

To remove this restriction, you can add AUTH_ENABLED=False to the environment variables. This will disable authentication and allow anyone to access the chat functionality of your app. This is not recommended for production apps.

As said, "This is not recommended for production apps.".

正如所说,"这不建议用于生产环境的应用程序。"

Especially as the frontend is calling itself for the conversation (POST to /conversation) so if you remove the authentication, I guess that someone could use this endpoint directly to consume your OpenAI resource which is behind (ok, they can't modify your system message etc. but it's still an issue)

特别是因为前端是通过自身调用进行对话的(POST 到 /conversation),所以如果你移除了身份验证,我猜测有人可能会直接使用这个端点来消耗你后台的 OpenAI 资源(虽然他们不能修改你的系统消息等,但这仍然是一个问题)。

相关推荐
落魄实习生2 小时前
AI应用-本地模型实现AI生成PPT(简易版)
python·ai·vue·ppt
ibrahim4 小时前
Llama 3.2 900亿参数视觉多模态大模型本地部署及案例展示
ai·大模型·llama·提示词
新智元8 小时前
LeCun 八年前神预言,大模型路线再颠覆?OpenAI 宣告:强化学习取得稳定性突破
人工智能·openai
探索云原生8 小时前
在 K8S 中创建 Pod 是如何使用到 GPU 的: nvidia device plugin 源码分析
ai·云原生·kubernetes·go·gpu
SimonLiu00911 小时前
[AI]30分钟用cursor开发一个chrome插件
chrome·ai·ai编程
伯牙碎琴12 小时前
智能体实战(需求分析助手)二、需求分析助手第一版实现(支持需求提取、整理、痛点分析、需求分类、优先级分析、需求文档生成等功能)
ai·大模型·agent·需求分析·智能体
卓琢1 天前
2024 年 IA 技术大爆发深度解析
深度学习·ai·论文笔记
zaim11 天前
计算机的错误计算(一百八十七)
人工智能·ai·大模型·llm·错误·正弦/sin·误差/error
程序员小灰1 天前
OpenAI正式发布o3:通往AGI的路上,已经没有了任何阻碍
人工智能·aigc·openai
凳子花❀1 天前
市场常见AI芯片总结
ai·gpu