0
我有一個作爲本地系統運行的服務。 我正在從服務創建一些文件夾。 這些文件夾被創建,它們不允許Windows 7中的「用戶」組中的用戶進行寫入訪問。C#特權問題從作爲本地系統帳戶運行的Windows服務中創建文件夾。
如何創建這些文件夾以授予每個人的寫入權限?
我有一個作爲本地系統運行的服務。 我正在從服務創建一些文件夾。 這些文件夾被創建,它們不允許Windows 7中的「用戶」組中的用戶進行寫入訪問。C#特權問題從作爲本地系統帳戶運行的Windows服務中創建文件夾。
如何創建這些文件夾以授予每個人的寫入權限?
您可以使用我在這個例子中發現的邏輯
public class Permissions
{
public void addPermissions(string dirName, string username)
{
changePermissions(dirName, username, AccessControlType.Allow);
}
public void revokePermissions(string dirName, string username)
{
changePermissions(dirName, username, AccessControlType.Deny);
}
private void changePermissions(string dirName, string username, AccessControlType newPermission)
{
DirectoryInfo myDirectoryInfo = new DirectoryInfo(dirName);
DirectorySecurity myDirectorySecurity = myDirectoryInfo.GetAccessControl();
string user = System.Environment.UserDomainName + "\\" + username;
myDirectorySecurity.AddAccessRule(new FileSystemAccessRule(
user,
FileSystemRights.Read | FileSystemRights.Write | FileSystemRights.ExecuteFile | FileSystemRights.Delete,
InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit,
PropagationFlags.InheritOnly,
newPermission
));
myDirectoryInfo.SetAccessControl(myDirectorySecurity);
}
}
我還發現這篇文章有其他例子