VBS скрипт для учета компьютеров и пользователей, наводим порядок
Что делает этот скрипт?
Помещенный в автозагрузку средствами GPO, он запускается от имени пользователя и в учетной записи пользователя в поле Номер телефона пишет когда и на каком компьютере осуществлен вход.
А в карточке компьютера в поле "Описание", добавляет имя учетной записи (!!!) и время входа.
Таким образом, имеем возможность отслеживать кто из пользователей за каким компьютером работает.
В большой организации на 200+ компьютеров вещь незаменимая.
Итак:
Dim adsinfo, ThisComp, oUser
' Определяем объекты
Set adsinfo = CreateObject("adsysteminfo")
Set ThisComp = GetObject("LDAP://" & adsinfo.ComputerName)
Set oUser = GetObject("LDAP://" & adsinfo.UserName)
' Заносим данные в AD
' В поле Описание компьютера пишем имя пользователя, и время входа
Thiscomp.put "Description", "Logged on: " + oUser.cn + " " + CStr(Now)
ThisComp.Setinfo
'В поле Номер телефона учетки пользователя пишем имя компьютера и время входа
oUser.put "TelephoneNumber", "Logged on: " + ThisComp.cn + " " + CStr(Now)
oUser.Setinfo
wscript.quit
Плюсы
- при таком скрипте достаточно настроить в оснастке AD отображение одного дополнительного столбца (в нашем случае department) и можно будет четко видеть где кто работает в данный момент, когда он туда залогинился, либо если на компьютере никто не работает – то кто на нем работал последним, и когда вышел из системы
- Не привлекается никакого стороннего ПО, нагрузка на систему (время входа пользователя) увеличивается очень незначительно
- Легко и наглядно отслеживается наличие старых объектов компьютеров-пользователей в AD (по дате последнего логина)
- Данные централизованно хранятся в AD и не нужно никакого дополнительного хранилища (файла, папки, БД и т.п.). Данные дублируются в объектах Пользователь и Компьютер, т.е. можно отследить ситуацию «дважды под одним и тем же вошел на разных компьютерах».
- Выбраны наименее используемые (у нас и у всех тех организаций, с которыми я работал) ОБЩИЕ для объектов пользователь и компьютер поля AD. Это плюс, потому что если бы поля были разными – то пришлось бы добавлять отображение лишних столбцов в оснастке AD
- Легко корректировать скрипт по своему усмотрению (выбирать другие поля для хранения данных, писать дополнительно в текстовый файл, исключать из обработки отдельных пользователей или компьютеры (например терминальные сервера), и т.д.)
Минусы
- НЕ ХРАНИТСЯ история входов, т.е. записано только текущее состояние. Если история входов нужна, то временно можно добавив несколько строк кода писать информацию еще и в сетевой файл, а если нужна постоянно – то лучше подумать о другом методе учета.
- Требуется выдать дополнительное разрешение Write\Modify на поле Department объектов Компьютер и Пользователь в AD для всех доменных пользователей. Минус в моей ситуации сомнительный, но и отрицать его не буду – он есть.
Комментариев нет:
Отправить комментарий