IIS7权限问题

时间:2009-02-26 12:12:08

标签: asp.net security iis iis-7 permissions

我有一个正常的Windows Server 2008安装与II7。每个网站都有自己的应用程序池。但是存在安全问题。

asp.net应用程序将文件写入C:或任何其他directorys没有限制。 在IIS 6之前,我可能需要在Windows文件夹安全权限中设置这些权限,并允许ASPNET_Usr执行此操作。

托管asp.net应用程序并且不允许它们在例如c中写入读取文件的最佳做法是什么?

修改

Anonymous Auth。已启用,用户指定为“ISUR”。所有其他身份验证都被禁用。在应用程序池中,我将其用作进程标识“网络服务”。

我在服务器上创建了一个新用户(不在域中)“www.xyz.test”并删除了他所有的组成员资格。将进程标识更改为此用户并使匿名身份验证使用应用程序池标识,并且仍然可以写入C:。

在我的情况下,更改信任级别不是一个选项,因为我们使用第三方应用程序

2 个答案:

答案 0 :(得分:1)

这完全取决于您的asp.net网站运行的用户帐户。即是网络服务?据我所知,如果我想能够写入web目录,那么我将我的网站帐户写入权限仅限于我要保存文件的目录。我使用的帐户是用于匿名身份验证的帐户。

即。我有一个名为mycompany.com的网站。我将此用户帐户创建为域用户组的一部分。我将其添加为匿名身份验证凭据并授​​予其访问Web根目录的权限,并将访问权限写入我想要编写的嵌套文件夹中。

用户帐户将被称为mycompany.com,因此我知道它仅具有与网络和特定网站相关的权限的责任。

答案 1 :(得分:0)

听起来网站权限(在IIS中)设置为任何一个 - Windows Auth:您正在与拥有这些文件夹权限的人登录 或
- 匿名身份验证:用于模拟的帐户具有权限

最佳做法是确保用于访问网站的帐户(例如,如果Windows身份验证 - 您的帐户或匿名,则模拟的帐户)没有对文件夹的权限。

您还可以在machine.config中将信任级别提升到中等,高或完全以获得其他安全实施策略 - 但请谨慎使用,因为它可能会导致某些ASP.NET应用程序失败。