Администрирование · 12 мин
Как завершить сеанс пользователя в 1С
Разбираем, как завершить сеанс пользователя в 1С: через консоль кластера, конфигуратор, администрирование сервера и программно. Риски, проверка результата, FAQ.
Завершение сеанса пользователя — типовая задача администратора 1С: она нужна при обновлении конфигурации, блокировке базы на время регламентных работ, освобождении лицензий или когда сеанс «завис» и держит соединение с базой. Способ завершения зависит от режима работы информационной базы — файлового или клиент-серверного — и от того, есть ли у вас права администратора.
В клиент-серверном варианте сеансы управляются через консоль кластера серверов 1С или утилиту администрирования. В файловом варианте централизованного инструмента нет, поэтому используются обходные методы: завершение процесса на компьютере пользователя, функционал типовых конфигураций или программные механизмы. Ниже разобраны все рабочие варианты с условиями применения и ограничениями.
Важно понимать разницу между сеансом и соединением: сеанс — это логическая сессия пользователя в информационной базе, а соединение — технический канал между клиентом и сервером. При принудительном завершении сеанса несохранённые данные пользователя теряются, поэтому перед отключением стоит предупредить сотрудника или убедиться, что сеанс действительно неактивен.
Как определить, какие сеансы активны и какой нужно завершить
Прежде чем завершать сеанс, нужно увидеть список активных подключений. В клиент-серверном варианте откройте консоль «Администрирование серверов 1С:Предприятия», разверните нужный кластер, затем информационную базу и выберите пункт «Сеансы». В таблице видны пользователь, компьютер, приложение (толстый клиент, тонкий клиент, веб-клиент, фоновое задание), время начала сеанса и последняя активность.
Обращайте внимание на колонки «Спящий сеанс» и время последнего обращения. «Зависшие» сеансы часто выглядят как давно неактивные подключения от компьютеров, которые уже выключены или перезагружены. Именно такие сеансы чаще всего занимают лицензии и блокируют установку монопольного режима.
В файловом варианте список пользователей виден внутри самой программы: в типовых конфигурациях на базе БСП откройте «Администрирование» → «Обслуживание» → «Активные пользователи». Там отображаются подключённые пользователи и момент начала работы, но завершить их сеансы из этой формы напрямую нельзя — только через дополнительные механизмы.
Сравните время последнего обращения с текущим; проверьте, работает ли пользователь за компьютером
Завершение может прервать регламентную операцию: обмен, расчёт, загрузку данных
Свяжитесь с пользователем и попросите завершить работу штатно
Проверьте настройки времени завершения спящих сеансов в кластере
Завершение сеанса через консоль кластера серверов 1С
Это основной и самый надёжный способ для клиент-серверного режима. Откройте оснастку «Администрирование серверов 1С:Предприятия» на сервере или на компьютере администратора, если консоль зарегистрирована и подключена к агенту сервера. Найдите нужный кластер, раскройте информационную базу и перейдите в раздел «Сеансы».
В списке выделите один или несколько сеансов (с зажатой Ctrl можно выбрать несколько строк), нажмите правую кнопку мыши и выберите «Удалить». Сеанс завершается принудительно: у пользователя клиентское приложение закроется с сообщением о разрыве соединения либо прекратит отвечать и потребует перезапуска.
Если нужно завершить все сеансы сразу — например, перед обновлением конфигурации — удобнее не удалять их по одному, а установить блокировку сеансов в свойствах информационной базы: задайте дату начала блокировки, код разрешения и сообщение для пользователей. Новые подключения будут отклоняться, а оставшиеся сеансы можно удалить списком.
- 1Откройте консоль «Администрирование серверов 1С:Предприятия» и подключитесь к агенту сервера
- 2Разверните кластер → нужную информационную базу → пункт «Сеансы»
- 3Найдите сеанс по имени пользователя или компьютеру, проверьте время последней активности
- 4Выделите сеанс, нажмите правую кнопку мыши и выберите «Удалить»
- 5Обновите список и убедитесь, что сеанс исчез, а лицензия освободилась
Завершение сеансов через конфигуратор и типовые механизмы
В конфигураторе прямой кнопки «завершить сеанс» нет, но здесь устанавливается монопольный режим: «Администрирование» → «Монопольный режим». Если установка не удаётся из-за активных пользователей, конфигуратор покажет, кто мешает. Дальше сеансы завершают описанными выше способами, после чего монопольный режим включается.
В типовых конфигурациях на базе Библиотеки стандартных подсистем есть штатный механизм «Блокировка работы пользователей» («Администрирование» → «Обслуживание»). При её включении пользователям выводится предупреждение, а через заданное время их работа завершается автоматически, при этом активные сеансы в клиент-серверном режиме могут быть отключены принудительно. Это правильный способ массового завершения перед обновлением: пользователи получают время сохранить данные.
Также в БСП есть регламентное задание «Контроль режима завершения работы пользователей» — оно отслеживает установленную блокировку и инициирует завершение сеансов. Если в вашей конфигурации этих подсистем нет, массовое завершение делается только средствами кластера или программно.
Программное завершение сеансов
Для автоматизации сеансы завершают программно. В клиент-серверном варианте на сервере через COM-соединитель или административный интерфейс (V83.COMConnector и объекты агента сервера) можно получить список сеансов информационной базы и вызвать метод завершения для конкретного сеанса. Это используют в скриптах обслуживания: например, ночное удаление спящих сеансов перед резервным копированием.
Для файловых баз часто применяют внешние обработки, которые записывают в базу «флаг завершения»: при очередном обращении к серверу или при старте сеанса код проверяет флаг и вызывает ЗавершитьРаботуСистемы() или ПрекратитьРаботуСистемы(). Мгновенного эффекта такой метод не даёт — сеанс завершится при следующей активности клиента.
Ещё один вариант — консольная утилита кластера rac: командой rac session list получают список сеансов, а rac session terminate с указанием кластера и сеанса завершают нужный. Это удобно для скриптов на серверах Windows и Linux, где нет графической консоли.
rac session list --cluster=<ID_кластера> --infobase=<ID_базы>
rac session terminate --cluster=<ID_кластера> --session=<ID_сеанса>Завершение сеанса в файловом режиме
В файловом варианте нет сервера, который управлял бы сеансами, поэтому принудительное завершение возможно только локально. Если пользователь работает на собственном компьютере, попросите его закрыть программу; при недоступности пользователя завершите процесс 1cv8.exe через диспетчер задач на его ПК или удалённо (например, через штатные средства удалённого администрирования).
Если файловая база опубликована на веб-сервере, сеансами частично управляет веб-сервер: перезапуск пула приложений или службы веб-сервера разорвёт все подключения, но это радикальная мера, отключающая всех пользователей сразу.
Риск файлового режима — аварийное завершение процесса во время записи данных. Файловая СУБД 1С не имеет полноценного журналирования транзакций уровня клиент-серверного решения, поэтому принудительное снятие процесса в момент проведения документов может привести к ошибкам базы, которые придёт устранять тестированием и исправлением.
Как проверить результат и настроить автоматическое завершение неактивных сеансов
После удаления сеанса обновите список в консоли кластера: строка должна исчезнуть. Если сеанс появился снова с тем же пользователем — клиентское приложение переподключается автоматически, значит, пользователь (или запущенный процесс) продолжает работать. Проверьте также количество занятых лицензий в разделе «Лицензии» консоли кластера.
Чтобы «мертвые» сеансы не накапливались, настройте в свойствах кластера или информационной базы параметры «Интервал завершения спящих сеансов» и «Время засыпания пассивного сеанса». Тогда неактивные сеансы будут завершаться автоматически, освобождая лицензии без вмешательства администратора.
Дополнительная проверка — журнал регистрации: в нём фиксируются события подключения и отключения сеансов. Если после принудительного завершения в журнале появляются ошибки у пользователя, значит, его клиент пытался выполнить операцию в момент разрыва — уточните, не потерял ли он введённые данные.
Как проверить результат
Завершённый сеанс отсутствует и не появляется снова
Сеанс пересоздаётся — клиент активно переподключается
Количество уменьшилось на число завершённых сеансов
Лицензии не освободились — остались спящие сеансы
Есть событие отключения без каскада ошибок
После отключения идут ошибки выполнения операций
Устанавливается без сообщений об активных пользователях
Конфигуратор по-прежнему показывает мешающие подключения
Типичные ошибки при завершении сеансов
Самая частая ошибка — завершение сеанса без предупреждения пользователя, который в этот момент вводит данные. Все несохранённые изменения теряются безвозвратно. Перед массовым отключением используйте штатную блокировку работы пользователей с предупреждением за 5–15 минут.
Вторая ошибка — путать сеанс фонового задания с сеансом пользователя. Завершение фонового задания прерывает обмен данными, загрузку курсов или расчёт итогов, что может нарушить регламентные процессы. Всегда смотрите колонку «Приложение» перед удалением.
Третья ошибка — попытка «убить» сеанс на сервере СУБД (например, снятием процесса в MS SQL) вместо средств кластера 1С. Сеанс в кластере при этом может остаться висеть, а лицензия не освободится. Завершайте сеансы именно через механизмы сервера 1С.
Что важно запомнить
В клиент-серверном режиме завершайте сеансы через консоль кластера или утилиту rac, предварительно проверяя активность и тип приложения. Для массового отключения используйте блокировку работы пользователей с предупреждением. В файловом режиме централизованного механизма нет, а принудительное снятие процесса рискованно для данных. Настройте автоматическое завершение спящих сеансов, чтобы проблема не возвращалась.
Частые вопросы
Что увидит пользователь при принудительном завершении его сеанса?
Клиентское приложение потеряет связь с сервером: появится сообщение о разрыве соединения, после чего программа закроется или предложит перезапуститься. Все несохранённые данные (открытые незаписанные документы, введённые строки) будут потеряны, поэтому пользователя стоит предупредить заранее.
Можно ли завершить сеанс пользователя, не имея доступа к серверу 1С?
В клиент-серверном режиме — только программно, если у вашей учётной записи есть права администратора кластера или информационной базы и настроен доступ через COM-соединитель. Без прав администратора кластера завершить чужой сеанс нельзя — это защита от произвольного отключения пользователей.
Почему после завершения сеанса лицензия не освободилась?
Чаще всего у пользователя остался ещё один сеанс — например, спящий или запущенный с другого устройства. Проверьте полный список сеансов по этому пользователю и раздел «Лицензии» в консоли кластера. Также лицензия может удерживаться некоторое время по внутренним правилам кластера до окончательного закрытия соединения.
Как завершить все сеансы сразу перед обновлением конфигурации?
Правильная последовательность: включите блокировку работы пользователей (в типовой конфигурации — через «Администрирование» → «Обслуживание»), дождитесь штатного выхода пользователей, затем в консоли кластера удалите оставшиеся сеансы списком и установите монопольный режим в конфигураторе.
Опасно ли завершать сеансы в файловой базе через диспетчер задач?
Да, есть риск. Если процесс снимается в момент записи данных, файл базы может остаться в некорректном состоянии, и потребуется запуск утилиты тестирования и исправления (chdbfl или режим «Тестирование и исправление» в конфигураторе). Перед таким завершением убедитесь, что пользователь не проводит документы и не запускает обмены.
Можно ли настроить автоматическое завершение неактивных сеансов?
Да. В свойствах кластера или конкретной информационной базы в консоли администрирования задайте «Время засыпания пассивного сеанса» и «Интервал завершения спящих сеансов». После этого неактивные подключения будут сначала переводиться в спящий режим, а затем завершаться автоматически, освобождая лицензии.