2012-07-26 118 views
1

請考慮這樣的情景:模擬在Asp.net上傳文件

我有一個網站,主機背後IIS 7.0。幾乎每個IIS設置都是默認設置。我有一個上傳文件的文件夾,ASP.Net用戶可以寫訪問它。目前IIS經理取消這個寫訪問,他想添加一個本地用戶在Windows Server,該用戶可以有寫訪問該文件夾。現在我的問題是我如何可以在asp.net中模擬用戶,如果此方法是安全的?我希望所有的請求在服務器上根據默認的IIS用戶執行,但我只想模擬上傳文件。

謝謝

回答

3

你需要的是部分模仿。你不需要所有的請求被模擬,但只有幾個電話應該被模仿。我想你一定要看看這篇文章。

http://support.microsoft.com/kb/306158

這是怎麼冒充下一段代碼登錄用戶的憑據,而通話的其餘部分將使用默認的應用程序池的身份

System.Security.Principal.WindowsImpersonationContext impersonationContext; 
impersonationContext = 
    ((System.Security.Principal.WindowsIdentity)User.Identity).Impersonate(); 

//Insert your code that runs under the security context of the authenticating user here. 

impersonationContext.Undo(); 
+0

由於要處理,但我應該在哪裏發送用戶名和密碼?我的意思是我想要使用其他用戶的模擬器? – Arian 2012-07-26 09:06:33

+0

在文章中有「在代碼中模擬特定用戶」部分。使用此功能,您可以將自定義用戶名和密碼傳遞給模擬,然後您必須撤消該模擬。 – 2012-07-26 09:12:04

+0

有沒有不使用API​​調用的方法? – Arian 2012-07-26 09:17:40