【问题标题】:Access to AD group in Azure SQL Database访问 Azure SQL 数据库中的 AD 组
【发布时间】:2019-09-25 08:02:42
【问题描述】:

我有一个客户,他创建了 SQL azure 数据库并尝试授予对他在数据库中的本地安全组帐户的访问权限。我们面临的挑战是本地组被命名为“组帐户”,即单词之间有空格。此帐户与 Azure AD 同步。

两个问题

1) 如何提供对 SQL Azure 数据库上的安全组的访问权限?我知道您会说使用如下语法,但在我的情况下不起作用 i)名称中的单词之间有空格 ii)这不是启用邮件的组,因此在中没有对应的 @domain.com此组的 Azure AD

创建用户 [name@domain.com] 来自外部供应商

【问题讨论】:

    标签: sql-server azure-active-directory azure-sql-database


    【解决方案1】:

    我之前用过CREATE USER [Group Name] FROM EXTERNAL PROVIDER,效果很好。

    【讨论】:

      【解决方案2】:

      首先,您应该使用您的 AD 管理员帐户登录您的 Azure 数据库。

      然后运行此查询(与提供的 juunas 相同)以将本地安全组添加到 Azure SQL 数据库。

      CREATE USER [<Security Group Display Name>] FROM EXTERNAL PROVIDER WITH DEFAULT_SCHEMA = [<schema>];
      

      正如您所说,您的“组帐户”名称中有一个空格,我尝试了相同的操作,它可以正常工作,没有错误。

      例如,我使用 AD 管理员登录我的 Azure SQL 数据库,运行此查询以创建组帐户“test gp”。

      CREATE USER [test gp] FROM EXTERNAL PROVIDER WITH DEFAULT_SCHEMA = [dbo];
      

      运行SELECT * FROM SYS.DATABASE_PRINCIPALS,我们可以看到该组已在 Azure SQL 数据库中创建

      我执行了 TSQL:EXEC sp_addrolemember 'db_owner', 'test gp';

      似乎一切正常,但是当断开我的 SQL 数据库并尝试使用组帐户“test gp@****.com”登录时

      发生了一个错误:

      您也可以参考这些博客:

      1. Unable to add Azure AD group with ':' in display name to Azure SQL, am I missing something?
      2. Naming conventions in Active Directory for computers, domains, sites, and OUs

      我认为 Azure SQL 数据库不支持使用带有特殊字符的安全组名称登录数据库,例如空格(空白)。

      希望这会有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-06-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多