我有一个包含 3 个带有私有端点的应用服务的应用服务计划,从应用服务 B 到应用服务 C 的调用失败并显示 403 禁止错误

时间:2021-03-31 12:08:44

标签: azure azure-web-app-service azure-private-link azure-private-dns-zone

我有一个应用服务计划,其中包含 3 个应用服务,所有 3 个应用都有专用端点。 前端调用--> 中间件调用--> 后端

从中间件到后端的调用失败,我在中间件的应用程序日志或日志流中没有看到任何错误,只有一条日志消息表明调用了后端。

当我直接从浏览器访问后端 url 时,我得到了响应。 例如https://backend.azurewebsites.net/hello 回复“你好”

当我尝试 tcpping backend.azurewebsites.net:443 时,从中间件的 kudu bash 我得到 错误的目标地址 从中间件到后端的 curl 命令失败,出现 403 Forbidden Error curl https://backend.azurewebsites.net/hello --> 403 禁止错误。

中间件是 Linux 上的 Docker 容器, 后端运行时堆栈 Java 8、Java Web 服务器堆栈 - Linux 上的 JAVA SE(嵌入式 Web 服务器)

任何关于我在这里遗漏的指导都会有很大帮助。

1 个答案:

答案 0 :(得分:0)

私有端点仅用于传入 Web 应用程序的流。

传出流不会使用这个私有端点, 可以使用 VNET 集成功能通过 VNET 路由来自应用服务的传出流。

请参考链接

https://docs.microsoft.com/en-us/azure/app-service/networking/private-endpoint

https://docs.microsoft.com/en-us/azure/app-service/web-sites-integrate-with-vnet#enable-vnet-integration