Windows-Server-2008

鏡像本地帳戶以連接到不同伺服器和域上的數據庫

  • December 30, 2014

我的數據庫客戶端和數據庫伺服器在不同的機器上,並且沒有連接到同一個域(我的網路主機不支持)。我不想通過連接字元串發送使用者名/密碼詳細資訊,並且希望使用 Windows 身份驗證連接到數據庫。

本文的概述中,它提到了這一點(強調我的):

當您使用 Windows 身份驗證連接到 SQL Server 時,您可以使用 Kerberos 或 NTLM 身份驗證,具體取決於您的伺服器和域的配置。如果出現以下情況,您可能無法使用 Kerberos 身份驗證:

  • 您的數據庫客戶端和數據庫伺服器由阻止 Kerberos 身份驗證的防火牆隔開。
  • 您的應用程序伺服器和數據庫伺服器位於不信任的不同域中。

在這些情況下,您可以使用鏡像本地帳戶或 SQL 身份驗證。使用鏡像本地帳戶,您可以在每台伺服器上配置兩個具有相同使用者名和密碼的帳戶。您必須確保密碼保持不變

我假設這只是意味著在兩台機器上創建一個具有相同使用者名和密碼的 Windows 使用者,但我懷疑這是否可行。當我在數據庫客戶端上為此使用者添加權限時,它會在使用者名前面加上伺服器名,在數據庫伺服器上創建數據庫登錄時也會發生同樣的事情。

這就是創建鏡像本地帳戶的意思嗎?如果是這樣,考慮到使用者位於不同的域中,這將如何工作?

你已經正確理解了這個過程。您需要設置兩個使用者帳戶。一個將在 SQL Server 主機上創建,另一個將在您要連接的客戶端上創建。他們的使用者名和密碼應該相同。

SQL Server 用主機名或域名作為使用者名的前綴,但這不是問題,Windows 身份驗證機制會正確解析使用者名部分並在其他使用者的密碼相同的情況下對其他使用者進行身份驗證。

引用自:https://serverfault.com/questions/581778