共用方式為


如何使用 Microsoft Entra ID 和 Kerberos 設定 Azure SQL 受控實例的 Windows 驗證

本文概述如何設定基礎結構和受控實例,以使用 Microsoft Entra ID 在 Azure SQL 受控實例上為主體實作 Windows 驗證先前稱為 Azure Active Directory)。

使用 Microsoft Entra ID 和 Kerberos 設定 Azure SQL 受控實例的 Windows 驗證有兩個階段。

  • 單次基礎結構設置。
  • Azure SQL 受控實例的組態。
    • 為每個受控實例建立系統指派的服務主體。

注意

Microsoft Entra 識別碼 先前稱為 Azure Active Directory(Azure AD)。

單次基礎設施設定

如果尚未完成,基礎結構設置的第一步是將 AD 與 Microsoft Entra ID 進行同步。

在此之後,系統管理員會設定驗證流程。 有兩個驗證流程可用於在 Azure SQL 受控實例上實作 Microsoft Entra 主體的 Windows 驗證:傳入的信任型流程支持執行 Windows Server 2012 或更高版本的 AD 聯結用戶端,而新式互動式流程支持執行 Windows 10 21H1 或更高版本的已加入 Entra 用戶端Microsoft。

同步 AD 與 Microsoft Entra ID

客戶應該先實作 Microsoft Entra Connect,以整合內部部署目錄與 Microsoft Entra ID。

選取您要實作的驗證流程

下圖顯示新式互動式流程和傳入信任型流程的資格和核心功能:

顯示選取驗證流程準則的判定樹。

「判定樹顯示,新式互動式流程適用於執行 Windows 10 20H1 或 Windows Server 2022 或更高版本的用戶端。這些用戶端必須是 Microsoft Entra 加入或 Microsoft Entra 混合式加入。」 傳入的信任型流程適用於運行 Windows 10 或 Windows Server 2012 或更高版本的客戶端,其中的客戶端已加入 Active Directory (AD)。

新式互動式流程適用於執行 Windows 10 21H1 及更高版本的高級客戶端,這些客戶端已加入 Microsoft Entra 或採用 Microsoft Entra 混合聯結方式。 在現代互動流程中,用戶可以存取 Azure SQL 受控實例,而無需與域控制器(DC)直接連接。 不需要在客戶的AD中建立信任物件。 若要啟用新式互動式流程,系統管理員會將 Kerberos 驗證票證 (TGT) 的組策略設定為在登入期間使用。

傳入的信任型流程適用於執行 Windows 10 或 Windows Server 2012 和更新版本的用戶端。 此流程需要用戶端加入 AD,並從內部部署看到 AD。 在傳入的信任型流程中,會在客戶的 AD 中建立信任對象,並將其註冊到 Microsoft Entra ID 中。 若要啟用傳入信任型流程,系統管理員將會使用 Microsoft Entra ID 設定傳入信任,並透過組策略設定 Kerberos Proxy。

新式互動式驗證流程

實作新式互動式驗證流程需要下列必要條件:

先決條件 描述
客戶端必須執行 Windows 10 20H1、Windows Server 2022 或更新版本的 Windows。
客戶端必須 Microsoft Entra 聯結Microsoft Entra 混合式聯結 您可以執行 dsregcmd 命令來判斷是否符合此必要條件: dsregcmd.exe /status
應用程式必須透過互動式會話連線到受控實例。 這支援 SQL Server Management Studio (SSMS) 和 Web 應用程式等應用程式,但不適用於以服務方式執行的應用程式。
Microsoft Entra 租用戶。
您打算用於驗證的同一 Microsoft Entra 租用戶下的 Azure 訂閱。
已安裝 Microsoft Entra Connect 身分識別同時存在於 Microsoft Entra ID 和 AD 中的混合式環境。

如需啟用此驗證流程的步驟,請參閱 如何使用新式互動式流程設定 Microsoft Entra 標識符的 Windows 驗證

傳入型信任驗證流程

需要下列必要條件,才能實作傳入的信任型驗證流程:

先決條件 描述
客戶端必須執行 Windows 10、Windows Server 2012 或更新版本的 Windows。
用戶端必須加入AD。 網域必須具有 Windows Server 2012 或更高版本的功能等級。 您可以執行 dsregcmd 命令來判斷用戶端是否已加入 AD: dsregcmd.exe /status
Azure AD 混合式驗證管理模組。 此 PowerShell 模組提供內部部署設定的管理功能。
Microsoft Entra 租戶。
您所打算用於驗證的 Microsoft Entra 租用戶下的相同 Azure 訂用帳戶。
已安裝 Microsoft Entra Connect 身分識別同時存在於 Microsoft Entra ID 和 AD 中的混合式環境。

如需啟用此驗證流程的指示,請參閱 如何使用傳入信任流程設定 Microsoft Entra 標識符的 Windows 驗證

設定 Azure SQL 受控實例

針對傳入的信任型驗證流程和新式互動式驗證流程,設定 Azure SQL 受控實例的步驟都相同。

設定受控實例的必要條件

若要為 Microsoft Entra 主體設定 Windows 驗證的受控實例,需要下列必要條件:

先決條件 描述
Az.Sql PowerShell 模組 此 PowerShell 模組提供 Azure SQL 資源的管理 Cmdlet。 執行下列 PowerShell 命令來安裝此模組:Install-Module -Name Az.Sql
Microsoft Graph PowerShell 模組 本模組提供 Microsoft Entra ID 的管理 Cmdlets 用於管理工作,例如使用者和服務主體管理。 執行下列 PowerShell 命令來安裝此模組:Install-Module –Name Microsoft.Graph
受控實例 您可以 建立新的受控實例 或使用現有的受控實例。

設定每個受控實例

如需設定每個受控實例的步驟,請參閱 設定適用於 Windows 驗證的 Azure SQL 受控實例Microsoft Entra ID

局限性

下列限制適用於 Azure SQL 受控實例上Microsoft Entra 主體的 Windows 驗證:

Linux 用戶端無法使用

Microsoft Entra 主體的 Windows 驗證目前僅支援執行 Windows 的客戶端電腦。

Microsoft Entra ID 快取登入

Windows 會限制連線到 Microsoft Entra ID 的頻率,因此使用者帳戶在升級或重新部署用戶端設備的 4 小時內,可能不會有更新的 Kerberos 票證授與票證(TGT)。 沒有重新整理 TGT 的用戶帳戶會導致來自 Microsoft Entra 識別碼的票證要求失敗。

身為系統管理員,您可以藉由在用戶端電腦上執行下列命令,立即觸發線上登入程序,以應對升級情境,然後鎖定並解除鎖定用戶會話,以取得更新的 TGT:

dsregcmd.exe /RefreshPrt

後續步驟

深入瞭解在 Azure SQL 受控實例上實作 Microsoft Entra 主體的 Windows 驗證: