使用僅限 Microsoft Entra 的驗證,您可以將 Azure Synapse Analytics 設定為僅支援 Microsoft Entra 驗證。
注意
Microsoft Entra server principals 目前正在 Azure Synapse Analytics 中預覽。
僅限 Microsoft Entra 驗證適用於獨立專用 SQL 集區及 Azure Synapse 工作區。 關於工作區設定,請參見 停用本地認證。 Azure Synapse Analytics 工作空間中的專用 SQL 池不使用邏輯 SQL 伺服器。
啟用僅 Microsoft Entra 的驗證時,就是關閉 SQL 認證,包括來自 SQL 管理員、登入和使用者的連線。 只有使用 Microsoft Entra 認證的使用者才能連線。
對於獨立專用的 SQL 池,你可以透過 Azure 入口網站、Azure CLI、PowerShell 或 REST API 啟用或停用僅限 Microsoft Entra 的認證。 你也可以在邏輯伺服器建立時用 Azure Resource Manager(ARM)範本來設定。
欲了解更多資訊,請參閱 認證與授權。
功能說明
當你啟用 Microsoft Entra 僅有的認證時,就是關閉工作空間或 邏輯伺服器 的 SQL 認證。 雖然 SQL 認證被禁用,但擁有適當權限的 Microsoft Entra 帳號仍可建立新的 SQL 認證登入與使用者。 新建立的 SQL 認證帳號無法連線。 啟用僅限 Microsoft Entra 驗證不會移除現有的 SQL 驗證登入和使用者帳戶。 此功能僅阻止這些帳號連接伺服器及為該伺服器建立的任何資料庫。
Permissions
屬於高特權 Microsoft Entra 內建角色的 Microsoft Entra 用戶,如 Azure 訂閱擁有者與貢獻者,可以啟用或停用僅限 Microsoft Entra 的認證。 此外,SQL Security Manager 角色可以啟用或停用僅限 Microsoft Entra 的驗證功能。
SQL Server Contributor 角色沒有權限啟用或停用僅限 Microsoft Entra 的驗證。 此限制符合職責分工原則:可建立邏輯伺服器或設定 Microsoft Entra 系統管理員的使用者,不一定能啟用或停用安全性功能。
所需行動
下列動作會新增至 SQL 安全管理員角色,以允許管理僅限 Microsoft Entra 驗證功能。
Microsoft.Sql/servers/azureADOnlyAuthentications/*-
Microsoft.Sql/servers/administrators/read- 僅適用於存取 Azure 入口網站的 Microsoft Entra ID 選單的使用者
您也可以將這些動作加入自訂角色,以管理僅 Microsoft Entra 的認證。 如需詳細資訊,請參閱在 Microsoft Entra ID 中建立和指派自訂角色。
使用 API 管理僅限 Microsoft Entra 的驗證
Important
您必須先設定 Microsoft Entra 管理員,才能啟用僅限 Microsoft Entra 的認證。
您的 Azure CLI 版本必須為 2.14.2 或更新版本。
name 對應邏輯伺服器名稱的前綴(例如 myserver),resource-group 對應資源群組(例如 myresource)。
獨立專用 SQL 池
如需詳細資訊,請參閱 az sql server ad-only-auth。
啟用或停用
Enable
az sql server ad-only-auth enable --resource-group myresource --name myserver
禁用
az sql server ad-only-auth disable --resource-group myresource --name myserver
請查看狀態
az sql server ad-only-auth get --resource-group myresource --name myserver
使用 T-SQL 檢查 Microsoft Entra 專用驗證
使用 SERVERPROPERTY 函式搭配 IsExternalAuthenticationOnly 來檢查你的邏輯伺服器是否啟用了僅 Microsoft Entra 的認證。
1 表示該功能已啟用,並 0 表示該功能已停用。
SELECT SERVERPROPERTY('IsExternalAuthenticationOnly')
系統生成伺服器管理員帳號
當你建立一個啟用 Microsoft Entra 僅有認證的邏輯伺服器時,該服務會產生一個伺服器管理員名稱和一個隨機密碼。 產生的名稱以隨機字串開頭CloudSA,並以 Azure 入口網站的伺服器管理員登入方式顯示。
這個帳號存在是為了滿足配置需求,而不是提供連線方式。 無論配置哪一種資源類型,仍需 SQL 認證管理員的值。 僅用 Microsoft Entra 認證會改變哪些認證方法可以在配置後建立連線,但不會移除該配置要求,因此服務會產生符合該要求的數值。
看到產生的名稱並不代表 SQL 認證已啟用。 當僅限 Microsoft Entra 驗證啟用時:
- 沒有任何 SQL 認證帳號能連線,包括系統產生的管理員。
- 所產生的帳號不是共用帳號、備援方案,也不是緊急存取途徑。
- 應用程式與管理員必須使用 Microsoft Entra 認證才能連線。
- Microsoft Entra 管理員及其他授權的 Microsoft Entra 主體仍然是支援的管理路徑。
- 服務在配置後會永久移除控制平面上的密碼。
Remarks
- SQL Server 參與者可以設定或移除 Microsoft Entra 管理員,但無法設定僅限 Microsoft Entra 驗證設定。 SQL 安全管理員無法設定或移除 Microsoft Entra 管理員,但能夠設定僅限 Microsoft Entra 驗證設定。 只有具備較高 Azure RBAC 角色的帳戶或包括這兩個權限的自訂角色,才能設定或移除 Microsoft Entra 管理員,以及設定 [僅限 Microsoft Entra 驗證] 設定。 其中一個角色是參與者角色。
- 在 Azure 入口網站啟用或停用 僅限 Microsoft Entra 驗證後,會出現一個活動日誌條目。
- 只有在已指定 Microsoft Entra 管理員 的情況下,具備適當權限的使用者才能啟用或停用 僅使用 Microsoft Entra 驗證 設定。 如果未設定 Microsoft Entra 系統管理員,則 僅限 Microsoft Entra 驗證 設定會保持非作用中狀態,且無法啟用或停用。 如果未設定 Microsoft Entra 管理員,使用 API 啟用僅限 Microsoft Entra 驗證也會失敗。
- 當啟用僅限 Microsoft Entra 驗證時,具備適當權限的使用者可變更 Microsoft Entra 系統管理員。
- 具有適當權限的使用者,可以在 Azure 入口網站中變更 Microsoft Entra 管理員,以及啟用或停用僅限 Microsoft Entra 驗證。 在 Azure 入口網站中,儲存一次即可完成兩項作業。 必須設定 Microsoft Entra 管理員,才能啟用僅限 Microsoft Entra 驗證。
- 啟用僅限 Microsoft Entra 驗證功能時,不支援移除 Microsoft Entra 管理員。 如果已啟用僅限 Microsoft Entra 驗證,則使用 API 移除 Microsoft Entra 管理員的動作將會失敗。
- 如果啟用 僅限 Microsoft Entra 驗證 設定,則 Azure 入口網站中的 移除管理員 按鈕會變成無法使用。
- 允許移除 Microsoft Entra 管理員,以及停用 [僅限 Microsoft Entra 驗證] 設定,但需要正確的使用者權限才能完成作業。 在 Azure 入口網站中,儲存一次即可完成兩項作業。
- 具有適當權限的 Microsoft Entra 使用者可以模擬現有的 SQL 使用者。
- 即使啟用了僅 Microsoft Entra 的認證,模擬身分在 SQL 認證使用者間仍然有效。