为 Microsoft Entra ID 的 Windows 身份验证配置 Azure SQL 托管实例

本文介绍如何配置托管实例以支持 Microsoft Entra ID(以前称为 Azure Active Directory)中主体的 Windows 身份验证。 对于传入的基于信任的身份验证流程现代交互式身份验证流程,设置 Azure SQL 托管实例的步骤是相同的。

注意

Microsoft Entra ID 以前称为 Azure Active Directory (Azure AD)。

先决条件

要为 Microsoft Entra 主体的 Windows 身份验证配置托管实例,需要满足以下先决条件:

先决条件 说明
Az.Sql PowerShell 模块 此 PowerShell 模块为 Azure SQL 资源提供管理 cmdlet。

通过运行以下 PowerShell 命令安装此模块:Install-Module -Name Az.Sql
Microsoft Graph PowerShell 模块 此模块为 Microsoft Entra 管理任务(例如用户和服务主体管理)提供管理 cmdlet。

通过运行以下 PowerShell 命令安装此模块:Install-Module -Name Microsoft.Graph
托管实例 你可以创建新的托管实例,也可以使用现有的托管实例。 你必须在托管实例上启用 Microsoft Entra 身份验证

在 Azure SQL 托管实例上配置 Microsoft Entra 身份验证

若要为 Microsoft Entra 主体启用 Windows 身份验证,你需要在每个托管实例上启用系统分配的服务主体。 系统分配的服务主体允许托管实例用户使用 Kerberos 协议进行身份验证。 你还需要向每个服务主体授予管理员许可。

启用系统分配的服务主体

为托管实例启用系统分配的服务主体:

  1. 登录到 Azure 门户
  2. 导航到你的托管实例
  3. 选择“标识”。
  4. 将“系统分配的服务主体”设置为“开启”。 Azure 门户中托管实例的标识窗格的屏幕截图,其中“系统分配的服务主体”设置为“开”。
  5. 选择“保存”。
  1. 登录 Azure 门户

  2. 打开 Microsoft Entra ID。

  3. 选择“应用注册”。

  4. 选择“所有应用程序”。 Azure 门户中的 Microsoft Entra ID 资源的屏幕截图,其中左侧窗格中选择了“应用注册”。

  5. 选择显示名称与你的托管实例匹配的应用程序。 名称将采用以下格式:<managedinstancename> principal

  6. 选择“API 权限”。

  7. 选择“授予管理员同意”。

    Azure 门户中为应用程序配置的权限的屏幕截图。示例应用程序的状态为“已为 aadsqlmi 授予”。

  8. 在提示中选择“是”以授予管理员同意确认。

使用 Windows 身份验证连接到托管实例

如果你已经实现了传入的基于信任的身份验证流程现代交互式身份验证流程(具体取决于你的客户端版本),你现在可以测试使用 Windows 身份验证连接到你的托管实例。

若要测试与 SQL Server Management Studio (SSMS) 的连接,请按照快速入门:使用 SSMS 连接和查询 Azure SQL 数据库或 Azure SQL 托管实例中的步骤操作。 选择“Windows 身份验证”作为身份验证类型。

SQL Server Management Studio 中的对话框,其中“服务器名称”区域中是托管实例名称,并且“身份验证”设置为“Windows 身份验证”。

后续步骤

详细了解如何为 Azure SQL 托管实例上的 Microsoft Entra 主体实现 Windows 身份验证: