是否可以通过 MI 的专用终结点将 Azure Web 应用程序连接到 SQL 托管实例?
按照此处的文档https://docs.microsoft.com/en-us/azure/sql-database/sql-database-managed-instance-connect-app似乎只要 Web 应用程序服务在与托管实例相同的 VNET,则通过私有端点的连接应该是正常的。
我已在应用服务上启用 VNET 集成,以便将其集成到与托管实例相同的 VNET 中。我还在 MI 的端口 1433 上将 web 应用程序的所有出站 IP 地址(包括其他 IP 地址)列入白名单。
使用 MI 的私有连接字符串时,Web 应用程序在加载前端以及通过诊断工具检查连接字符串时无法连接。
启用 MI 上的公共端点并将端口 3342 上的所有出站 IP 列入白名单,webapp 能够立即连接而没有问题。切换回专用端点再次失败。
收到的错误信息是:
System.Data.SqlClient.SqlException: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)