當我嘗試使用「在服務器中安全存儲的憑據」從SSRS指定數據源到SQL Server數據庫(2008)時,我當前遇到以下錯誤 - 這是指定爲Windows帳戶「s2 \ killian」,並選中「在建立連接後模擬經過身份驗證的用戶」選項。使用來自SSRS連接的模擬所需的SQL數據庫權限
消息15157級別16狀態1行1 由於以下原因之一,setuser失敗:數據庫主體's2 \ killian'不存在,其相應的服務器主體不具有服務器訪問權限,該類型數據庫主體不能被模擬,或者你沒有權限。
很顯然,這種模擬方法在幕後使用SetUser()函數,並且MSDN文檔聲明爲了使用此函數需要dbowner權限。不過,我在使用dbowner時遇到了上述錯誤。由於安全策略,我無法使用系統管理員。
是否有人知道如何在不將SQL Server數據庫的系統管理員權限分配給SSRS數據源所使用的Windows帳戶的情況下,獲取此身份驗證和模擬工作機制。
有沒有辦法讓SetUser()在沒有系統管理員權限的情況下工作?
由於 基利安
對不起,慢慢回來說感謝您的信息,但我不能爲我的生活得到它沒有系統管理員,即在sys.server_principals/sys.database_principals中使用dbowner和個人會員。我同意SSRS不使用EXECUTE AS而不是棄用的SetUser是很奇怪的。 – user521565 2010-12-07 14:47:27