c#使用广告服务帐户授予用户访问网络文件夹的权限
我想使用active directory管理员帐户授予对网络共享文件夹的完全访问权/撤消访问权(我也可以将其作为映射驱动器使用)c#使用广告服务帐户授予用户访问网络文件夹的权限,c#,active-directory,C#,Active Directory,我想使用active directory管理员帐户授予对网络共享文件夹的完全访问权/撤消访问权(我也可以将其作为映射驱动器使用) 如何将File.GetAccessControl、.RemoveAccessRule和.AddAccessRule设置为active directory管理员服务帐户,同时又是网络共享文件夹的管理员?以下是我用来执行此操作的一个片段 private void EditAccess(List<string> userlist, string fold
如何将File.GetAccessControl、.RemoveAccessRule和.AddAccessRule设置为active directory管理员服务帐户,同时又是网络共享文件夹的管理员?以下是我用来执行此操作的一个片段
private void EditAccess(List<string> userlist, string folder)
{
foreach (string user in userlist)
{
var AccessRule = new FileSystemAccessRule(user, FileSystemRights.FullControl,
InheritanceFlags.None,
PropagationFlags.NoPropagateInherit,
AccessControlType.Allow);
DirectoryInfo rootFolder = new DirectoryInfo(folder);
DirectorySecurity rootSec = rootFolder.GetAccessControl(AccessControlSections.Access);
bool Result;
rootSec.ModifyAccessRule(AccessControlModification.Set, AccessRule, out Result);
InheritanceFlags iFlags = InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit;
AccessRule = new FileSystemAccessRule(user, FileSystemRights.FullControl, iFlags, PropagationFlags.InheritOnly, AccessControlType.Allow);
rootSec.ModifyAccessRule(AccessControlModification.Add, AccessRule, out Result);
rootFolder.SetAccessControl(rootSec);
}
}
private void EditAccess(列表用户列表,字符串文件夹)
{
foreach(用户列表中的字符串用户)
{
var AccessRule=new FileSystemAccessRule(用户,FileSystemRights.FullControl,
继承标志。无,
PropagationFlags.NoPropagateInherit,
AccessControlType.Allow);
DirectoryInfo根文件夹=新的DirectoryInfo(文件夹);
DirectorySecurity rootSec=rootFolder.GetAccessControl(AccessControlSections.Access);
布尔结果;
rootSec.ModifyAccessRule(AccessControlModification.Set、AccessRule、out结果);
InheritanceFlags iFlags=InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit;
AccessRule=new FileSystemAccessRule(用户、FileSystemRights.FullControl、iFlags、PropagationFlags.InheritOnly、AccessControlType.Allow);
rootSec.ModifyAccessRule(AccessControlModification.Add、AccessRule、out结果);
SetAccessControl(rootSec);
}
}
这将应用权限作为登录用户,我希望使用服务帐户凭据执行相同的操作。您不能显式设置正在执行特定于广告的操作的用户,但您可以使用此处概述的模拟方法之一执行此操作,此方法适用于active directory中的组?