将解决方案部署到 Azure SQL 服务器数据库后,用户 inactive/disabled 带有红色 "X" 标记

Users are inactive/disabled with red "X" mark after solution deployment to Azure SQL Server database

我们有针对 2019 年 Visual Studio 数据库项目的解决方案,其中包含 3 个项目。主项目在 Security 文件夹中包含带有用户信息的脚本。我们的用户使用“外部提供者”方法在 Azure 门户中进行身份验证。从 Visual Studio 角度在标准 way/configuration 中创建用户或项目与现有 Azure 数据库同步:

案例是:将解决方案部署到 Azure 中的目标数据库(Azure SQL 服务器数据库)后,当我们打开安全文件夹时,我们可以看到所有用户都已创建,但还没有 enabled/valid .在用户图标旁边,我们可以看到像这样的红色小“X”:

.

我们还有 ADF 应用程序,它使用带“X”的用户连接到上述 Azure 数据库。不幸的是,ADF 无法建立连接并给出错误。我们为解决此问题所做的工作是删除该用户并使用外部提供者方法重新创建它并分配给正确的角色。之后 ADF 应用程序能够建立连接和查询数据库。用户旁边不再有红色的“X”图标。

有人可以解释一下为什么我们将“X”用户设为 invalid/inactive 吗?从 Visual Studio 的角度来看,配置中是否缺少某些内容?解决方法是删除并重新创建用户,但我们希望在一个解决方案部署中通过 Visual Studio 完成此操作。

我已经检查了为部署创建的脚本,其中有一部分用户被撤销了与数据库的连接。我将 CONNECT 授予该用户,“红色”标记消失了。用户现在可以连接到数据库。