Есть ли способ перечислить всех пользователей, вошедших в систему в Active Directory (ADAM), с помощью C #?
ADAM - это провайдер аутентификации, поэтому единственные возможности аудита связаны с тем, кто запрашивает ADAM. Думайте об этом как об удостоверении личности. Вы не запрашиваете значок, чтобы узнать, какие двери он открыл, вы запрашиваете двери, чтобы узнать, какие значки открыли их.
Почти наверняка нет. Active Directory не поддерживает запись о состоянии входа.
На основе вашего другой вопрос, вы можете сравнить время входа / выхода и угадать активного вошедшего в систему пользователя. Но даже это будет лишь предположение. Вы можете рассмотреть что-то вроде запроса клиентского компьютера напрямую используя WMI для вошедшего в систему пользователя. Пользователи могут завершить активный сеанс входа в систему без событие выхода из системы - подумайте о завершении программы, режиме ожидания, сбросе, принудительном цикле включения питания.