有什么方法可以恢复AccessControl?

时间:2015-05-01 10:26:05

标签: c# filesystems access-control

我正在使用C#并学习安全性(System.Security.*),我刚刚运行了这段代码。

SecurityIdentifier user = WindowsIdentity.GetCurrent().User;
FileSystemAccessRule r = new FileSystemAccessRule(user, FileSystemRights.FullControl, AccessControlType.Deny);
DirectorySecurity ds = new DirectorySecurity();
ds.AddAccessRule(r);
Directory.SetAccessControl(@"C:\", ds);

这很疯狂,是的我知道,但我想测试一下。顺便说一句,我现在要恢复AccessControl,但无法设置。

像这样恢复AccessControl代码:

SecurityIdentifier user = WindowsIdentity.GetCurrent().User;
FileSystemAccessRule r = new FileSystemAccessRule(user, FileSystemRights.FullControl, AccessControlType.Allow);
DirectorySecurity ds = new DirectorySecurity();
ds.AddAccessRule(r);
Directory.SetAccessControl(@"C:\", ds);

但是Directory.SetAccessControl会抛出UnauthorizedAccessException。 请让我知道如何恢复AccessControl。

0 个答案:

没有答案