我有一個asp.net應用程序(使用Windows身份驗證進行訪問)(由安全團隊規定)需要使用集成安全性連接到遠程SQL Server 2005通過。由於這一事實,這是我需要模擬一個自定義帳戶(冒充原調用將無法正常工作)遠程SQL服務器:ASP.NET Web應用程序不能使用多個模擬驗證
<identity impersonate = "true" userName="domainname\user" password="password" />
這workes罰款。蹭的是我的應用程序還使用ReportViewer控件連接到SSRS服務器以報告需求。報表服務器位於單獨的服務器上,安全團隊要求所有對此服務器的調用都必須使用原始窗口的帳戶進行審計。看來我唯一的選擇是嘗試將我的應用程序分離到文件夾中,並在我的web.config中使用「位置」標記並使用單獨的標識標記。如:
<location path="Reporting">
<system.web>
<identity impersonate = "true"/>
</system.web>
</location>
注:沒有指定的用戶名和密碼,這意味着它要模擬原始訪問者。
但是,使事情變得更加複雜我的應用程序是一個母版/內容頁面的應用程序。主頁面調用SQL來填充菜單等。底線是雙重模仿軌道不起作用。我準備好拋出我的手,並宣佈這是做不到的。如果有一種方法可以讓我的應用程序模擬原來的調用方來滿足我的SSRS審計需求,但可以將SQL Server作爲自定義域帳戶進行連接。我無法使用SQL身份驗證:雖然這可以解決此問題,但不允許使用。
當我爲自定義用戶設置模擬時,如: Windows Identity是自定義用戶。我試過了,這是事實。因此,如果我默認使用原始用戶 如何爲我的數據庫調用指定自定義用戶? –
MikeD
2009-06-18 18:04:02
如果內存正確地爲我提供服務,它應該自動執行,只要連接字符串使用sspi上下文。 – kemiller2002 2009-06-18 18:25:10