Имеется терминальный сервер (tserver.polygon.local) на базе Windows Server 2003 (Не важно, какой редакции), нужно сделать так, чтобы обычный пользователь не обладающий правами администратора мог получить доступ к консольной сессии, т.е. увидеть всё то, что там работает.
Для этого зайдём под учётной записью обладающей административными правами на терминальный сервер. В моём случаем – это ekzorchik.
После, на клавиатуре нажимаем «Win+R» и в меню «Выполнить» набираем cmd.exe. Далее запускаем консольную утилиту wmic, которая взаимодействует со структурой WMI, та в свою очередь отвечает за централизованное управление и слежение за работой различных частей компьютерной инфраструктуры под управлением платформы Windows.
C:\Documents and Settings\ekzorchik>wmic
Набираем:
wmic:root\cli>rdpermissions where “TerminalName=’console'” call AddAccount “polygon.local\derek”,2
Execute (\\TSERVER\ROOT\CIMV2:Win32_TSPermissionsSetting.TerminalName=”Console”)->AddAccount() (Y/N/?)? Y – подтверждаем выполнение операции
Method execution successful.
Out Parameters:
instance of __PARAMETERS
{
ReturnValue = 0;
};
, где Derek – это учётная запись обычного пользователя имеющего права входа на терминальный сервер (tserver.polygon.local) по RDP.
Чтобы подключиться к терминальному серверу к консольной сессии c рабочей станции под управлением, к примеру, Windows XP запускаем через меню «Выполнить»
mstsc /v:tserver /Admin
Чтобы убедиться, что мы в консольной сессии открываем «Task Manager» – вкладка «Users»:
Всё хорошо, но если Администратор зашёл локально на сервер, то мы не сможем подключиться.
Чтобы забрать у пользователя данные привилегии, в командной строке на терминальном сервере следует набрать следующую команду:
C:\Documents and Settings\ekzorchik>wmic
wmic:root\cli>rdpermissions where “TerminalName=’console'” call RestoreDefaults
Execute (\\TSERVER\ROOT\CIMV2:Win32_TSPermissionsSetting.TerminalName=”Console”)->RestoreDefaults() (Y/N/?)? Y – подтверждаем выполнение операции
Method execution successful.
Out Parameters:
instance of __PARAMETERS
{
ReturnValue = 0;
};
Как видите, всё отлично работает, поставленная задача выполнена. Изучайте работу внутренних средств Windows и всё у Вас будет, получаться и многое облегчит Ваш нелёгкий путь.