我正在尝试了解IIS 8.5用户帐户模型。
IUSR:默认匿名用户(可以更改)。 它是请求networking资源的身份
ApplicationPoolIdentity:用于应用程序池的特殊标识
IIS_IUSRS:它是所有特殊的ApplicationPoolIdentity所在的组
IIS_IUSRS具有对wwwroot文件夹的读取/执行权限
我不明白为什么IUSR对wwwroot文件夹没有任何权限
怎么可能不会导致一个401请求?
如果您查看C:\inetpub\wwwroot
的默认权限:
BUILTIN\IIS_IUSRS:(RX) BUILTIN\IIS_IUSRS:(OI)(CI)(IO)(GR,GE) NT SERVICE\TrustedInstaller:(I)(F) NT SERVICE\TrustedInstaller:(I)(OI)(CI)(IO)(F) NT AUTHORITY\SYSTEM:(I)(F) NT AUTHORITY\SYSTEM:(I)(OI)(CI)(IO)(F) BUILTIN\Administrators:(I)(F) BUILTIN\Administrators:(I)(OI)(CI)(IO)(F) BUILTIN\Users:(I)(RX) BUILTIN\Users:(I)(OI)(CI)(IO)(GR,GE) CREATOR OWNER:(I)(OI)(CI)(IO)(F)
您可以看到Users
组具有读取访问权限, IUSR自动成为Users
组的成员,这就是为什么它可以访问这些文件。
如果你删除Users
的权限,你应该得到一个401.3
因为IUSR
帐户是通过NT Authority\Authenticated Users
组放在NT Authority\Authenticated Users
组中的。
这两个大多是为了传统的原因而存在,但有两个不同的目的。
IUSR
帐户用于匿名身份validation IIS_IUSRS
组用于允许应用程序池用户的安全控制 有一些关于历史和一些关于使用IUSR帐户的体面的信息 ,它的前身是可用的IUSR_computername的一些写法 。