C#Windows10-仅向1个特定用户和管理员授予目录访问权限?

时间:2020-03-30 12:25:35

标签: c# windows visual-studio directory

因此,我试图在本地驱动器上创建一个新文件夹,并为其授予特定权限。 主要规则集为: -管理员具有完全访问权限 -特定用户(我们称其为“ Robinson”)具有完全访问权限 -计算机上的其余普通用户将无法访问它。

到目前为止,我已经用我的代码做到了:

string path = @"C:\testFolder";
DirectorySecurity ds = Directory.GetAccessControl(path);
SecurityIdentifier si_Admin = new SecurityIdentifier(WellKnownSidType.BuiltinAdministratorsSid,null);

ds.AddAccessRule(new FileSystemAccessRule(si_Admin, FileSystemRights.FullControl, AccessControlType.Allow));
ds.AddAccessRule(new FileSystemAccessRule("Robinson", FileSystemRights.FullControl, AccessControlType.Allow));

SecurityIdentifier si_OtherUsers = new SecurityIdentifier(WellKnownSidType.BuiltinUsersSid, null);
ds.AddAccessRule(new FileSystemAccessRule(si_OtherUsers, FileSystemRights.Delete, AccessControlType.Deny));
Directory.SetAccessControl(path, ds);

您可能会注意到,在第3个AddAccessRule上,我只是在测试删除对其他用户的权限。不幸的是,这也拒绝了Admin和Robinson的任何删除...而且我最终得到一个无法删除的文件夹!

那么有人知道我在想什么吗?还有如何解决无法移动的文件夹的情况?

谢谢!

0 个答案:

没有答案
相关问题