"Account has no subscriptions" 从 SQL Server Management Studio 添加新的防火墙规则时

"Account has no subscriptions" when adding new firewall rule from SQL Server Management Studio

  1. 用户正尝试通过 SQL Server Management Studio (SSMS v16.5.1) 连接到 Azure SQL 数据库。

  2. 用户的当前 IP 地址未在 Azure SQL 服务器的防火墙规则中列出。

  3. 因此,用户会看到“新建防火墙规则”对话框。

  4. 当用户使用他们的 Azure Active Directory (Azure AD) 凭据登录时,他们会收到一条错误消息:

    Account has no subscriptions

  5. 单击 "Details" 显示:

    We experienced issues in connecting to Azure

    Additional information:
    login account does not have Azure subscriptions.
    (Microsoft.SqlServer.Management.ApplicationAuthenticationManagement)

为什么用户会收到此错误消息,他们如何为他们的 IP 地址添加新的防火墙规则?

Azure 支持人员根据 an Azure documentation article.

与我分享了以下内容

给定 Azure SQL 服务器,只有 Active Directory 管理员SQL 服务器管理员 有权限在服务器级别添加防火墙规则。

上面的错误消息(有点模糊)表明用户两者都不是。

我的个人经验还表明,分配为订阅 Co-administrators 的 Azure AD 帐户也可以设置防火墙规则。

当且仅当授予用户权限是适当的时,这可以通过以下三种方式之一完成:

  1. 将用户指定为 SQL 服务器管理员

  2. 将服务器的 Active Directory 管理员 设置为 Azure Active Directory 组并使用户的 AD 帐户成为该组的成员。

  3. 使用户成为 Co-administrator 通过 https://manage.windowsazure.com/

  4. 订阅

在采取行动之前,请务必了解每个选项的安全隐患。

查看即将上线的这两个教程(稍后将在 2017 年 1 月 13 日上线): https://docs.microsoft.com/en-us/azure/sql-database/sql-database-control-access-sql-authentication-get-started https://docs.microsoft.com/en-us/azure/sql-database/sql-database-control-access-aad-authentication-get-started

这些教程讨论了将服务器和数据库级防火墙规则与 SQL 服务器身份验证和 Azure Active Directory 身份验证结合使用。 我希望这些帮助, 卡尔

在 Azure 门户中(https://portal.azure.com/#resource/subscriptions/{Your-GUID}/resourceGroups/AdminPortalDev/providers/Microsoft.Sql/servers/wjidentityserver/databases/{Your-DATABASE_SERVER}/overview )

  • Select 你的数据库
  • Select "Overview"
  • "Set server firewall" 在工具栏上
  • 在工具栏上添加客户端 IP

然后您就可以从新的 IP 地址进行连接了。
我可以在没有管理员身份的情况下添加 IP 地址。

更详细的步骤在https://docs.microsoft.com/en-us/azure/sql-database/sql-database-security-tutorial#create-a-server-level-firewall-rule-in-the-azure-portal中描述。

其他问题Client with IP addres is not allowed to access the server Azuredb描述了更有意义的消息和相同的解决方案。