尝试将 D:\ 上的文件夹作为虚拟目录添加到 IIS 中的网站。
“显然”我需要为 IIS 使用的安全主体向文件夹添加 ACL。大多数情况下,这似乎是IIS_IUSRS
。
我正要这么做
icacls D:\sites /grant:r "IIS_IUSRS":(OI)(OC)RX
但我首先检查了 IIS 对 C:\Inetpub\wwwroot 做了什么,但当我运行时,icacls c:\Inetpub\wwwroot
我得到了以下结果
BUILTIN\IIS_IUSRS:(RX)
BUILTIN\IIS_IUSRS:(OI)(CI)(IO)(GR,GE)
所以我想知道 (GR,GE) 和 RX 之间的有效区别是什么?和/或是否有一种“更正确”的方法来确保文件夹具有正确的权限集以用作 IIS 内容根目录。
并且,作为后续内容 - 如果我确实指向虚拟目录,例如“D:\test”,尽管没有明确的条目,IIS 还是很乐意提供该文件夹中的内容IIS_IUSRS
。探测 ACL 后,我得到了以下信息:
test BUILTIN\Administrators:(I)(F)
BUILTIN\Administrators:(I)(OI)(CI)(IO)(F)
NT AUTHORITY\SYSTEM:(I)(F)
NT AUTHORITY\SYSTEM:(I)(OI)(CI)(IO)(F)
NT AUTHORITY\Authenticated Users:(I)(M)
NT AUTHORITY\Authenticated Users:(I)(OI)(CI)(IO)(M)
BUILTIN\Users:(I)(RX)
BUILTIN\Users:(I)(OI)(CI)(IO)(GR,GE)
我需要删除哪些帐户以便可以继续安全地备份并部署到此文件夹,但 IIS 实际上却尊重这一点IIS_IUSRS
?
答案1
这些权限并不相同。RX 更强大,但这种差异对您来说可能并不重要。
GR 和 GE 是通用权限包括读取、写入和遍历。RX 还包括“读取扩展属性”的权限,而这对于 IIS 来说不是必需的。扩展属性由程序定义,因此可能会有所不同,而且很可能您没有扩展属性。
就您而言,这两种方法都可以,尽管它们并不完全相同。但是,始终建议将 IIS 文件夹的权限限制到最低限度,因为某些权限可能会被黑客以无法预见的方式利用。
看本文它剖析了所有 NTFS 权限。