我必須通過web.config
配置爲使用模擬像這樣的ASP.NET應用程序:ASP.NET模擬與高程
<system.web>
<identity impersonate="true" />
<authentication mode="Windows" />
</system.web>
的應用程序需要執行某些管理任務。如果我以用戶administrator
身份登錄到應用程序,但工作正常,但在以userA
身份登錄時不起作用(訪問僅管理系統資源失敗),其中確實有對系統具有管理訪問權限。
我懷疑這裏發生了什麼是UAC
在加強。雖然ASP.NET應用程序正在模擬userA
,當它涉及到執行某些需要擡高,它失敗了,而正在作爲administrator
是很好的,因爲用戶開始時升高(如果在Windows中以交互方式執行操作,則永遠不會獲得UAC提示)。
順便說一句,我不需要網絡級別的冒充,所以我不相信我應該需要delegation
?
「應用程序需要執行某些管理任務」 - 什麼是任務? 「在系統上具有管理訪問權限」 - 在該機器的本地管理員組中是用戶userA? – 2013-05-13 03:36:25
*「什麼是任務?」* - 讀取和寫入系統目錄中的文件。 *「在該機器的本地管理員組中是否是userA'?」 - 是的,或者在某些情況下,它將位於域組中。我很高興只能將此要求限制在本地管理員組。 – Snixtor 2013-05-13 03:40:27
我剛剛發現,這似乎只是如果我的瀏覽器與IIS在同一臺機器上,並且我正在嘗試以與登錄Windows時相同的用戶身份登錄。我想這是檢測我有一個交互式登錄會話,並希望吐出一個UAC提示。但是如果我在一臺單獨的機器上,UAC被繞過。有趣的是,在大部分*(但不是全部)的情況下,以管理員身份運行瀏覽器可以解決這個問題,大概是因爲它是「提前」UAC。 – Snixtor 2013-05-13 06:46:15