Конфигурация создана как альтернатив типовому варианту с ИТС (весь процесс настройки тут подробно приведен) и может стать основой для вашего решения внешнего управления сеансами если вам нужно построить ограничение сеансов таким образом, чтобы учитывались суммарные сеансы на несколько баз. Например, у организации есть база БП и ЗУП, нужно ограничить суммарное количество сеансов на организацию в обеих базах. Количество баз, на которое задается суммарное ограничение - не ограничено.
За базу была взята обработка //infostart.ru/1c/tools/1265333/, но почти полностью переработана.
Тестировалось на платформе 1С:Предприятие 8.3 (8.3.27.1859), сервер 64 КОРП на Windows, apache 2.4
Установка: создаем новую пустую базу, загружаем туда cf, публикуем на веб-сервере (апач или IIS):

Запоминаем имя публикации и имя веб-сервиса.
В свойствах базы в кластере делаем так:

В строке внешнего управления сеансами пишем:
wsdl=https://<адрес_веб_сервера>/SessionManagement/ws/SessionControl?wsdl;ns=http://v8.1c.ru/SessionManagement;srvc=SessionControl;port=SessionControlSoap;
SessionManagement - это имя публикации
SessionControl - имя веб-сервиса
и галку обязательное использование внешнего управления.
---
Теперь настройка самих ограничений и мониторинг.
Нашу базу контроля открываем, создаем новый элемент, наименование какое хотите, в поле количество пишем максимально доступное количество сеансов:

Остальное не заполняем, переходим на вкладку инф.базы:

Итого, в примере на все 4 базы можно будет открыть не более двух сеансов.
Сохраняем, пробуем:

Сообщение сможете изменить в конфигурации, как захотите.
Да, и обязательно настройку в разделе настройки:

Если на кластер есть админские логины - вписываем. В AppID исключений я вписал сеансы консоли кластера, фоновые задания и сом-подключение к консоли. Эти сеансы не учитываются при контроле.
Теперь немного кода и методики.
Штатное использование управления сеансами предполагает работу только с одной базой и установку запрета в рамках одной базы. Именно поэтому была разработана данная альтернативная конфигурация. Здесь мы получаем количество сеансов не типовыми функциями, а путем запроса к консоли кластера через COM (внимание, должна быть зарегистрирована компонента comcntr (regsvr32 comcntr.dll), ну и на линуксах не заработает), фильтруем по базе:
// замена штатной функции synchronize на получение общего списка сеансов
// по элементу справочника Доступные сеансы, который задает ограничение суммарных сеансов на группу инф.баз
Процедура synchronizeByGetSessions(ЭлементСправочникаДоступныеСеансы)
Настройка = Справочники.спрНастройки.ЕдинственныйЭлемент;
COMСоединитель = Новый COMОбъект("V83.COMConnector");
Агент = COMСоединитель.ConnectAgent(СокрЛП(Настройка.СтрокаПодключения));
Кластер = Агент.GetClusters().GetValue(0);
Агент.Authenticate(Кластер,СокрЛП(Настройка.ЛогинКластер),СокрЛП(Настройка.ПарольКластер));
МассивСессий = Агент.GetSessions(Кластер).Выгрузить();
Попытка
Объект = ЭлементСправочникаДоступныеСеансы.ПолучитьОбъект();
Объект.Заблокировать(); // Установка блокировки
Объект.ТекущиеСеансы.Очистить();
Для Каждого Сессия Из МассивСессий Цикл
Если Объект.ИнфБазы.НайтиСтроки(Новый Структура("ИмяБазы",Сессия.infoBase.Name)).Количество()>0
И Настройка.ИсключенияAppID.НайтиСтроки(Новый Структура("AppID",Сессия.AppID)).Количество()=0 Тогда
Строка = Объект.ТекущиеСеансы.Добавить();
Строка.SessionID = Сессия.SessionID;
Строка.infobaseName = Сессия.infoBase.Name;
Строка.UserName = Сессия.UserName;
Строка.AppID = Сессия.AppID;
Строка.LanguageCode = Сессия.Locale;
Строка.Hibernate = Сессия.Hibernate;
Строка.StartedAt = Сессия.StartedAt;
КонецЕсли;
КонецЦикла;
Объект.ВсегоСессий = Объект.ТекущиеСеансы.Количество();
Объект.БезСпящих = Объект.ТекущиеСеансы.НайтиСтроки(Новый Структура("Hibernate", Ложь)).Количество();
Объект.Записать();
Исключение
ЗаписьЖурналаРегистрации("synchronizeByGetSessions",УровеньЖурналаРегистрации.Ошибка,,,"Не удалось заблокировать объект "+ЭлементСправочникаДоступныеСеансы);
КонецПопытки
КонецПроцедуры
Перед открытием нового сеанса выполняется эта функция, записывается в справочник количество сеансов, за исключением тех AppID, которые указаны в исключениях. Спящие сеансы при подсчете не учитываются. Пробуждение спящего сеанса не отрабатывается, но, полагаю, несложно доделать.
Вступайте в нашу телеграмм-группу Инфостарт