0
我的应用正在使用本地网络,管理员使用此代码为共享文件夹上的每个用户创建文件夹: 例如“me1”是本地网络上的用户。给本地网络上的特定用户授予访问规则权限
DirectoryInfo d=new DirectoryInfo(@"\\server\Test");
DirectoryInfo di = new DirectoryInfo(@"\\server\Test\me1");
di.Create(d.GetAccessControl());
DirectorySecurity dSecurity = di.GetAccessControl();
dSecurity.AddAccessRule(new FileSystemAccessRule("everyone",
FileSystemRights.FullControl,
AccessControlType.Deny));
di.SetAccessControl(dSecurity);
现在每一个用户不能访问自己的文件夹,我用这个代码:
DirectoryInfo dInfo = new DirectoryInfo(@"\\Server\Test\me1");
DirectorySecurity dSecurity = dInfo.GetAccessControl();
dSecurity.AddAccessRule(new FileSystemAccessRule("everyone",
FileSystemRights.FullControl,
AccessControlType.Allow));
dInfo.SetAccessControl(dSecurity);
但错误“访问被拒绝”出现。 如何设置特定用户的权限? 我的意思是管理员可以在创建目录时给予特定用户权限? 谢谢。
出于安全问题,管理员应拒绝所有用户的访问权限,但我想为每个目录设置一个用户的允许权限。 – Farna 2011-05-21 09:04:29
@nafarzane您需要使用ACL的工作方式。拒绝规则优先,除非有一个包括除我之外的每个人的组(除了少数用户之外不会有其他用途),否则无法创建“拒绝除理查之外的所有人”(例如)规则。因此,您使用隐式拒绝和正确对待ACL:任何不允许访问的人都会被拒绝。 – Richard 2011-05-21 09:08:51