Моя идея состоит в том, чтобы создать сценарии входа и выхода, чтобы фиксировать время входа / выхода и сохранять его в файл (или в базу данных). Я понятия не имею, как уловить время.
Проще всего - что я бы сделал для сбора наиболее потенциально важной информации - это создать пакетные сценарии со следующими строками (и поместить пакетные сценарии в сценарии входа и выхода из групповой политики - с расширениями .cmd)
для входа:
echo% username% вошел в систему с% computername% в% date% в% time% >> \ server \ share \ logon.log
и для выхода:
echo% username% вышел из% computername% в% date% в% time% >> \ server \ share \ logoff.log
(Вы можете использовать один и тот же файл, и не нужно их разделять, но для удобства я разделил их на два файла).
Вышеупомянутое должно добавить строку к файлам logon.log или logoff.log (при необходимости) с именем учетной записи пользователя, компьютером, с которого пользователь вошел в систему, а также датой и временем.
Открыв файл в Excel и используя функцию преобразования текста в столбцы, вы можете легко создавать сортируемые отчеты. (И вы можете оставить текст, упрощающий зарегистрированные данные до чего-то вроде echo% username%,% computername%,% date%,% time%)
Если вы используете BAT, просто используйте time /t
. Легко, как торт.
Если вы планируете сделать это с помощью сценариев, вы можете легко назначить сценарий VBS для запуска при входе в систему в Active Directory или в групповой политике и просто записать время входа, имя сервера и пользователя в базу данных SQL.
ваш сценарий неправильный
echo %username% logged off from %computername% on %date% at %time%>>\server\share\logoff.log
этот правильный сценарий
echo %username% logged off from %computername% on %date% at %time%>>\\server\share\logoff.log
ваш сценарий неправильный
echo %username% logged on from %computername% on %date% at %time%>>\server\share\logon.log
этот правильный сценарий
echo %username% logged on from %computername% on %date% at %time%>>\\server\share\logon.log