IIS6网站权限,通常配置IUSR_计算机名和NETWORK SERVICE两个用户权限即可:
其中IUSR_计算机名是网站匿名访问帐户,NETWORK SERVICE是网站应用程序池安全帐户:
然而,同样的权限配置,测试发现IIS7.5网站动态页面打开会出错。比较发现IIS7.5应用程序池安全帐户除了本地系统、网络服务和本地服务外,比IIS6多了一个ApplicationPoolIdentity,并且它是默认安全帐户:
这就解释了为什么网站动态页面打开会出错,然而,在Windows 2008用户或组中并没有ApplicationPoolIdentity这么一个用户,这权限要怎么配置?百度后有网友说它对应的用户为"IIS AppPool\应用程序池名",加入后网站访问正常:
看下任务管理器中的变化:
这样相当于是有了多个NETWORK SERVICE用户,能大大降低网站被旁注的风险。当然了,也可以将IIS7.5应用程序池安全帐户设置为网络服务,这样和IIS6.0一样配置即可,但不推荐这么做。此外,若想简单配置,只赋于网站Authenticated Users组权限也是可以的(代替匿名帐户+安全帐户,但比Everyone安全)。