是否可以在 Windows(Server 2003 64 位)中设置文件夹权限,以便帐户可以写入和修改,但不能执行?
如果我设置了修改权限,Windows 似乎坚持要求我也设置执行权限。
对我来说这似乎是一种常见的情况,因为我遇到的很多日志记录例程都需要能够重命名或移动(有效删除)日志文件以将其存档。(例如,许多程序创建 foo.log,并在 24 小时后将其重命名为 foo-[datestamp].log,并为第二天创建一个新的 foo.log)。
我知道这不是什么大问题,但如果网站帐户从未同时对同一文件夹拥有写入和执行权限,我会很高兴。
答案1
读取和执行是修改的子集,因此当允许修改时,根据定义,读取和执行也是允许的。请参阅这张桌子有关详细信息,请访问 Technet。
您可以使用高级安全设置窗口(单击安全选项卡上的高级)单独设置特殊权限(并排除执行文件)。
答案2
您不能为用户设置文件夹的“修改”,除非该用户具有该文件夹的“执行”权限...并且,正如这里的另一个答案所建议的那样,甚至不可能拒绝执行保留修改,因此解决方案可能是这样的:
默认情况下不允许执行的组策略,那么白名单可能是选择:
计算机配置 > 策略 > Windows 设置 > 安全设置 > 软件限制策略
将安全级别设置为不允许,在“附加规则”中允许用户执行的路径,这样就完成了 90%。
您只需添加您可能需要的 Program Files 之外的任何应用程序路径(网络位置等)。
我还禁止 regedit.exe 和 runas.exe。
如果您只想列入黑名单,您可以将默认级别设置为“不受限制”,然后禁止特定文件夹...但这不会很有效。
另外,请确保将 *.lnk 列入白名单,否则用户会发现开始菜单快捷方式不起作用。