using System; using System.IO; using System.Security; using System.Security.Permissions; public class Program { public static void Main() { var files = Directory.GetFiles("/"); var directories = Directory.GetDirectories("/"); foreach (var directory in directories) { var absPath = Path.GetFullPath(directory); var permissionSet = new PermissionSet(PermissionState.None); var writePermission = new FileIOPermission(FileIOPermissionAccess.Write, absPath); permissionSet.AddPermission(writePermission); if (permissionSet.IsSubsetOf(AppDomain.CurrentDomain.PermissionSet)) { Console.WriteLine("WRITE: " + absPath); } else { Console.WriteLine("NONE: " + absPath); } } } }