概述
 
在早期的IIS版本中,随着IIS的安装,系统会创建一个IUSR_MachineName用户。IIS启用匿名访问,就是通过此用户进行身份认证的,包括FTP匿名访问,HTTP匿名访问。
 
在创建IUSR_MachineName用户的同时,IIS_WPG用户组也会被创建出来。此用户组是一个包含所有预定义应用程序池标识用户的容器。在安装IIS的时候,系统里所有IIS需要用到的资源都被授予IIS_WPG用户组适当的权限。因此,当管理员为应用程序池标识为一个新创建的用户时,只需将该用户加入IIS_WPG用户组,即可保证应用程序池正常工作。
 
在这样的架构下,IIS可以很好地工作,但也有其不足之处:IUSR_MachineName用户和IIS_WPG用户组都是本地系统里的用户(组),同系统中的其他用户(组)一样,都有各自的唯一安全标识符SID。IIS的配置文件metabase.xml有调用IUSR_MachineName用户。由于此用户在其他计算机上有着不同的SID及名称,所以当我们把metabase.xml复制到其他计算机上时,IIS将无法正常工作。
 
另外,也正是由于SID的缘故,我们无法将IUSR_MachineName用户相关的ACL成功复制到其他计算机上。IIS_WPG用户组也一样。
 
IIS 7成功解决了这两个问题。
 
IIS 7的内置用户(组)突破了SID的限制,因为IIS7在调用这些内置用户(组)时,使用的是用户名而非SID。而且在不同语言版本的系统中,IIS 7的内置用户(组)都是IUSR(IIS_IUSRS)。其中,IUSR用于取代IUSR_MachineName,IIS_IUSRS用于取代IIS_WPG。
 
由于IUSR属于内置用户,所以使用时,不需要输入密码。你可以把它理解为NETWORK SERVICE或LOCAL SERVICE一类的用户。下面具体讲一下IUSR和IIS_IUSRS。
 
IUSR
 
在IIS 7中,IUSR用户取代了IUSR_MachineName用户。IUSR在认证时不需要密码。IIS 7的匿名身份认证,就是通过此用户进行的。打开IIS 7配置文件applicationHost.config ,可以看到这样一段设置:
 
<anonymousAuthentication enabled="true" userName="IUSR" defaultLogonDomain="" />
 
这表明IIS 7是通过IUSR来实现所有的匿名访问。这样一来,你就可以:
 
通过Explorer或cmd来设置IUSR的权限; 不用担心IUSR密码过期的问题; 将IUSR相关的ACL无缝迁移至其他计算机上。
 
当然,我们也可以将IIS 7的匿名身份标识为成其他用户:
 
1、打开IIS Manager,双击你想要设置的站点。 2、在功能视图中,双击身份验证。 3、选择匿名身份验证,点击编辑。 4、点击特定用户,设置。 5、输入该用户的用户名密码,确定。
 
IIS_IUSRS
 
IIS_IUSRS用户组取代了IIS_WPG用户组。此内置用户组拥有应用程序池访问系统资源所需的足够权限。因此,任何加入此用户组的用户,都可以成为一个合格的应用程序池标识用户。
 
和IUSR用户一样,IIS_IUSRS用户组也可以实现不同计算机之间的ACL复制。
 
当IIS启动工作进程时,需要用户来标识进程,而IIS_IUSRS用户组成员ApplicationPoolIdentity就是默认的标识。
 
ApplicationPoolIdentity并不是指一个用户,而是所有程序池默认标识用户的统称。这些用户与程序池是一一对应的。例如,程序池DefaultAppPool的ApplicationPoolIdentity是用IISAPPPOOL\DefaultAppPool。
 
因此,有了IIS_IUSRS用户组,管理应用程序池标识就变得简单多了,至少你不需要再为不同程序池下的站点设置不同的程序池标识用户权限。
 
原文地址:

【转】IUSR和IIS_IUSRS的更多相关文章

  1. IUSR和IIS_IUSRS

    在早期的IIS版本中,随着IIS的安装,系统会创建一个IUSR_MachineName用户.IIS启用匿名访问,就是通过此用户进行身份认证的,包括FTP匿名访问,HTTP匿名访问.   在创建IUSR ...

  2. 常见.NET功能代码汇总

    1,在Web上修改指定文件位置的Web.config 这里需要使用 WebConfigurationManager 类,但必须使用WebConfigurationFileMap类来指定文件位置,看代码 ...

  3. IIS报500.0错误

    IIS安全里面配置:Everyone.IUSR.IIS_IUSRS 参考地址:http://blog.chinaunix.net/uid-21375345-id-3213631.html

  4. win2008 服务器文件夹权限配置

    通过控制文件夹权限来提高站点的安全性. 这一篇权限设置包括二个方面,一个是系统目录.盘符的权限,一个是应用程序的上传文件夹权限设置. 系统目录 确保所有盘符都是NTFS格式,如果不是,可以用命令 co ...

  5. Win7下VS2010、IIS7配置常见问题收集

    一 在Win7下应按什么次序安装vs2010和iis7 win7推荐先安装iis7,再安装vs2010:如果次序反了,必须注册iis才可以用. IIS中ASP.NET的版本号此时可选的有1.1.2.0 ...

  6. IIS发布asp.net mvc项目(asp.net core也是一样)

    因为之前都是利用其他的工具在linux上面进行发布,导致现在忘记了在IIS上面怎么发布,现在就记录下来,以防不时之需吧 第一步: 在vs里面进行项目发布:指定好发布的位置,点击发布就好了 第二步:右击 ...

  7. 解决win10下IIS下"对路径...的访问被拒绝

    解决方案如下: 1.右击文件夹,安全,添加IUSR和IIS_IUSRS安全控制权限. 2.右击文件夹,常规,查看是否只读.将只读属性去掉.

  8. 安装Discuz

    1.下载Discuz 版本文件 http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip 2.下载PHP http://window ...

  9. [数据库]SQL Server 用户NT AUTHORITY\IUSR 登录失败

    今天打开网站时,突然报这个错误,平时都好好的 Cannot open database "JMECC" requested by the login. The login fail ...

随机推荐

  1. Linux 上下左右键变成^A,^B,^C,^D解决方法

    用gedit打开 /etc/vim/vimrc.tiny,将里面的 set compatible 改成 set nocompatible 对于退格键backspace的问题,只需在刚才那句话下面加上一 ...

  2. 如何评价一个pipeline的好坏

    生物信息NGS相关软件众多. 常用的比对软件:bwa,bowtie: 去pcr重复的软件\:samtools,picard: calling variant:samtools/bcftools,gat ...

  3. securecrt重建

    CRT重建步骤: 重装系统或者重装CRT后,面临找回以前的session记录信息.记住下面的步骤,再也不担心丢session了! 1.备份关键文件(config文件夹)   (1)配置文件默认文件路径 ...

  4. TCP的握手与挥手

    轻轻的TCP走了,正如TCP轻轻的来,TCP挥一挥手,传递了不知多少信息 看到哪,记到哪,想起哪,就看哪,这就是我的博客园,很随性 ---------------------------------- ...

  5. Mybatis导入原生配置文件

    在Spring-Mybatis中导入Mybatis原生配置文件 在sqlSessionFactory Bean中设置设置configLocation属性 <property name=" ...

  6. JAVA基础补漏--反射

    获得CLASS的三种方式: 1.Class.forname("全类名"):将字节码文件加载进内存,返回Class对象. 多用于配置文件,将类名放到配置文件中,读取配置文件,加载类 ...

  7. Java Lambda表达

    Java 8 lambda表达式示例 我个人对Java 8发布非常激动,尤其是lambda表达式和流API.越来越多的了解它们,我能写出更干净的代码.虽然一开始并不是这样.第一次看到用lambda表达 ...

  8. orecle 函数

    --创建函数语法 create [or replace] function [schema.]function_name (函数参数列表) --参数有IN.OUT.IN OUT三种类型:IN代表需要输 ...

  9. ACM International Collegiate Programming Contest, Tishreen Collegiate Programming Contest (2018) Syria, Lattakia, Tishreen University, April, 30, 2018

    ACM International Collegiate Programming Contest, Tishreen Collegiate Programming Contest (2018) Syr ...

  10. Object有哪些方法?

    有9个方法 1 clone 2 toString() 3 getClass 4 finalize 5 equals 6 hascode 7 notify 8 notifall 9 wait