С помощью этого метода вы можете проверить, находится ли указанный пользователь в foo/bar
OU:
public bool CheckUserInOU(string userName)
{
using (var entryPoint = new DirectoryEntry($@"LDAP://onecity/OU=bar,OU=foo,DC=onecity,DC=corp,DC=fabrikam,DC=com"))
{
// User and pass for the LDAP query user if needed.
entryPoint.Username = "YourUsernameHere";
entryPoint.Password = "YourPasswordHere";
using (var searcher = new DirectorySearcher(entryPoint))
{
searcher.SearchScope = SearchScope.OneLevel;
searcher.Filter = $"(&(samAccountName={userName})(objectCategory=user))";
return searcher.FindOne() != null;
}
}
}
И, как говорит @Damien_The_Unbeliever, если у вас есть пользователь, атрибут distinguishedName
будет содержать OU.