0

我有一个需要写入密码的文件。进程从文件中读取密码并将密码写入文件,因此运行该进程的用户需要访问该文件。但是,我希望阻止其他所有人的访问。目前我已经尝试了以下方法:

    WindowsIdentity privilegedUser = WindowsIdentity.GetCurrent();
SecurityIdentifier everyone = new SecurityIdentifier(WellKnownSidType.WorldSid, null);
FileSecurity acl = new FileSecurity();
acl.AddAccessRule(new FileSystemAccessRule(everyone, FileSystemRights.Read, AccessControlType.Deny));
acl.PurgeAccessRules(privilegedUser.User);
acl.AddAccessRule(new FileSystemAccessRule(privilegedUser.User, FileSystemRights.Modify,
    AccessControlType.Allow));
File.SetAccessControl(_mirrorConfigFilePath, acl);

但是,当进程尝试读取文件时,我得到了 UnauthorizedAccessException。我认为这是因为拒绝每个人的读取访问权限的第一条规则优先。任何人有什么想法我可以解决这个问题吗?还是我在这里的想法是正确的?!

4

0 回答 0