我们运行一个 SaaS,将数据放入其他人的 SQL Azure 数据库中。这些数据库是第三方的,不受我们控制 - 我们只要求他们将我们的 IP 地址列入白名单。
最近,我们将应用程序添加到VNet并为自己获得了固定IP。我们要求客户将新 IP 地址列入白名单。对于大多数人来说,没有问题。
但是,一些客户在自己的 VNet 中拥有数据库,并使用专用终结点授予对其其他系统的访问权限。我们发现我们的应用程序无法连接到这些数据库,直到它们删除其专用端点。在这里,我从 Azure 应用程序访问控制台并连接到第 3 方数据库 - 有或没有私有端点:
您可以看到第一个仅解析为“privatelink”别名,但第二个返回更多信息,包括 IP 地址。
起初我以为这是 SQL 重定向连接策略,因此我按照讨论 SQL 重定向的各种在线文章,向我自己的 VNet 添加了 NGS 和传出规则:
这并没有产生什么影响。
我已经让客户将我们的新 IP 地址列入白名单。值得注意的是,在我自己的测试中(使用兼容的客户端),即使我短暂地打开所有 IP 地址的防火墙,我们仍然无法获得访问权限。如果我们选中“允许 Azure 服务”框,我们也无法获得访问权限。我相信这表明我们根本无法首先解析该名称,因此甚至还没有到达防火墙(?)
这是一个 SaaS,因此我无法手动将专用端点连接到我们端的每个客户端数据库。我需要其中一个:
谢谢