Получение списка активных пользователей терминальных серверов с возможностью удаленного подключения

15.08.22

Администрирование - Удаленное управление

Обработка выводит список сессий пользователей терминальных серверов. По двойному клику запускает удаленное подключение в режиме RDP Shadow - теневое подключение (зеркало). Использует стандартную утилиту mstsc.exe. Работает поиск по списку, сортировка, отбор. Для получения сессий использует стандартную системную утилиту quser.exe, опционально запрашивает поля данных о пользователе у контроллера домена.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Активные пользователи терминалов, зеркальное подключение
.epf 18,95Kb ver:1.5
35
35 Скачать (1 SM) Купить за 1 850 руб.

Основное назначение - поиск активной сессии пользователя по списку терминальных серверов и подключение к ней для помощи или других задач тех.поддержки и администрирования.

Обработку можно подключить как "Дополнительную обработку" в любую конфигурацию на управляемых формах через интерфейс БСП, добавить в состав конфигурации через конфигуратор или открывать через Файл -> Открыть, указав скачанный файл.

Тестирование производилось подключением в качестве дополнительной обработки в конфигурациях "1С: Бухгалтерия предприятия, редакция 3.0 (3.0.111.16)" и "Управление торговлей, редакция 11 (11.4.11.55)" на версии платформы 8.3.18.1289. 

Так как обработка использует запуск системных утилит, при первом использовании будет выходить запрос о безопасном режиме работы. Для нормального функционирования он должен быть отключен. Если выходит ошибка в момент сканирования серверов или запуске удаленного подключения, решение описано в пункте "ВАЖНО" ниже по тексту.

 

Основные настройки и описание работы.

Список серверов задается на главной форме в текстовой строке через запятую.

Поиск сессий производится нажатием кнопки "Сканировать сервера". При этом происходит поочередный вызовом утилиты quser.exe с параметром /server по заданному списку. В настройках обработки можно задать режим запуска сканирования при открытии.

Запуск утилиты и получение текста ответа реализовано через COM объект WScript.Shell метод Exec. Разрешение на его использование требует отключение безопасного режима и как следствие выходит вопрос пользователю при первом запуске.

Дополнительно реализован запрос к контроллеру домена для получения дополнительных сведений о пользователях, так как утилита quser возвращает только имена пользователей и номера сессий. Для удаленного подключения этих данных достаточно, но для работы специалиста поддержки часто требуется больше данных, таких как ФИО, телефон, e-mail, подразделение.

Запрос к контроллеру домена реализован через ADODB.Connection с провайдером ADsDSOObject. Т.е. по указанному в настройках домену получаются все его пользователи и те чье имя совпадет при сканировании сервера дополняются данными полей из AD.

В полученном списке отображается статусы сессий и ID. Отключить получение неактивных сессий можно в настройках обработки.

По кнопке "Удаленный доступ" (или двойному клику) производится запуск теневого подключения к выбранной сессии из списка.

Режим доступа задается кнопками-переключателями "Только наблюдение" и "Без согласия пользователя" (последняя требует особых прав в подключаемой системе)

Настройки открываются по кнопке "Настройки". Сохранение всех настроек происходит в момент закрытия главной формы обработки механизмом Автоматического сохранение данных формы. Для каждого пользователя настройки индивидуальны.

 

ВАЖНО!: Утилита quser.exe запускается на клиенте, но доступ клиентского приложения к системным утилитам может быть запрещен. Для решения этой проблемы достаточно скопировать утилиту в общедоступный каталог (локальный или сетевой) и указать путь к нему в настройках обработки. Утилита обычно находится в каталоге "C:\Windows\System32". 

Удаленный доступ реализуется вызовом типовой утилиты mstsc с параметрами /shadow:ID /v:SERVER и дополнительно /control и /noConsentPrompt если их вызов включен кнопками-переключателями на главной форме обработки.

 

ВАЖНО!: У пользователя - администратора домена, а так же у администраторов терминальных серверов не возникнет проблем с доступом в этих режимах. Но если потребуется настроить доступ в таком режиме для особой группы непривилегированных пользователей, например операторов поддержки 1С или руководителя подразделения, то по этой теме нужно искать статьи на тему RDS Shadow. Делается это скриптом PowerShell, так как GUI интерфейс AD и сервера терминалов пока не имеет этой настройки. Например в этой статье https://winitpro.ru/index.php/2014/02/12/rds-shadow-v-windows-2012-r2/ с момента RDS Shadow из PowerShell есть конкретика с примерами ссылка https://winitpro.ru/index.php/2016/03/02/zapusk-osnastok-tsadmin-msc-i-tsconfig-msc-v-windows-server-2012-r2/, я использовал для настройки именно их. Здесь нужно обратить внимание что в примере права настраиваются для TerminalName='RDP-Tcp', но не забывайте что есть еще TerminalName='Console'. Если у вас есть машины не в режиме RDP, то настроив на них права (например через logon-скрипт) для обоих этих групп вы сможете получать доступ как к RDP  сессии, так и к консоли неотличимо по функционалу и виду.

обработка удаленный доступ активные сессии RDP терминал

См. также

Удаленное управление Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Включение и выключение компьютеров по расписанию из 1С, заданным регламентными заданиями. Компьютеры под управлением Windows включаются по команде broadc и выключаются командой shutdown. - broadc бесплатная утилита, доступная в интернете и приложенная к этой статье - shutdown - команда windows Статья показывает, как в 1С использовать данные команды.

11.06.2024    1060    eda_light    0    

3

Удаленное управление Пароли Системный администратор Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

Как дать доступ сотруднику к удаленному рабочему столу (RDP), но при этом не давать пароль доступа?

2 стартмани

25.03.2024    5790    15    dungeonkeeper    15    

14

Удаленное управление Системный администратор Платформа 1С v8.3 Управляемые формы 1С:Бухгалтерия 3.0 Россия Абонемент ($m)

Обработка используется для наблюдения за сеансами удаленных рабочих столов пользователей и выполнения задач администрирования, таких как отключение пользователей, отправление сообщений, используя команды теневого доступа пользователей.

1 стартмани

22.12.2023    4826    18    Струнин    4    

25

Удаленное управление Системный администратор Россия Абонемент ($m)

Маленькая программка для реализации подключения к сессиям пользователя на сервере.

2 стартмани

05.10.2023    2888    13    AActor    1    

7

Удаленное управление Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Внешняя обработка считывает историю сеансов Ammyy Admin и хранит в базе 1С. Получает отчет за любой период с группировками по рабочим местам, организациям и операторам.

4 стартмани

03.10.2023    949    0    Uran    0    

2

Удаленное управление Программист Платформа 1С v8.3 8.3.14 Конфигурации 1cv8 Абонемент ($m)

Расширение обеспечивает возможности подключения одного сотрудника к экрану другого с его согласия в режиме "стажер" - "куратор".

1 стартмани

05.09.2022    3786    4    user739143    0    

14

Удаленное управление Системный администратор Программист Абонемент ($m)

Довольно много специалистов, так или иначе связанных с 1С, работают с базой через удаленный рабочий стол (RDP). В системе даже есть возможность настроить ярлык быстрого подключения к RDP, чтобы сделать подключение максимально быстрым и удобным. К сожалению, если у вас нет прав администратора, либо если групповая политика на вашем компьютере контролируется организацией, у вас могут возникнуть проблемы с автоматическим запоминанием пароля системой. Иными словами, при каждом подключении вам придётся раз за разом заново вводить пароль. Часто такие пароли генерируются автоматически и представляют собой случайные наборы символов, выучить которые порой нереально. Пароль, как правило, сохраняют в текстовом файлике, и раз за разом копируют его оттуда при подключении к RDP. Знакомо? Данная программка поможет вам вводить пароль автоматически. Подключение будет происходить в 1 клик.

1 стартмани

08.08.2022    5694    10    XilDen    6    

4
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Алексей_mir2mb 20.08.22 12:47 Сейчас в теме
А айпишник юзера Ваша обработка покажет?
2. user739143 42 20.08.22 18:24 Сейчас в теме
(1) Нет, IP клиента сеанса не покажет, только то что возвращает утилита quser.exe, там из полезного только пользователь и ID сеанса. Для подключения к этому сеансу нужен только IP сервера и ID сеанса.

У меня есть еще одно решение для удаленной поддержки. Его делали для взаимопомощи сотрудников подразделений. В нем один сотрудник делает "Запрос помощи", при этом собирается вся информация о окружении сеанса, в том числе и IP клиента (так как вызов со стороны клиента, проблем с доступом и безопасностью нет, клиент и так все это хранит в своем Environment("PROCESS"). Затем этот запрос отображается 2 минуты в обработке и любой пользователь на связи с запрашиваемым (например по телефону) может ответить на запрос и подключиться. Запрашиваемый пользователь так же как и в этом решении видит кто к нему хочет подключиться, дает разрешение. Так как делалась система для 1С что работает через rds parallels нужно было подключение именно по IP клиента к непосредственному компу с которого запущен drs клиент с 1С-кой, как как в самом сеансе кроме 1С ничего нет, а нужно было остальное (рабочий стол, почта, Excel и др. с чем у пользователя возникла проблема). Подключение к самому сеансу где работает 1С тоже оставили опционально, так как на машинах с Win7 такой режим подключения не работает (только начиная с Win8). Могу подготовить это решение для infostart.
3. r.sergey 21.04.23 07:00 Сейчас в теме
Это обработка я так понимаю для WIN SERVER от 2012?
4. user739143 42 21.04.23 10:10 Сейчас в теме
(3) Да, на более ранних версиях нет возможности проверить.
Вы можете проверить вручную.
По сути это парсер результата команды quser /server:192.168.xxx.xxx команда запускается на клиентской машине.
Выполните ее в консоли, если конечно утилита quser.exe есть в вашей версии ОС.
Для подключения используется команда mstsc /v:192.168.xxx.xxx /shadow:ID_сеанса /control
ID_сеанса - тот номер сессии, что выдала утилита quser.
5. r.sergey 27.11.23 16:39 Сейчас в теме
(4) Подскажите. Запускаю обработку на клиентской машине, просканировать сервер не дает. Если в сессии RDP, то все нормально работает. Результат команды на клиентской машине quser /server:192.168.xxx.xxx "Ошибка 0х00000005 перечисление сеансов. Ошибка 5: отказано в доступе. Файл quser.exe выложил на общую папку.
6. user739143 42 27.11.23 17:08 Сейчас в теме
(5) "Ошибка 5: Отказано в доступе" при запуске системных утилит - распространённая и решения широко описаны на просторах интернета. Вы точно задали путь в настройках обработки к папке куда скопировали quser? Возможно права в этой папке всетаки недостаточны для запуска или содержимое не наследует права. Попробуйте установить права непосредственно самому файлу quser.exe. Если запускать в консоли с этого клиента результат quser выдаёт без ошибки?
7. r.sergey 28.11.23 09:44 Сейчас в теме
В консоли клиента и выдается эта ошибка. Т.е. я пытаюсь со своей машины проверить сеансы сервера. Или все таки так нельзя? Т.к. я запускаю 1С на своем компе, а база лежит на сервере.
8. user739143 42 28.11.23 10:36 Сейчас в теме
(7) Для начала нужно добиться чтобы утилита quser работала на клиентской машине в Командной строке cmd. Если там не работает, у вас что-то с правами. Точно работает на машинах входящих в один домен. Подробнее о правах необходимых для работы quser нужно гуглить непосредственно по этой утилите, например тут https://learn.microsoft.com/ru-ru/windows-server/administration/windows-commands/quser

Обработка 1С используется только для организации данных выданных этой утилитой в удобной форме.
Оставьте свое сообщение