谈 IIS7.5 Asp.Net模拟用户

IIS  Asp.模拟用户官方的解释是:

如果要在非默认安全上下文中运行 ASP.NET 应用程序,请使用 ASP.NET 模拟身份验证。

如果您对某个 ASP.NET 应用程序启用了模拟,那么该应用程序可以运行在以下两种不同的上下文中:作为通过 IIS 身份验证的用户或作为您设置的任意帐户。例如,如果您使用的是匿名身份验证,并选择作为已通过身份验证的用户运行 ASP.NET 应用程序,那么该应用程序将在为匿名用户设置的帐户(通常为 IUSR)下运行。同样,如果您选择在任意帐户下运行应用程序,则它将运行在为该帐户设置的任意安全上下文中。

 

按照我的理解是这样的,当我们启用了ASP.NET 模拟身份验证,那么它将会覆盖其他的权限设置,程序在运行期间一直都是按照ASP.NET 模拟身份的权限进行。

下面我列举三种情况,说明这个问题:

1. 应用程序池标识:ApplicationPoolIdentity

  ASP.NET模拟启用:选择已通过身份验证的用户

 匿名身份验证:特定用户IUSR

这样应用程序期间都是按照IUSR的权限在运行,如果是一个具备较高的权限的用户,那么就是按照当前这个用户的权限运行程序。

 

2. 应用程序池标识:ApplicationPoolIdentity

  ASP.NET模拟启用:特定用户

 匿名身份验证:特定用户IUSR

这样应用程序期间都是按照特定用户的权限在运行。

 

3. 应用程序池标识:ApplicationPoolIdentity

  ASP.NET模拟禁用

 匿名身份验证:特定用户IUSR

这样应用程序期间都是按照各自设置的权限进行运行

 

 

 

 

 

posted on 2013-09-12 15:27  wanglgkaka  阅读(1166)  评论(0编辑  收藏  举报

导航