检测是否有文件目录权限

FileSecurity fsec =File.GetAccessControl(path);
            bool deleting = false;
            foreach (FileSystemAccessRule rule in fsec.GetAccessRules(true, true, typeof(System.Security.Principal.NTAccount)))
            {
                if ((rule.FileSystemRights & FileSystemRights.Delete) != 0)
                {
                    deleting = true;
                    break;
                }
            }
            bool listing = false;
            DirectorySecurity sec = Directory.GetAccessControl(path);
            foreach (FileSystemAccessRule rule in sec.GetAccessRules(true, true, typeof(System.Security.Principal.NTAccount)))
            {
                if ((rule.FileSystemRights & FileSystemRights.ListDirectory) != 0)
                {
                    listing = true;
                    break;
                }
            }
            if (!listing) return;
 

你可能感兴趣的:(Security)