使用SetAccessControl无法删除不需要的文件

时间:2014-06-28 08:10:21

标签: c# security acl

我们在共享服务器上有一个应用程序,并且我们的ftp上出现了一些不需要的文件(asp文件,当然是注入或缺乏安全性)。该应用程序位于C#。

无法通过FTP删除这些文件(未经授权)。

我发出了GetOwner请求,这些文件似乎拥有DOMAIN \ IISUSR所有者。

我尝试更改所有者或在文件上添加ACL,但我收到了未经授权的例外。

System.IO.FileInfo sFile = new System.IO.FileInfo(sPathFile);
System.Security.AccessControl.FileSecurity sFS = sFile.GetAccessControl();
if (System.IO.File.Exists(sPathFile))
{
   try
   {
      IdentityReference sGet = new NTAccount(@"DOMAIN\MYUSER");
      sFS.AddAccessRule(new FileSystemAccessRule(@"DOMAIN\IISUSR", FileSystemRights.FullControl, AccessControlType.Allow));
      sFile.SetAccessControl(sFS);
   }
}

我已尝试使用MYUSER = ftp帐户(可以通过ftp将其删除。

我已尝试使用MYUSER = IISUSR,如果该文件拥有所有权但没有权利。

但我可以摆脱异常。

就共享服务器而言,我有IIS管理员远程访问权限,但仅限于读取级别;我可以访问ftp,因此可以通过C#本地执行来访问...

你有什么想法吗?

TY!

0 个答案:

没有答案