適用於: SQL Server 2022 (16.x)
現在可以使用驗證與 Microsoft Entra ID (先前稱為 Azure Active Directory) 來設定連結的伺服器,並且支援兩種提供認證的機制:
- 密碼
- 存取權杖
本文假設有兩個 SQL Server 執行個體 (S1
和 S2
)。 兩個都已設定為支援 Microsoft Entra 驗證,而且它們信任彼此的 SSL/TLS 憑證。 本文中的範例會在伺服器 S1
上執行,以建立伺服器 S2
的連結伺服器。
必要條件
- 適用於 SQL Server 的完全可操作 Microsoft Entra 驗證。 如需詳細資訊,請參閱適用於 SQL Server 的 Microsoft Entra 驗證和教學課程:設定適用於 SQL Server 的 Microsoft Entra 驗證。
- SQL Server Management Studio (SSMS) 18.0 版或更新版本。 或者,下載最新的 Azure Data Studio。
注意
S2
所使用的 SSL/TLS 憑證主體名稱必須符合 provstr
屬性中所提供的伺服器名稱。 這應該是 的完整網域名稱 (FQDN) 或S2
。
針對 Microsoft Entra 驗證進行連結的伺服器設定
我們將檢討如何使用密碼驗證,以及使用 Azure 應用程式秘密或存取權杖來設定連結的伺服器。
使用密碼驗證的連接伺服器設定
注意
雖然 Microsoft Entra ID 是 Azure Active Directory(Azure AD)的新名稱,但為了防止破壞現有的環境,Azure AD 仍會保留在某些硬式編碼元素中,例如 UI 字段、連線提供者、錯誤碼和 Cmdlet。 在本文中,這兩個名稱是可互換的。
對於密碼驗證,在 [提供者字串]Authentication=ActiveDirectoryPassword
中使用 會向連結的伺服器示意使用 Microsoft EntraD 密碼驗證。 必須建立連結的伺服器登入,才能將 S1
上的每個登入對應到 S2
上的 Microsoft Entra 登入。
在 SSMS 中,連接到
S1
並在 [物件總管] 視窗中展開 [伺服器物件]。以滑鼠右鍵按一下 [連結的伺服器],並選取 [新增連結的伺服器]。
填寫連結的伺服器詳細資料:
-
連結的伺服器:
S2
或使用連結伺服器的名稱。 -
伺服器類型:
Other data source
。 -
提供者:
Microsoft OLE DB Driver for SQL Server
。 - 產品名稱:保留空白。
- 資料來源:保留空白。
-
提供者字串:
Server=<fqdn of S2>;Authentication=ActiveDirectoryPassword
。 - 目錄:保留空白。
-
連結的伺服器:
選取 [安全性] 索引標籤。
選取 [新增]。
-
本機登入:指定用來連接到
S1
的登入名稱。 - 冒充:保持不勾選。
-
遠端使用者:用來連線到 S2 的 Microsoft Entra 使用者的使用者名稱,格式為
user@contoso.com
。 - 遠端密碼:Microsoft Entra 使用者的密碼。
-
對於未在上述清單中定義的登入,連線將:
Not be made
-
本機登入:指定用來連接到
選擇 [確定]。
使用存取權杖驗證進行連接伺服器的設定
對於存取權杖驗證,連結的伺服器會在提供者字串中使用 AccessToken=%s
來建立。 會建立連結的伺服器登入,以將 S1
中的每個登入對應到 Microsoft Entra 應用程式,其已被授與存取 S2
的登入權限。 該應用程式必須有一個指派給它的秘密,S1
將使用它來產生存取權杖。 可以透過瀏覽至 Azure 入口網站>Microsoft Entra ID>應用程式註冊>YourApplication
>證書與密碼>新用戶端密碼來建立密碼。
在 SSMS 中,連接到
S1
並在 [物件總管] 視窗中展開 [伺服器物件]。以滑鼠右鍵按一下 [連結的伺服器],並選取 [新增連結的伺服器]。
填寫連結的伺服器詳細資料:
-
連結伺服器:
S2
或使用您連結伺服器的名稱。 -
伺服器類型:
Other data source
。 -
提供者:
Microsoft OLE DB Driver for SQL Server
。 - 產品名稱:保留空白。
- 資料來源:保留空白。
-
提供者字串:
Server=<fqdn of S2>;AccessToken=%s
。 - 目錄:保留空白。
-
連結伺服器:
選取 [安全性] 索引標籤。
選擇 新增。
-
本機登入:指定用來連接到
S1
的登入名稱。 - 冒充:保持未選取。
- 遠端使用者:用來連線到 S2 的 Microsoft Entra 應用程式的用戶端識別碼。 您可以在 Microsoft Entra 應用程式的 [概觀] 功能表中找到 [應用程式 (用戶端) 識別碼]。
- 遠端密碼:從為應用程式建立新用戶端祕密中獲得的秘密識別碼。
-
對於上面清單中未定義的登入,連線將:
Not be made
-
本機登入:指定用來連接到
選取 [確定]。