Я использую следующее, чтобы получить членов определенной группы безопасности в Active Directory и добавить их в таблицу данных.Это прекрасно работает, но я хотел бы изменить его, чтобы добавить членов нескольких групп.Как я могу изменить код так, чтобы он включал три конкретные группы?
Вот что я сейчас использую:
using (var context = new PrincipalContext(ContextType.Domain, null))
{
using (var group = (GroupPrincipal.FindByIdentity(context, "Security Group 1")))
{
var users = group.GetMembers(true);
foreach (UserPrincipal user in users)
{
DirectoryEntry de = user.GetUnderlyingObject() as DirectoryEntry;
dt.Rows.Add
(
Convert.ToString(de.Properties["givenName"].Value),
Convert.ToString(de.Properties["sn"].Value),
Convert.ToString(de.Properties["mail"].Value),
Convert.ToString(de.Properties["department"].Value),
Regex.Replace((Convert.ToString(de.Properties["manager"].Value)), @"CN=([^,]*),.*$", "$1")
);
}
}
}
Я хотел бы также добавить участников из "Группы безопасности 2" и«Группа безопасности 3».