1 (изменено: Rom5, 2011-01-20 11:02:22)

Тема: VBS/HTA: дата-время создания определенной ветви реестра

Коллеги, нутром чую) что в реестре хранятся временные атрибуты по веткам реестра - попадались утилиты, которые с ними работали. В моем HTA-приложении есть VBS-код поиска в реестре удаленной машины ветки залогиненого юзера, в ней я ищу: логин, контролер логона, путь "отредиректенного" десктопа. Но хочется еще и научить программу отображать и время логона, т.к. хочу реализовать функциональность ожидания перелогона на контролируемой машине.
Известный утиль от М.Руссиновича - psloggedon.exe как-то из реестра эту инфу берет...
Брать время логона запросом к AD не устраивает, вызов psloggedon с разбором вывода реализован, но не так интересен - из-за мелькания окна консоли.
Подскажите плз способ обойтись скриптом, подкиньте идею.

WBR. Roman

2

Re: VBS/HTA: дата-время создания определенной ветви реестра

Rom5 пишет:

Брать время логона запросом к AD не устраивает…

Чем?

Если не делать время последнего входа реплицируемым атрибутом, то:
* получить перечень контроллеров домена;
* опросить каждый контроллер домена на предмет даты/времени последнего входа пользователя;
* отсечь пустые, из остальных выбрать последний по сроку.

Куда как быстрее, нежели опрашивать все машины домена на предмет регистрации пользователя.

3 (изменено: Rom5, 2011-01-20 21:07:06)

Re: VBS/HTA: дата-время создания определенной ветви реестра

У меня цель не искать машину, за которой залогинен юзер. Машину я знаю, хочу лишь уловить момент когда юзер за ней перелогинился.
У конроллера спрашивать, во-первых, прийдется не у одного, т.к. юзеры из некоторых юнитов могут регистрироваться на разных DC, а другой нюанс более критичен - выдываемое контроллером время логона пользователя видимо по каким-то событиям меняется и без участия юзера. К примеру - юзер поступил нехорошо и оставил машину на ночь включенной, отсканировав учетки пользователей рано утром можно увидеть, кто еще машину не включал - логон вчерашний, кто уже работает - только как зарегистрировался, а у этого "нехорошего" человека логон может быть 2 часа ночи или 6, т.е. время когда юзер явно отсутствовал. Да и в течении дня и без прерывания сеанса работы время логона учетки время от времени, сори за тавтологию, меняется.

WBR. Roman

4

Re: VBS/HTA: дата-время создания определенной ветви реестра

Rom5 пишет:

У конроллера спрашивать, во-первых, прийдется не у одного, т.к. юзеры из некоторых юнитов могут регистрироваться на разных DC

Ну, а я про что:

alexii пишет:

* опросить каждый контроллер домена на предмет даты/времени последнего входа пользователя;

Rom5 пишет:

а другой нюанс более критичен - выдываемое контроллером время логона пользователя видимо по каким-то событиям меняется и без участия юзера. … Да и в течении дня и без прерывания сеанса работы время логона учетки время от времени, сори за тавтологию, меняется.

Никогда такого не встречал.

В общем, понял, Вас сие не устроит.

5

Re: VBS/HTA: дата-время создания определенной ветви реестра

Rom5 пишет:

Коллеги, нутром чую) что в реестре хранятся временные атрибуты по веткам реестра
....

Ага!) нагуглил статейку - http://rasslabuxa.com/forum/showthread.php?t=29671
В ней пишут, что экспорт regedit-ом в txt-файл отображает время ветки реестра. Попробовал - и действительно, пример:

Раздел:          HKEY_LOCAL_MACHINE\SOFTWARE\NokiaFS
Название класса:        <Класс отсутствует>
Последнее время записи:   24.12.2008 - 20:04

ИМХО, полезный момент. Народ, берите на заметку.

WBR. Roman

6

Re: VBS/HTA: дата-время создания определенной ветви реестра

alexii пишет:
Rom5 пишет:

У конроллера спрашивать, во-первых, прийдется не у одного, т.к. юзеры из некоторых юнитов могут регистрироваться на разных DC

Ну, а я про что:

alexii пишет:

* опросить каждый контроллер домена на предмет даты/времени последнего входа пользователя;

Rom5 пишет:

а другой нюанс более критичен - выдываемое контроллером время логона пользователя видимо по каким-то событиям меняется и без участия юзера. … Да и в течении дня и без прерывания сеанса работы время логона учетки время от времени, сори за тавтологию, меняется.

Никогда такого не встречал.

В общем, понял, Вас сие не устроит.

offtop
"Читал пейджер, много думал..." (с) В общем - тормознул я, и причем крепко - на целых 10 месяцев)

alexii, вы были безусловно были правы - надо запрашивать у контролеров юзеровское значение LastLogin, а я чего-то зациклился на значении LastLogon учеток компьютеров.

Действительно - LastLogin возвращает время последней регистрации пользователя на сервере - либо запуск нового сеанса, либо разблокирование существующего. Правда желание у меня изначально было всетаки несколько другим - узнать время логина на интересующей машине и с реализацией этого еще как-то до сих пор не сложилось. Но время регистрации на сервере также очень полезная вещь! Спасибо за подсказку.
"Лучше позже, чем никогда"

WBR. Roman

7 (изменено: Dmitrii, 2011-11-19 10:35:43)

Re: VBS/HTA: дата-время создания определенной ветви реестра

... желание у меня изначально было <...> узнать время логина на интересующей машине

Думается, что лучшего способа, чем регулярное ведение соответствующего журнала (БД), не найдётся.
Разумеется, у него есть недостатки (например, относительно высокая сложность реализации в многоконтроллерном домене или при возможности множественных регистраций одного и того же пользователя). Однако по критерию "достоверность + быстродействие" этот способ, вероятно, наилучший.