如何在 Azure SQL Server 中添加 Azure AD 组

dea*_*mah 7 azure-active-directory azure-sql-database

有人可以告诉我如何将 Azure Active Directory 组添加到 azure sql server 中,我正在使用服务器管理器工具来执行此操作,但找不到任何方法来解决这个问题,不过我可以添加简单的 Azure Active Directory 用户。团体?

Mik*_*ike 11

我将假设您希望为最终用户而不是数据库管理员提供连接访问权限。对于我下面的示例,假设最终用户位于名为“AZ-Users”的组中,而您的数据库管理员(包括您)位于名为“AZ-DBA”的组中。

对于 Azure SQL 数据库,必须具备以下关键条件才能使其发挥作用:

  1. 必须为您的服务器配置“Active Directory 管理员”。这可以是任何 AAD 用户或 AAD 组。您可以通过转到服务器的 Azure 门户页面来检查是否已设置。请注意,您查看的是服务器的概览页面,而不是单个数据库,它们不是一回事。详细说明在这里。在我们的示例中,我们将其配置为名为“AZ-DBA”的 AAD 组。

  2. 当您准备好在 Azure SQL 数据库上为“AZ-Users”创建 AAD 登录时,您必须自己使用 AAD 登录...这意味着我上面示例中的“AZ-DBA”组的成员。您可以使用 SSMS 或任何其他类似工具来执行 TSQL 命令。请注意,如果您改为尝试 SQL 身份验证连接,它将不适用于下面的第 4 步 - 您将收到此错误:

Msg 33159, Level 16, State 1, Line 1
Principal 'AZ-Users' could not be created. Only connections established with Active Directory accounts can create other Active Directory users.
Run Code Online (Sandbox Code Playgroud)
  1. 将上下文更改为您希望为最终用户提供访问权限的数据库。

  2. 执行这个语句:

    CREATE USER [AZ-Users] FROM EXTERNAL PROVIDER
    
    Run Code Online (Sandbox Code Playgroud)

请注意,这将创建一个“包含的数据库用户”,详见此处。就是这样。此过程适用于 AAD 组和 AAD 用户。

  1. 您可能还想授予某种级别的权限,例如:

    EXEC sp_addrolemember 'db_datareader', 'AZ-Users'
    
    Run Code Online (Sandbox Code Playgroud)


Alb*_*llo 2

您可以在本文中找到有关如何配置和管理 Azure Active Directory 身份验证所需的所有信息。

然后,要使用 Azure Active Directory 身份验证连接到 SQL Azure,请阅读此处