Windows Server 2012 R2: Делегирование полномочий пользователю для управления терминальным сервером
Задача, которая в Windows Server 2008 R2 решалась несколькими кликами мышки, в Windows Server 2012 R2 стала несколько нетривиальна, а именно:
предоставить права пользователю для отправки сообщений, сброса подвисших терминальных сессий и т.д., не давая ему административных прав на сервере и в домене. Windows Server 2008 R2 все эти настройки производились во вкладке «Безопасность» свойств подключения «RDP-Tcp» консоли «Конфигурация узла сеансов удаленных рабочих столов». В Windows Server 2012 R2 такой консоли нет, соответственно подход к настройке делегирования полномочий видоизменился. С использованием PowerShell и поставщика инструментария управления Windows (WMI) служб удаленных рабочих столов Windows Server 2012 R2 будет решена эта типовая задача.
Итак,
Первым делом необходимо создать новую группу, локальную на сервере, либо в домене, в которую будут входить пользователи с делегированными полномочиями.
На каждом сервере с ролью Узла сеансов удаленных рабочих столов(RDSH) необходимо выполнить следующую команду:
для локальной группы на сервере
wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName =»RDP-Tcp»)CALL AddAccount «ServerName\Group»,2
для доменной группы
wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName =»RDP-Tcp»)CALL AddAccount «Domain\Group»,2
где, ServerName — имя Вашего сервера, Domain — имя Вашего домена, Group — имя локальной или доменной группы
После выполнения этих команд, пользователи получат разрешения, которые приведены в таблице.
Разрешение | Возможности | Permission | Capability | Value | Meaning |
Запрос сведений | Запрос сведений о сеансах и серверах Узел сеансов удаленных рабочих столов | Query Information | Query sessions and RD Session Host servers for information | WINSTATION_QUERY | Permission to query information about a session. |
Установка сведений | Настройка свойств подключения | Set Information | Configure properties of the connection | WINSTATION_SET | Permission to modify connection parameters. |
Удаленное управление | Просмотр или активное управление сеансом другого пользователя | Remote Control | View or actively control another user’s session | WINSTATION_SHADOW | Permission to shadow or remotely control another user’s session. |
«Вход» | Вход в сеанс на сервере Узел сеансов удаленных рабочих столов | Logon | Log on to a session on the RD Session Host server | WINSTATION_LOGON | Permission to log on to a session on the server. |
Выход из системы | Выход пользователя из сеанса | Logoff | Log off a user from a session | WINSTATION_LOGOFF | Permission to log off a user from a session. |
Сообщение | Отправка сообщения сеансу пользователя | Message | Send a message to a user session | WINSTATION_MSG | Permission to send a message to another user’s session. |
Подключение | Подключение к сеансу другого пользователя | Connect | Connect to another user session | WINSTATION_CONNECT | Permission to connect to another session. |
Отключение | Отключение сеанса пользователя | Disconnect | Disconnect a user session | WINSTATION_DISCONNECT | Permission to disconnect a session. |
Виртуальные каналы | Использование в сеансе виртуального канала, обеспечивающего перенаправление локальных устройств и ресурсов | Virtual Channels | Use a virtual channel in a session, which provides local device and resource redirection | WINSTATION_VIRTUAL | STANDARD_RIGHTS_REQUIRED | Permission to use virtual channels. Virtual channels provide access from a server program to client devices. |
WINSTATION_RESET | Permission to reset or end a session or connection.Windows Server 2003: This value is not supported. |
Если необходимо удалить данную группу с сервера, выполните следующие команды в PowerShell:
для локальной группы на сервере
$obj = @(gwmi -Namespace Root\CIMv2\TerminalServices -query «select * from Win32_TSAccount where
TerminalName=’RDP-TCP’ AND AccountName=’ServerName\\Group'» )
Для тех, кто считает данное количество полномочий избыточным и неоправданным с точки зрения безопасности, остальная часть статьи.
Колонки «Value» и «Meaning» для Вас.
Например, чтобы запретить пользователю отправку сообщений или теневое подключение, достаточно выполнить следующие команды:
запретить отправку сообщений
$obj = @(gwmi -Namespace Root\CIMv2\TerminalServices -query «select * from Win32_TSAccount where
TerminalName=’RDP-TCP’ AND AccountName=’Domain\\Group'» )
$obj.ModifyPermissions (7,0)
в методе ModifyPermissions используется значение 7, которое предоставляет право отправки соообщений, значение 0 — запрещает это действие
запретить теневое подключение
$obj = @(gwmi -Namespace Root\CIMv2\TerminalServices -query «select * from Win32_TSAccount where
TerminalName=’RDP-TCP’ AND AccountName=’Domain\\Group'» )
$obj.ModifyPermissions (4,0)
в методе ModifyPermissions используется значение 4, которое предоставляет право теневого подключения, значение 0 — запрещает это действие.
Аналогичным образом, можно запретить остальные действия.
Если необходимо разрешить ранее запрещенную операцию, необходимо в методеModifyPermissions установить значение равное 1.
разрешить теневое подключение
$obj = @(gwmi -Namespace Root\CIMv2\TerminalServices -query «select * from Win32_TSAccount where
TerminalName=’RDP-TCP’ AND AccountName=’Domain\\Group'» )
$obj.ModifyPermissions (4,1)
В заметке использованы материалы библиотеки MSDN, где можно ознакомиться с описанием классов Win32_TSAccount class, Win32_TSPermissionsSetting class и их методами, и библиотеки TechNet — Настройка разрешений для подключений к службам удаленных рабочих столов
Управление RDP сессиями пользователей Windows Server 2012 R2
При администрировании сервера терминалов, особенно, когда на нем работают удаленные сотрудники в специализированных программах или даже просто в 1С, возникает необходимость подключиться к сессии пользователя для различных работ (обслуживание и диагностика ПО, консультация/обучение и т.п.).
Данная технология полноценно работает в Windows Server 2012 R2 и называется – Теневая копия. Если у вас установлена и используется для сервера удаленных рабочих столов MS Windows Server 2012, то знайте – данная опция не реализована в данной версии ОС. Тем не мене в обоих случаях (2012 и 2012 R2) есть прекрасная возможность использовать дополнительное средство удаленного администрирования и поддержки пользователей – “Удаленный помощник“. Устанавливается стандартным способом (через Диспетчер управления серверами-Добавить роли и компоненты):
После установки “Удаленный Помощник” необходимо выполнить следующие настройки групповых политик на настраиваемом сервере:
- Конфигурация компьютера\Административные шаблоны\Службы удаленных рабочих столов\Узел сеансов удаленных рабочих столов\Подключения\Разрешить пользователям удаленное подключение с использованием служб удаленных рабочих столов – включить
- Конфигурация компьютера\Административные шаблоны\Службы удаленных рабочих столов\Узел сеансов удаленных рабочих столов\Подключения\Установить правила удаленного управления для пользовательских сеансов удаленных рабочих столов – выбрать нужны вариант
- Конфигурация компьютера\Административные шаблоны\Система\Удаленный помощник\Настроить предупреждающие сообщения
- Конфигурация компьютера\Административные шаблоны\Система\Удаленный помощник\Настроить запрашиваемую удаленную помощь
- Конфигурация компьютера\Административные шаблоны\Система\Удаленный помощник\Настроить предлагаемую удаленную помощь
Настройка Удаленного помощника на сервер MS Windows Server 2012 / 2012 R2 завершена.
Нашли ошибку в тексте? Выделите фрагмент текста и нажмите Ctrl+Enter
Windows server 2012 rdp tcp свойства
Вопрос
Как получить доступ к параметрам безопасности сервера терминалов в Windows Server 2012R2? В 2008R2 была такая опция —
Ответы
- Предложено в качестве ответа ILYA [ sie ] Sazonov Moderator 20 мая 2015 г. 7:19
- Помечено в качестве ответа Solenoid Editor 29 мая 2015 г. 19:35
Все ответы
Подскажите, а как можно выставить права Remote Control, Logoff, Message, Disconnect?
Согласно приведенной статьи есть только 3 параметра
- X : The type of access to be granted:
- Предложено в качестве ответа ILYA [ sie ] Sazonov Moderator 20 мая 2015 г. 7:19
- Помечено в качестве ответа Solenoid Editor 29 мая 2015 г. 19:35
После выполнения скрипта на сервере терминалов (Win2012R2) поля отправить сообщения, отключить пользователя и т.д. не появились. Сервер перезагрузили — не помогло.
Может есть еще какие-нибудь идеи? Спасибо
PS Цель — предоставления прав пользователю отключить сессии других, не имея прав администратора на весь сервер