Ещё один блог о системном администрировании, операционных системах, СУБД, сетях, костылях-велосипедах и пр.
Иногда могут возникнуть ситуации, когда необходимо ограничить по времени работу некоторых пользователей на терминальном сервере. Если сервер в домене Active Directory, то с этим проблем возникнуть не должно - все делается просто в оснастке Users and Computers в свойствах учетной записи, вход которой нужно ограничить по времени. Но как быть, если сервер не в домене, а ограничения для некоторых пользователей всетаки нужно сделать? Об этом я и напишу в этой заметке.
Для таких целей у меня есть два скриптика. Первый - отключает пользовательские сессии и делает учетную запись пользователя неактивной (пользователь не может залогиниться), второй - делает учетные записи активными (пользователь может залогиниться). Список пользователей в отдельном файле, скрипты выполняются через назначенные задания.
@echo off
for /F "eol=#" %%N in (C:\scripts\users_lock\userslist.txt) do (
net user %%N /active:no
query user %%N >"C:\scripts\users_lock\session.txt"
for /F "skip=1 tokens=3," %%i in (C:\scripts\users_lock\session.txt) do logoff %%i
del session.txt
)
@echo off
for /F "eol=#" %%N in (C:\scripts\users_lock\userslist.txt) do (
net user %%N /active:yes
)
Данная конструкция работает на Windows Server 2008 R2, возможно взлетит и на 2012 R2, я не проверял.
Вот такой вот костыль :) Но у меня работает в одной конторе.
Комментарии (RSS)
Комментарий ожидает проверки