Можно ли запросить список IP-адресов (а) (или имен компьютеров), которые в данный момент зарегистрированы конкретным пользователем домена? - PullRequest
2 голосов
/ 09 апреля 2009

Можно ли запросить список IP-адресов (или имен компьютеров) компьютеров домена, на которых в данный момент зарегистрирован пользователь домена?

Вопрос «Вход в систему под именем пользователя с доменом или без него в Windows» подходит близко, только я хочу найти обратное.

Я спрашиваю о возможности из-за недостатка знаний о внутренностях Active Directory. Мне кажется, что Active Directory знает только, когда (и, возможно, где) последний раз был аутентифицирован пользователь домена, и не отслеживает текущие сеансы или выходы из системы.

Любой язык, который предоставляет это решение, будет приемлемым ответом, но решение .NET предпочтительнее. Что еще более важно, я хотел бы знать, возможно ли это вообще.

1 Ответ

1 голос
/ 09 апреля 2009

Я не верю, что есть одно место, в котором эта информация может быть получена. Вы можете узнать, когда пользователь в последний раз входил в систему, и какой DC аутентифицировался из AD, но проблема в том, что при входе в систему первым DC, который отвечает, является сервер, который аутентифицируется с помощью. Затем этот DC записывает эту информацию в свой журнал событий, который находится на каждом хосте, а не в центральной системе. Вы можете увидеть больше об этом из этих ссылок: http://support.microsoft.com/kb/175062 а также http://www.tartoos.com/HomePage/Rtable/ComputerSchool/Networking/Net41.htm С учетом вышесказанного, я полагаю, вы могли бы получить последний вход в систему из свойства AD lastLogonTimestamp из учетной записи пользователя, а затем запросить журнал событий у всех контроллеров домена в домене, чтобы выяснить, какой контроллер домена их аутентифицировал. и из какой системы. Но все это скажет только последним зарегистрированным в системе ... не всем системам, в которые они могут войти. Опять же, вы можете сравнить эти результаты со временем выхода из системы, которое может быть получено из журналов событий DC ... но на самом деле это, кажется, серьезное излишнее усилие, и что вам лучше будет написать сценарий входа / выхода из системы, в котором эти события были зарегистрированы в центральную систему отчетности, которую вы могли бы использовать для будущего использования.

Вот еще одна альтернатива: вы можете запросить у своего сервера WINS запрос информации о входе в систему, которая у него есть для пользователя, которая должна вернуть систему, в которой, по ее мнению, они вошли, см. Этот пост:

http://www.visualbasicscript.com/m_56230/tm.htm

В основном это команда: "NETSH WINS SERVER \\WinsServerName SHOW NAME UserName 03"

если вы используете какое-либо программное обеспечение для управления активами / системой, такое как Desktop Authority, Altiris и т. Д., То вам, возможно, повезет больше узнать, где агенты рабочего стола регистрируют эту информацию, поскольку они обычно регистрируют эту информацию также в какой-то таблице SQL ( s).

...