即使选项在防火墙设置中设置为 yes,Azure SQL Server 防火墙也不允许操作连接

Posted

技术标签:

【中文标题】即使选项在防火墙设置中设置为 yes,Azure SQL Server 防火墙也不允许操作连接【英文标题】:Azure SQL Server firewall not allowing operation to connect even though option is set to yes in firewall settings 【发布时间】:2021-06-18 16:04:38 【问题描述】:

我正在尝试将我的本地 SQL 服务器数据库导入 Azure,并且我满足所有要求(存储、bacpac 文件等)。当我尝试导入数据库时​​,出现以下错误。

Azure SQL Server 防火墙不允许操作连接。 要解决此问题,请选中“允许所有 Azure”复选框 Sql Server 的配置刀片。

我已经在防火墙设置中的允许 Azure 服务和资源访问此服务器选项上勾选了“是”,并添加了我的客户端 IP。幕后有什么东西阻止它允许访问吗?我在 Docker 容器上运行我的 SQL 服务器。

导入的 bacpac 文件

导入 Azure 操作

导入错误

防火墙设置

【问题讨论】:

你是在代码级别导入数据库吗? @MPagan 感谢分享。我暂时没有遇到这种情况。真的很抱歉! 这很奇怪,因为使用相同的设置(不添加 0.0.0.0 IP)我在 4 个月前在 blob 存储上备份了 dbs 并成功完成了任务,今天我开始这样做了给我同样的错误,?任何理由, @MPagan 我在同一个数据库服务器下有 8 个数据库,并且我在它们下允许的所有 IP 都相同,没有区别,担心的是所有这些在 3、4 个月前都可以正常工作,但昨天他​​们确实有问题.有趣的是,经过另一次尝试备份成功:) . @MPagan 据我从您的屏幕截图中了解,我认为这与 IP 限制无关。您的数据库中是否有尝试导入的 SQL 用户?如果是这样,请从您的本地删除它们,然后创建 bacpac 并尝试再次导入新的 backpac。这可能会解决您的问题。让我知道好消息! :) 【参考方案1】:

经过一周的反复试验,数据库导入正常,没有问题,所以我会回答我的问题。有趣的是,我的问题没有具体的答案,因为我不知道为什么会这样,但无论如何我会给出两个提示。

    可能是 Azure 这边的缓存。我接触过 最近有一位 Azure 代表,他们说缓存可能没有 更新了。清除缓存可能是问题的根源 也是。要清除缓存,请参阅此document。
    DBCC FLUSHAUTHCACHE;    
    
    创建一个从 0.0.0.0 到 255.255.255.255 的新规则 您的防火墙设置。

请随时在答案中提供更多解决方案。就像我说的,很可能是他们这边的缓存。很奇怪,即使正确配置了防火墙设置,它也有一段时间无法工作。

【讨论】:

请避免添加从 0.0.0.0 到 255.255.255.255 的 IP 范围。它使您的 Azure SQL 易受攻击。只是好奇,删除本地SQL用户后是否修复?

以上是关于即使选项在防火墙设置中设置为 yes,Azure SQL Server 防火墙也不允许操作连接的主要内容,如果未能解决你的问题,请参考以下文章

不允许 IP 地址为“XXX.XXX.XXX.XX”的 Windows Azure 客户端访问服务器

Barrier 未在约束布局中设置为 referenceIds?

Xcode 7 尝试使用库归档 ios 应用程序

即使设置为亮,状态栏也保持黑色

Azure DevOps 在构建任务中设置内部版本号变量

确定根记录器是不是在 Python 中设置为 DEBUG 级别?