Ejemplo n.º 1
0
 public static void denyPermissionFolder(string path)
 {
     System.Security.AccessControl.DirectorySecurity b = new System.Security.AccessControl.DirectorySecurity();
     b.SetAccessRuleProtection(true, true);
     if (Directory.Exists(path))
     {
         Directory.SetAccessControl(path, b);
     }
 }
Ejemplo n.º 2
0
        public void denyPermissionFolder(string path)
        {
            if (!Directory.Exists(pathImgs))
            {
                Directory.CreateDirectory(pathImgs);
            }

            System.Security.AccessControl.DirectorySecurity b = new System.Security.AccessControl.DirectorySecurity();
            b.SetAccessRuleProtection(true, true);
            Directory.SetAccessControl(path, b);
        }
 /// <summary>
 /// 清除指定的文件或目录拥有的全部访问权限。
 /// </summary>
 /// <param name="path">文件或目录路径。</param>
 public static void ClearPermission(string path)
 {
     if (System.IO.Directory.Exists(path))
     {
         System.Security.AccessControl.DirectorySecurity ds = new System.Security.AccessControl.DirectorySecurity();
         ds.SetAccessRuleProtection(true, false);
         System.IO.Directory.SetAccessControl(path, ds);
     }
     else if (System.IO.File.Exists(path))
     {
         System.Security.AccessControl.FileSecurity ds = new System.Security.AccessControl.FileSecurity();
         ds.SetAccessRuleProtection(true, false);
         System.IO.File.SetAccessControl(path, ds);
     }
 }
        /// <summary>
        /// 对指定的文件或目录的设置新的访问权限。移除所有现有的权限。
        /// </summary>
        /// <param name="path">文件或目录路径。</param>
        /// <param name="identity">Windows 用户或组名称。</param>
        /// <param name="fileSystemRights">访问权限。</param>
        /// <param name="accessControlType">指定允许还是拒绝该操作。</param>
        public static void SetPermission(string path, string identity, System.Security.AccessControl.FileSystemRights fileSystemRights, System.Security.AccessControl.AccessControlType accessControlType)
        {
            System.Security.AccessControl.FileSystemAccessRule ar1 = new System.Security.AccessControl.FileSystemAccessRule(identity, fileSystemRights, accessControlType);
            if (System.IO.Directory.Exists(path))
            {
                System.Security.AccessControl.FileSystemAccessRule ar2 = new System.Security.AccessControl.FileSystemAccessRule(identity, fileSystemRights, System.Security.AccessControl.InheritanceFlags.ContainerInherit | System.Security.AccessControl.InheritanceFlags.ObjectInherit, System.Security.AccessControl.PropagationFlags.InheritOnly, accessControlType);

                System.Security.AccessControl.DirectorySecurity ds = new System.Security.AccessControl.DirectorySecurity();
                ds.AddAccessRule(ar1);
                ds.AddAccessRule(ar2);
                ds.SetAccessRuleProtection(true, false);
                System.IO.Directory.SetAccessControl(path, ds);
            }
            else if (System.IO.File.Exists(path))
            {
                System.Security.AccessControl.FileSecurity ds = new System.Security.AccessControl.FileSecurity();
                ds.AddAccessRule(ar1);
                ds.SetAccessRuleProtection(true, false);
                System.IO.File.SetAccessControl(path, ds);
            }
        }
Ejemplo n.º 5
0
 public void allowPermissionFolder(string path)
 {
     System.Security.AccessControl.DirectorySecurity b = new System.Security.AccessControl.DirectorySecurity();
     b.SetAccessRuleProtection(false, true);
     Directory.SetAccessControl(path, b);
 }