可以將包含的數據庫 SQL 使用者映射到連結伺服器中的遠端使用者嗎?
在 Windows Server 2016 上使用 SQL Server 2017 Standard CU8。我創建了一個包含
Containment type: partial
類型的數據庫使用者(使用者僅在具有 的數據庫中定義)SQL user with password
(因此,不是基於 Windows 的使用者帳戶)。在連結伺服器定義中,在該Local Server login to remote server login
區域的“安全”選項卡上,有沒有辦法將此使用者指定為本地使用者(以便專門將其映射到遠端使用者)?我只嘗試了使用者名,並且還以數據庫名稱為前綴(由 \ 和 . 分隔)但總是得到一個錯誤Error: ‘contained_user’ is not a valid login or you do not have permission
。從某種意義上說,這是有道理的,因為連結伺服器是實例級對象,並且具有依賴於它的包含數據庫會有點違背包含的想法,但我還沒有在任何地方看到這個限制記錄(例如https:/ /docs.microsoft.com/en-us/sql/relational-databases/databases/contained-databases?view=sql-server-2017#Limitations或https://docs.microsoft.com/en-us/sql/relational -databases/system-stored-procedures/sp-addlinkedsrvlogin-transact-sql?view=sql-server-2017)所以想知道我是否只是語法錯誤。
順便說一句,在包含的數據庫中創建的基於 Windows 登錄的使用者可以與連結伺服器相關聯。
謝謝!
馬丁
僅供參考,根據 Microsoft 支持,這是預期的行為 - 包含的數據庫使用者不能配置為本地登錄,用於連結伺服器中的本地到遠端安全映射。
謝謝
馬丁