从SQL Server Management Studio添加新的防火墙规则时,“帐户没有订阅”

uri*_*rig 2 sql-server firewall azure azure-sql-database

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

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

  3. 因此,将向用户显示“新建防火墙规则”对话框。

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

    帐户没有订阅

  5. 单击“详细信息”显示:

    我们在连接到Azure时遇到了问题

    附加信息:
    登录帐户没有Azure订阅。
    (Microsoft.SqlServer.Management.ApplicationAuthenticationManagement)

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

在此处输入图片说明

uri*_*rig 6

Azure支持人员根据Azure文档文章与我分享了以下内容

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

上面的错误消息(有些模糊)指示用户都不是。

在此处输入图片说明

我的个人经验还表明,分配为订阅共同管理员的 Azure AD帐户也可以设置防火墙规则。

只有在适当的情况下才授予用户权限,这可以通过以下三种方法之一来完成:

  1. 将用户指定为SQL Server admin

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

  3. 通过https://manage.windowsazure.com/使用户成为订阅的共同管理员

在执行操作之前,请务必了解每个选项的安全隐患。