我使用以下简单代码将完全控制添加到目录,但它不起作用。
String dir_name = @"folder_full_path";
DirectorySecurity dir_security = Directory.GetAccessControl(dir_name);
FileSystemAccessRule access_rule = new FileSystemAccessRule(@"AccountName",
FileSystemRights.FullControl, AccessControlType.Allow);
dSecurity.AddAccessRule(access_rule);
Directory.SetAccessControl(dir_name, dir_security);
但此代码仅将特殊权限设置为目标文件夹。此代码与MSDN sample几乎相同。我正在摸索着一个合理的解释......希望有人能对我有所了解。
非常感谢。
答案 0 :(得分:13)
在对原始ACL规则进行一些逆向工程之后,我使用以下代码:
IdentityReference everybodyIdentity = new SecurityIdentifier(WellKnownSidType.WorldSid, null);
FileSystemAccessRule rule = new FileSystemAccessRule(
everybodyIdentity,
FileSystemRights.FullControl,
InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit,
PropagationFlags.None,
AccessControlType.Allow);
它可以帮助更多的访客:)
答案 1 :(得分:-4)
:)转身。
制作目录。
分配权限。
读取DirectorySecurity ACL并检查调试器的外观;)
瞧。