用户导航到ASP.NET网站时使用哪个帐户?

时间:2009-12-30 18:09:27

标签: .net asp.net impersonation

当用户浏览ASP.NET网站时,用户是否模拟ASPNET帐户或IIS->目录安全性中指定的帐户 - >用于匿名访问的帐户(EX:{{1 }})

我的网站将文件写入磁盘,我想知道哪些帐户需要对该文件夹的写入权限?另外,有人可以解释web.config中的模拟元素如何与所有这些联系起来吗?

谢谢!

2 个答案:

答案 0 :(得分:3)

  

如果在ASP.NET应用程序中启用了模拟,则:

     
      
  • 如果在IIS中启用了匿名访问,则使用IUSR_machinename帐户发出请求。
  •   
  • 如果在IIS中禁用了匿名访问,则使用经过身份验证的用户的帐户进行请求。
  •   
  • 在任何一种情况下,都会在Windows访问控制列表(ACL)中为用户请求的资源检查该帐户的权限,并且只有在他们运行的帐户对该帐户有效时才能使用该资源。资源。
  •   
     

如果在ASP.NET应用程序中禁用了模拟,则:

     
      
  • 如果在IIS中启用了匿名访问,则使用系统级进程帐户发出请求。
  •   
  • 如果在IIS中禁用了匿名访问,则使用经过身份验证的用户的帐户进行请求。
  •   
  • 在任何一种情况下,都会在Windows ACL中检查用户请求的资源的帐户权限,并且资源仅在他们是的帐户中可用   在其下运行对该资源有效。
  •   

来源:Understanding Impersonation in ASP.NET

答案 1 :(得分:0)

默认为i dentity is MachineName\ASPNET,您可以通过启用web.config中的身份模拟来更改此行为