Applying user permissions on any folder using C#.
using System;
using System.Collections.Generic;using System.Linq;
using System.Text;
using System.Security.AccessControl;
using System.IO;
namespace ChangeFolderPermission
{class Program
{
static void Main(string[] args)
{
string desktopFolderPath = @"D:\Temp";
FileSystemAccessRule iis_iusrs = new FileSystemAccessRule("IIS_IUSRS",
FileSystemRights.FullControl,
InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit,
PropagationFlags.None,
AccessControlType.Allow);
FileSystemAccessRule networkService = new FileSystemAccessRule("NETWORK SERVICE",
FileSystemRights.FullControl,
InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit,
PropagationFlags.None,
AccessControlType.Allow);
System.IO.DirectoryInfo desktopFolderDirectory = new System.IO.DirectoryInfo(desktopFolderPath);
DirectorySecurity directorySecurity = null;
if (!desktopFolderDirectory.Exists)
{
System.IO.Directory.CreateDirectory(desktopFolderPath);
directorySecurity = desktopFolderDirectory.GetAccessControl();
directorySecurity.AddAccessRule(iis_iusrs);
directorySecurity.AddAccessRule(networkService);
desktopFolderDirectory.SetAccessControl(directorySecurity);
}
else
{
directorySecurity = desktopFolderDirectory.GetAccessControl();
directorySecurity.AddAccessRule(iis_iusrs);
directorySecurity.AddAccessRule(networkService);
desktopFolderDirectory.SetAccessControl(directorySecurity);
}
}
}
}

Dhanik SahniPosted Aug 13, 2013, 2:22 AM
Good One.