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

Azure Bot Service能否借助VNET实现出站通信?禁用公网访问后Teams通道失效

Azure Bot Service VNET 出站通信与Teams通道问题解答

针对你的场景和问题,逐一解答如下:

1. Azure Bot Service是否正在通过VNET进行出站通信?

默认情况下,Azure Bot Service的业务流量(包括向你的消息端点samplebot.azurewebsites.net/api/messages发起的请求)是通过公共网络出站的,而非你配置的vnet_1。你创建的专用终结点仅控制Bot Service管理平面的访问(比如Azure门户对Bot资源的操作),而非业务流量的出站路径。

只有当你为Bot Service(仅限Premium SKU)配置了虚拟网络集成,或者你的Bot托管在已启用VNET集成的App Service中时,Bot的出站流量才会通过VNET路由。目前从你的描述看,未完成这一关键配置,因此Bot Service并未通过VNET进行出站通信。

2. 是否缺少无法通过Azure门户界面配置的设置?

核心缺失的是让Bot Service出站流量进入VNET的配置,这部分大部分可通过门户完成,无需额外非界面操作:

  • 启用Bot Service的虚拟网络集成:若你的Bot使用Premium SKU,在Azure门户的Bot资源「网络」选项中,找到「虚拟网络集成」并关联vnet_1,确保Bot的出站流量路由至VNET。
  • 确认消息端点的网络权限:你的samplebot.azurewebsites.net/api/messages已配置专用链接,需确保VNET内的Bot Service出站流量(而非仅VM)被允许访问该端点。可在App Service的「网络」-「专用端点连接」中确认专用链接状态,同时检查App Service的「接入限制」是否允许来自vnet_1的流量。
  • 验证Bot Service的SKU:只有Premium SKU的Azure Bot Service支持虚拟网络集成,若使用Standard或Free SKU,无法配置VNET出站,需升级SKU。

3. 为何禁用消息端点的公共访问后通道会失效?

Teams通道的工作流程是:Teams服务将用户消息发送至Azure Bot Service,Bot Service再将请求转发至你的消息端点进行处理。默认情况下,Bot Service是从公共IP地址向你的消息端点发起请求的。

当你禁用消息端点的公共访问后,所有来自公网的请求(包括Bot Service的公共出站请求)会被阻断,导致Bot Service无法将Teams的消息传递至你的端点,进而引发通道失效。虽然VNET内的VM能访问端点,但Bot Service未配置为通过VNET出站,因此它的请求仍走公网,被你的端点的访问限制拦截。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 03:25:58