Azure管道针对没有公共访问权限的服务器运行SQL



我们在azure中有一个SQL实例,直到最近它还公开可用,并且基于IP白名单限制访问。我们最近勾选了";拒绝公共访问";复选框,并为服务器设置专用端点。

我们在azure devops中也有构建和发布管道,它们在构建过程中创建一个SQL实体框架迁移文件,并在发布过程中使用管理员凭据针对SQL运行它,这意味着我们可以在数据库上应用迁移,而不需要应用程序对数据库进行基本的读/写访问。

我们遇到的问题是,当发行版需要对它无法连接的数据库执行SQL时,我认为这是因为构建代理在我们的vnet之外。

我们正在考虑在vnet中创建我们自己的构建代理,并将其用于构建&释放管道,我们相信这将解决问题,但如果有其他选择,我们希望有其他选择吗?

感谢5NRF和Ryu S.。将您的讨论作为答案发布,以帮助其他社区成员。

您可以尝试这些可能的解决方案中的任何一种。

  1. 在SQL服务器VM上创建自托管代理,该代理将是VNet的一部分
  2. 在连接相同VNet的Azure VM上创建自托管代理
  3. 在本地计算机上创建自托管代理。使用Express路由、私有对等或VPN隧道连接到私有端点

通过设置水塘到您的私人代理池,该池承载自托管代理。

参考:创建自托管代理,通过VPN从本地环境连接,

最新更新