请考虑这种情况:
我有一个托管在IIS 7.0
. 几乎每个IIS
设置都是默认设置。我有一个用于上传文件的文件夹,ASP.Net
用户对其具有写访问权限。当前IIS
经理取消此写访问权限,他想添加一个本地用户Windows Server
,该用户可以对该文件夹具有写访问权限。现在我的问题是如何在 asp.net 中模拟用户以及这种方法是否安全?我希望根据默认IIS
用户在服务器上执行所有请求,但我只想模拟上传文件。
谢谢
请考虑这种情况:
我有一个托管在IIS 7.0
. 几乎每个IIS
设置都是默认设置。我有一个用于上传文件的文件夹,ASP.Net
用户对其具有写访问权限。当前IIS
经理取消此写访问权限,他想添加一个本地用户Windows Server
,该用户可以对该文件夹具有写访问权限。现在我的问题是如何在 asp.net 中模拟用户以及这种方法是否安全?我希望根据默认IIS
用户在服务器上执行所有请求,但我只想模拟上传文件。
谢谢
您需要的是部分模仿。您不需要模拟所有请求,但只应模拟几个呼叫。我想你必须看看这篇文章。
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();