Администрирование · 8 мин
Как в 1С завершить сеанс другого пользователя
Как завершить сеанс пользователя в 1С через консоль кластера, конфигуратор и программно. Пошаговые инструкции для файловых и клиент-серверных баз, ограничения и риски.
Завершить чужой сеанс в 1С администратору приходится регулярно: пользователь ушёл, не закрыв программу, сеанс «завис» и блокирует регламентные задания или обновление, либо нужно срочно выгнать всех из базы для монопольных работ. Способ зависит от того, как работает база — в файловом или клиент-серверном режиме, — и от того, есть ли у вас права администратора.
В клиент-серверном варианте сеанс завершается через консоль кластера серверов 1С, через «Администрирование серверов 1С» (оснастку MMC) или программно через COM-соединение. В файловой базе прямого механизма «убить чужой сеанс» нет — доступны только обходные пути: удаление сеанса из списка активных пользователей срабатывает не всегда, поэтому чаще применяют завершение процесса на компьютере пользователя или перезапуск доступа к файлу базы.
Важно понимать риск: принудительное завершение сеанса равнозначно аварийному выключению программы у пользователя. Несохранённые данные в открытых документах будут потеряны, а обрыв сеанса в момент записи транзакции в редких случаях приводит к ошибкам, требующим тестирования и исправления базы. Поэтому перед завершением стоит убедиться, что пользователь не проводит критичную операцию.
Как определить, кто и как подключён к базе
Прежде чем завершать сеанс, нужно понять, какой именно сеанс мешает. В клиент-серверном режиме откройте консоль администрирования кластера и разверните дерево: кластер → информационная база → «Сеансы». Здесь видно имя пользователя, компьютер, время начала сеанса, приложение (тонкий клиент, веб-клиент, фоновое задание, COM-соединение) и активность.
Обратите внимание на колонку «Приложение»: не всё, что выглядит как пользователь, является пользователем. Фоновые задания, сеансы веб-сервисов и соединения через внешние компоненты завершаются так же, но их обрыв может сорвать обмены данными и регламентные операции. Сначала проверьте, не выполняет ли сеанс длительную операцию — в консоли видно время последнего вызова и объём прочитанных данных.
Строка подключения в списке баз: File=... — файловая, Srvr=... — серверная
Определяет, живой это пользователь или регламентное задание
Признак «зависшего» или брошенного сеанса
Мешает другим пользователям и обновлению конфигурации
Завершение сеанса через консоль кластера серверов
Это основной и самый надёжный способ для клиент-серверных баз. Откройте оснастку «Администрирование серверов 1С:Предприятия» на сервере или программу администрирования кластера (онa доступна и с рабочего места администратора, если установлены компоненты сервера). Найдите нужный кластер, раскройте информационную базу и перейдите в список «Сеансы».
Выделите сеанс пользователя и выберите в контекстном меню «Удалить». Сеанс завершается немедленно: у пользователя программа закроется с сообщением о разрыве соединения с сервером. Если нужно выгнать всех, выделите все сеансы (Ctrl+A) и удалите их списком — так делают перед обновлением конфигурации базы данных.
- 1Откройте консоль администрирования кластера серверов 1С
- 2Раскройте кластер → Информационные базы → нужная база → Сеансы
- 3Найдите сеанс по имени пользователя или компьютеру
- 4Проверьте колонки «Приложение» и «Последний вызов» — убедитесь, что это не активная операция
- 5Контекстное меню сеанса → Удалить
- 6Проверьте, что сеанс исчез из списка, а у пользователя программа закрылась
Дополнительно в свойствах информационной базы в консоли можно установить «Блокировку начала сеансов» — это запретит новые подключения, пока вы выполняете регламентные работы. Комбинация «блокировка + удаление сеансов» — стандартный сценарий подготовки к обновлению.
Завершение сеанса в файловой базе
В файловом режиме нет сервера, который управляет сеансами, поэтому принудительно «убить» чужой сеанс штатно нельзя. Если конфигурация построена на Библиотеке стандартных подсистем (почти все типовые решения), откройте раздел «Администрирование» → «Обслуживание» → «Активные пользователи». В некоторых конфигурациях там доступна команда завершения сеанса, но в файловом режиме она срабатывает только при активности пользователя и часто ограничивается отправкой сообщения.
Рабочие варианты для файловой базы: попросить пользователя закрыть программу; удалённо завершить процесс 1cv8.exe на его компьютере через диспетчер задач (если у вас есть доступ); отключить общий сетевой доступ к папке базы на время. Последний способ грубый — у всех пользователей программа завершится с ошибкой, но для экстренной выгрузки всех из базы он эффективен.
Завершение сеанса программно и через конфигуратор
Для автоматизации — например, выгнать всех перед ночным обновлением — используют COM-объект V83.COMConnector и интерфейс администрирования кластера. Скрипт подключается к агенту сервера, получает список сеансов базы и вызывает метод завершения для каждого. Такой подход требует учётной записи администратора кластера и аккуратной обработки ошибок.
В типовых конфигурациях также есть механизм «Блокировка работы пользователей» (БСП): администратор устанавливает период блокировки, и активным пользователям программа сама предлагает завершить работу, а новые сеансы не создаются. Это самый безопасный способ массового завершения — пользователи успевают сохранить данные.
Сравнение способов завершения сеанса
Быстро и надёжно, но только для клиент-серверных баз и нужны права администратора кластера
Безопасно для данных, пользователи завершают работу сами; требует времени и не действует на зависшие сеансы
Работает для файловых баз; нужен доступ к компьютеру, данные пользователя не сохраняются
Подходит для регулярной автоматизации; требует навыков разработки и прав администратора
Как проверить результат и типичные ошибки
После удаления сеанса обновите список сеансов в консоли — запись должна исчезнуть. Если сеанс появился снова через несколько секунд, у пользователя, скорее всего, настроено автоподключение (например, клиент перезапускается ярлыком в автозагрузке или работает регламентное задание). В этом случае сначала включите блокировку начала сеансов, а потом удаляйте активные.
Что важно запомнить
В клиент-серверной базе завершайте сеансы через консоль кластера, предварительно проверив тип сеанса. Перед массовым отключением включайте блокировку начала сеансов. В файловой базе используйте блокировку работы пользователей или завершайте процесс на стороне клиента. Всегда учитывайте риск потери несохранённых данных.
Частые вопросы
Можно ли завершить сеанс пользователя, не имея прав администратора кластера?
Нет. Удаление сеансов в консоли кластера требует аутентификации администратора кластера или информационной базы. Обычный пользователь может завершить только свой собственный сеанс, выйдя из программы.
Что увидит пользователь, чей сеанс завершили?
Программа закроется с сообщением об ошибке соединения с сервером или о разрыве соединения администратором. Несохранённые данные в открытых формах будут потеряны, поэтому по возможности предупреждайте пользователей заранее.
Почему сеанс «висит» в списке, хотя пользователь давно выключил компьютер?
Так называемые «спящие» сеансы остаются, пока не истечёт тайм-аут, заданный в свойствах кластера. Их можно удалить вручную через консоль — это безопасно, так как реальной активности в таком сеансе нет.
Как выгнать всех пользователей перед обновлением конфигурации?
Установите в свойствах базы блокировку начала сеансов с нужного времени, затем удалите оставшиеся сеансы в консоли кластера. В типовых конфигурациях удобнее использовать штатную функцию «Блокировка работы пользователей» — она делает то же самое мягко.
Опасно ли завершать сеанс во время проведения документа?
Да. Если обрыв произойдёт в середине транзакции, в редких случаях возможны ошибки целостности данных. После такого инцидента рекомендуется запустить тестирование и исправление информационной базы, предварительно сделав резервную копию.
Можно ли завершить только фоновые задания, не трогая пользователей?
Да. В списке сеансов консоли кластера отфильтруйте записи по типу приложения «BackgroundJob» или «Фоновое задание» и удалите именно их. Учтите, что прерванное регламентное задание может запуститься повторно по расписанию.