如果我拒绝自己但拥有管理员权限,如何获得文件许可?

问题描述

假设我以abc.txt的身份创建了文件User1

我将该文件的所有权授予User2,然后在“安全性”选项卡中,我将deny的读/写/执行权限授予User1

现在我想以编程方式更改它,因此User1将成为所有者并再次具有读/写/执行权限(我以User1的身份运行应用!)

我正在以Administrator权限运行该应用程序 问题是我什至无法做File.GetAccessControl(path),因为

System.UnauthorizedAccessException:尝试执行未经授权的操作。

但是,当我通过GUI单击它->右键->属性->安全->高级

一个按钮(需要管理员权限)

单击继续以尝试以管理员权限执行该操作

还有

更改文件所有者(需要管理员权限)

我可以通过GUI轻松完成

但是,我应该如何以编程方式重新获得权限?

这是我当前的代码

//Get Currently Applied Access Control
var fileSecurity = File.GetAccessControl(file.FullName);

//Update it,Grant Current User Full Control
var cu = WindowsIdentity.GetCurrent().User;
fileSecurity.Setowner(cu);
fileSecurity.SetAccessRule(new FileSystemAccessRule(cu,FileSystemRights.FullControl,AccessControlType.Allow));

//Update the Access Control on the File
File.SetAccessControl(file.FullName,fileSecurity);

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)