DirectorySecurity C#从远程服务器分配本地组的权限

DirectorySecurity C#从远程服务器分配本地组的权限,c#,acl,directory-security,C#,Acl,Directory Security,我使用以下代码从C#应用程序向文件夹分配域组权限: DirectoryInfo myDirectoryInfo = new DirectoryInfo(@"\\Server002\G$\permissionTest"); DirectorySecurity myDirectorySecurity = myDirectoryInfo.GetAccessControl(); myDirectorySecurity.AddAccessRule(new F

我使用以下代码从C#应用程序向文件夹分配域组权限:

        DirectoryInfo myDirectoryInfo = new DirectoryInfo(@"\\Server002\G$\permissionTest");
        DirectorySecurity myDirectorySecurity = myDirectoryInfo.GetAccessControl();
        myDirectorySecurity.AddAccessRule(new FileSystemAccessRule(@"Domain\Sec_Group", FileSystemRights.Modify, InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit, PropagationFlags.None, AccessControlType.Allow));
        myDirectoryInfo.SetAccessControl(myDirectorySecurity);
例如,我在名为server001的服务器上执行该程序,并使用该代码将域组应用到名为server002的服务器上的文件夹的ACL上,它工作正常

现在我需要将server002上的安全组添加到文件夹中,但是使用在server 001上执行的程序,例如,添加server002的“来宾”本地组,但是将该组添加到文件夹ACL的操作必须从server 001上运行的C#程序执行


有人能告诉我如何实现这一点吗?

我找到了另一种应用权限的方法。我使用psexec程序来运行远程命令,因此我能够对所需的服务器进行远程调用,并运行icacls命令来应用权限,然后我将该命令放在C#上以执行该指令。我编写的代码如下所示:

        foreach (string server in servers)
        {
            string localPermissionsCommand = @"/C psexec /accepteula \\" + server + " icacls " + @"G:\theFolder\ /grant " + @"""Local server group""" + ":(OI)(CI)RX";
            System.Diagnostics.Process.Start("CMD.exe", localPermissionsCommand);
        }

因此,通过这种方式,您可以迭代变量服务器,以便在您想要的所有服务器上运行该命令。这种方法对我很有效。

我找到了另一种应用权限的方法。我使用psexec程序来运行远程命令,因此我能够对所需的服务器进行远程调用,并运行icacls命令来应用权限,然后我将该命令放在C#上以执行该指令。我编写的代码如下所示:

        foreach (string server in servers)
        {
            string localPermissionsCommand = @"/C psexec /accepteula \\" + server + " icacls " + @"G:\theFolder\ /grant " + @"""Local server group""" + ":(OI)(CI)RX";
            System.Diagnostics.Process.Start("CMD.exe", localPermissionsCommand);
        }

因此,通过这种方式,您可以迭代变量服务器,以便在您想要的所有服务器上运行该命令。这种方法对我很有效。

你找到解决办法了吗?@Kiquenet:我找到了解决办法,请参见下面的答案。你找到了解决办法吗?@Kiquenet:我找到了解决办法,请参见下面的答案。