由于 'Deny Public Access',CICD 无法释放数据库

CICD cannot release database due to 'Deny Public Access'

我是 CICD 流程和 Azure DevOps 的新手。

我正在尝试使用 Azure DevOps 发布管道将我的数据库从一个环境发布到另一个环境。

由于以下错误消息,我无法成功执行发布:

An instance-specific error occurred while establishing a connection to SQL Server. 
Connection was denied since Deny Public Network Access is set to Yes. 
To connect to this server, use the Private Endpoint from inside your virtual network (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).

我使用服务主体作为身份验证方法,我在 Azure DevOps 中创建了所需的服务连接。

注意:我在执行操作时也连接到 VPN。

非常感谢任何帮助。

恐怕如果您需要 MS 托管代理,您需要在 Sql 服务器级别启用 public 访问权限(您可以在 Firewalls and virtual networks 选项卡中找到它):

这些是可能的出路:

  1. 重新部署您的 Azure 资源并在部署资源之前选择拒绝 Public 网络访问“否”。如果您想与 Azure DB 建立端到端连接,“拒绝 Public 访问”应为“否”。
  2. 建立一个私有端点来连接-如果你想建立一个安全连接/私有连接,你需要在你的两个资源(Azure DB 和 Devops 应用程序)之间启用 Ptivate 端点/服务端点连接

否则,如果他们不想重新部署以更改设置,您可以设置私有 link::Quickstart - Create a Private Endpoint using the Azure portal | Microsoft Docs