我有一个Godaddy专用主机帐户的Windows 2008标准的全新安装。 我将安装升级到SP2。
在使用“NetworkService”作为池身份的应用程序池中,有几个应用程序正在IIS中运行。 我通过互联网匿名访问应用程序。
与Windows 2003不同,这似乎是一个非常有特权的帐户。 我发现我的应用程序可以读取磁盘上的每个目录。 我通过在IIS中创build一个简单的应用程序来validation这一点,该应用程序读取任意目录的内容并打印遇到的第一个文本文件的内容。 这适用于我试过的每个文件夹,包括C:\ Windows \ System32。 尝试写入失败,但是。
我的直觉告诉我这不可能是正确的行为,但我的Win2k8-fu并不强。
我看到的是正常的吗? 我应该使用不同的身份运行应用程序池吗?
你所看到的是正常的。 “networking服务”帐户相当于本地SYSTEM帐户,这是一个非常有特权的帐户。 IIRC,networking服务不同于本地服务或系统,因为在域环境中,它可以访问远程计算机上的资源; 分配给计算机帐户的权限限制了在域上可以看到的内容。
IIS7应用程序使用的帐户由支持的应用程序池使用的帐户定义。
“ApplicationPoolIdentity”是IIS7的一个新function。 有关为此设置权限的详细信息,有一个服务器默认问题涵盖此( 链接 )。 最安全的方法是在该框上为应用程序池创build一个自定义用户,并为该用户分配权限。
要进入上面的下拉屏幕: