我在弄清楚SetOwner()
方法时遇到了麻烦。
就我而言,我已经通过代码在Active Directory中创建了一个用户,然后,我为用户创建了一个文件夹。
一切正常,但我无法将新创建的用户设置为文件夹的所有者。
我不是C#guru,所以我很难理解DirectorySecurity.SetOwner()
方法。有人可以帮帮我吗?
以下是创建文件夹的代码,设置我想要的权限,但我还需要将用户设置为所有者。
string pathIntern = @"\\11fil01\brukar\" + user.UserName;
System.IO.DirectoryInfo diIntern = new System.IO.DirectoryInfo(pathIntern);
diIntern.Create();
DirectorySecurity dsecIntern = diIntern.GetAccessControl();
FileSystemAccessRule rule = new FileSystemAccessRule(user.UserName, FileSystemRights.FullControl, InheritanceFlags.None | nheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit, PropagationFlags.None, AccessControlType.Allow);
dsecIntern.SetAccessRule(rule);
diIntern.SetAccessControl(dsecIntern);
//dsecIntern.SetOwner(heeeeelp);
答案 0 :(得分:6)
试试这个
string pathIntern = @"\\11fil01\brukar\" + user.UserName;
DirectoryInfo diIntern = new DirectoryInfo(pathIntern);
DirectorySecurity dsecIntern = diIntern.GetAccessControl();
IdentityReference newUser = new NTAccount(domain + @”\” + username);
dsecIntern.SetOwner(newUser);
FileSystemAccessRule permissions = new FileSystemAccessRule(newUser,FileSystemRights.FullControl, AccessControlType.Allow);
dsecIntern.AddAccessRule(permissions);
diIntern.SetAccessControl(dsecIntern);
你也可以看到这个链接 Create, Read, Update Active Directory Users with C#
再见。