我们正在删除使用ASP.NET网页上传到我们服务器的图像。该站点在IIS中的“NT AUTHORITY \ NETWORK SERVICE”下运行。
在IIS服务器上,我们创建了一个本地组“Full_Access”,我们已将“NT AUTHORITY \ NETWORK SERVICE”添加到。该组对文件启用了NTFS修改权限。
当我们从应用程序中删除文件时。该文件不会被删除。
如果我们将“NT AUTHORITY \ NETWORK SERVICE”文件显式添加到文件中并给予修改权限而不是依赖它来继承本地组的权限,那么它就可以了。
我们已经在安全选项卡上使用了有效权限检查,并且它应该拥有权限吗?但实际上,只有直接授予服务帐户权限才能生效?
是否有某些原因'NT AUTHORITY \ NETWORK SERVICE'不会继承其所在的本地组的权限?
答案 0 :(得分:1)
为什么不创建专用的应用程序池并让它在具有适当权限的普通用户下运行?
答案 1 :(得分:0)
将IIS_WPG组添加到“Full_Access”组而不是NETWORK SERVICE。
来自http://msdn.microsoft.com/en-us/library/ms998320.aspx:
注意如果您需要对运行ASP.NET应用程序(网络服务或自定义服务帐户)的所有帐户允许对文件资源进行相同级别的访问,则可以授予对IIS_WPG组而不是专门用于网络服务帐户。用于运行ASP.NET的任何帐户都必须是IIS_WPG组的成员。
答案 2 :(得分:0)
只是一个猜测,但您是否尝试过重启服务器?
在登录过程中确定组成员资格。 NETWORK SERVICE实际上是计算机帐户。我不认为它的工作方式与其他帐户相同。也就是说,它在您启动应用程序时不会登录。系统帐户(控制iis)只是以其身份启动流程。这意味着没有登录,也没有组成员资格检查。