了解IIS6权限,ACL和身份-如何限制访问?
时间:2020-03-06 14:56:41 来源:igfitidea点击:
当ASP.NET应用程序以模拟方式在Windows 2003 Server中的IIS6.0下运行时,哪个用户帐户与确定文件读/写/执行访问特权有关?我在两种情况下试图了解对授予/撤销的访问权限。我认为最相关的用户可能是"应用程序池"中指定的身份,但这似乎不是全部。
第一个问题涉及通过System.Diagnostics.Process.Start()执行本地批处理文件-当将AppPool设置为IWAM_WIN2K3WEB用户时,我不能这样做,但是如果将其设置为网络服务标识,则可以正常工作。我当然要确保IWAM用户对文件具有执行权限。
第二个涉及写入本地硬盘驱动器上的文件-我希望能够通过文件夹属性通过访问控制列表来防止这样做,但是即使我将文件夹中的所有用户都设置为" read"(根本没有用户/组具有"写"的权限),我们的ASP.NET仍然可以写出文件没有问题。如果没有写访问权限怎么办?
Google搜索的内容是零散的,但并非完整的故事。
解决方案
what user account is relevant for [..] file read/write/execute access
通常,始终运行应用程序/页面的用户帐户。
IWAM帐户非常有限。我认为它没有启动外部进程的权限。此时文件访问权限是无关紧要的。
如果用户帐户(在情况下为Network Service)拥有文件(即已创建文件),则即使未明确允许,它也可以对该文件执行任何操作。检查谁拥有文件。
Microsoft的Process Monitor是追踪此类细微差别的好工具。
进一步的搜索表明,IWAM用户的文档记录不充分,如果我们要为该用户指定权限,则应坚持使用网络服务或者手动提供的身份。