К статье
Практический материал

Администрирование · 9 мин

Как закрыть сеансы пользователей 1С

Подробная инструкция: как завершить сеансы пользователей 1С через консоль кластера, конфигуратор, код и PowerShell. Отличия файловой и клиент-серверной базы.

Завершение сеансов пользователей — типовая задача администратора 1С. Она возникает перед установкой обновлений конфигурации, при регламентном обслуживании базы, когда сеанс «завис» и блокирует работу, или когда нужно срочно отключить конкретного сотрудника. Способ завершения зависит от режима работы базы: файловый или клиент-серверный вариант требуют разных инструментов.

Главный риск при принудительном завершении — потеря несохранённых данных пользователя и, в редких случаях, повреждение данных, если сеанс оборвался в момент записи транзакции. Поэтому корректная процедура всегда начинается с предупреждения пользователей и только потом переходит к принудительным мерам.

Ниже разобраны все рабочие способы: через консоль кластера серверов 1С, через конфигуратор, программно из кода, через блокировку базы и через системные средства Windows. Для каждого способа указаны условия применения и ограничения.

Определите режим работы базы: файловый или клиент-серверный

От режима работы зависит весь инструментарий. В файловом варианте нет сервера 1С — каждый пользователь напрямую открывает файл базы, и централизованно управлять сеансами нельзя. В клиент-серверном варианте все соединения проходят через агент сервера 1С, и администратор видит и завершает их из одной консоли.

Узнать режим можно в конфигураторе: меню «Администрирование» → «Параметры информационной базы» покажет путь к базе. Если путь выглядит как сетевая папка (\\server\base) — это файловый режим. Если указан сервер и имя базы на сервере — клиент-серверный. Также режим виден в строке подключения в списке информационных баз при запуске 1С.

Завершение сеансов через консоль кластера серверов 1С

Основной инструмент для клиент-серверных баз — оснастка «Администрирование серверов 1С:Предприятия». Она устанавливается вместе с сервером 1С и доступна на машине администратора. Откройте её, разверните нужный кластер, выберите рабочий сервер и перейдите в раздел «Сеансы».

В списке сеансов видны пользователь, приложение (тонкий клиент, конфигуратор, фоновое задание), время начала сеанса и активность. Чтобы завершить конкретный сеанс, выделите его и нажмите «Удалить» в контекстном меню. Чтобы завершить все сеансы базы, выделите нужные строки с зажатой Ctrl или Shift — массового удаления «одной кнопкой» в стандартной консоли нет, поэтому выделяйте весь список.

Обратите внимание на сеансы фоновых заданий: их завершение остановит выполнение регламентных операций. Если фоновое задание выполняет длительную обработку данных, прерывание может оставить данные в промежуточном состоянии — проверяйте, что именно выполняет задание, прежде чем удалять его сеанс.

Закрытие сеансов через консоль кластера
  1. 1
    Откройте оснастку «Администрирование серверов 1С:Предприятия»
  2. 2
    Разверните кластер → рабочий сервер → раздел «Сеансы»
  3. 3
    Установите в свойствах базы блокировку сеансов, чтобы пользователи не подключились заново
  4. 4
    Выделите нужные сеансы (Ctrl+A для всех) и выберите «Удалить»
  5. 5
    Обновите список и убедитесь, что сеансы исчезли и новые не появляются

Блокировка сеансов перед массовым завершением

Если просто удалить сеансы, пользователи переподключатся через несколько секунд — особенно те, у кого 1С запускается автоматически. Поэтому перед массовым завершением установите блокировку соединений с информационной базой. В консоли кластера это делается в свойствах базы: флаг «Блокировка регламентных заданий включена» и параметры блокировки сеансов с датой начала и кодом разрешения.

Код разрешения позволяет администратору самому войти в базу во время блокировки: его указывают в параметре запуска /UC<код>. Сообщение блокировки увидят пользователи при попытке входа — напишите в нём понятную причину и ориентировочное время окончания работ.

В типовых конфигурациях (БП, ЗУП, УТ) блокировку можно установить прямо из пользовательского режима: раздел «Администрирование» → «Обслуживание» → «Блокировка работы пользователей». Этот механизм из БСП умеет не только блокировать вход, но и мягко завершать активные сеансы с задержкой, давая пользователям время сохранить данные.

Завершение работы в файловой базе

В файловом режиме централизованной консоли нет. Посмотреть активных пользователей можно в конфигураторе: «Администрирование» → «Активные пользователи». Однако эта форма только показывает список — завершить чужой сеанс из неё нельзя.

Практические варианты для файловой базы: попросить пользователей выйти (по почте, мессенджеру, звонку), либо завершить процессы 1cv8.exe на их компьютерах удалённо — через диспетчер задач по RDP, PowerShell или PsExec. Если файл базы лежит на сетевом ресурсе, можно закрыть открытые сессии к файлу через оснастку «Общие папки» → «Открытые файлы» на файловом сервере — это принудительно оборвёт доступ пользователей к файлу базы.

Для монопольного доступа при обновлении файловой базы достаточно, чтобы все пользователи вышли: конфигуратор сам сообщит о невозможности установить монопольный режим, если кто-то остался в базе. Это и есть контрольная точка — пока монопольный режим не установлен, кто-то ещё работает.

powershell
Get-Process -Name "1cv8*" -ComputerName USER-PC | Stop-Process -Force

Программное завершение сеансов из кода 1С

В клиент-серверном режиме сеансы можно завершать программно через COM-connector (V83.COMConnector) и объекты администрирования кластера. Скрипт подключается к агенту сервера, получает список сеансов базы и вызывает метод TerminateSession для каждого. Такой подход удобен для регламентных задач: например, ночное принудительное завершение всех сеансов перед резервным копированием.

Типовые конфигурации на БСП предоставляют готовую функциональность: процедура «СоединенияИБ» позволяет получать список соединений и завершать их. Кроме того, механизм «Завершение работы пользователей» из БСП умеет рассылать пользователям предупреждение и закрывать сеансы с таймаутом — это самый безопасный программный вариант.

При написании собственных скриптов учитывайте: для подключения к агенту сервера нужны права администратора кластера, а завершение сеансов фоновых заданий может оставить незавершённые транзакции. Всегда исключайте из массового завершения служебные сеансы, если они нужны для вашей же процедуры обслуживания.

Зависший сеанс в консоли часто выглядит как сеанс с нулевой активностью, который не исчезает после выхода пользователя. Такие «призраки» держат лицензии. Если сеанс не удаляется из консоли, помогает перезапуск службы агента сервера 1С — но это оборвёт все остальные сеансы, поэтому делайте перезапуск только вне рабочего времени.
ПЗ
Практическое замечание

Проверка результата и типичные ошибки

После завершения сеансов убедитесь в результате: обновите список сеансов в консоли кластера — он должен быть пуст или содержать только ваш сеанс и разрешённые служебные. Для файловой базы проверкой служит успешная установка монопольного режима в конфигураторе. Дополнительно проверьте, что новые сеансы не появляются: если появляются — блокировка не установлена или пользователи знают код разрешения.

Частые ошибки администраторов: завершение сеансов без блокировки (пользователи тут же возвращаются), удаление сеансов фоновых заданий во время обмена данными, забытая блокировка после окончания работ (пользователи не могут войти наутро) и завершение сеанса самого себя при массовом удалении. Ещё одна ошибка — попытка управлять сеансами файловой базы через несуществующую централизованную консоль вместо работы с процессами.

Типичные ошибки
01
Удаление сеансов без установки блокировки — пользователи переподключаются за секунды
02
Завершение фоновых заданий обмена данными — оборванная синхронизация и рассинхронизация узлов
03
Забытая блокировка после обновления — сотрудники не могут войти в базу
04
Выделение всех сеансов включая собственный сеанс администратора — обрыв собственной работы
05
Принудительное завершение без предупреждения — потеря несохранённых данных пользователей

FAQ: частые вопросы о завершении сеансов 1С

Можно ли завершить сеанс конкретного пользователя, не трогая остальных?

Да. В консоли кластера в разделе «Сеансы» найдите строку с нужным пользователем и удалите только её. Учтите, что у одного пользователя может быть несколько сеансов (разные клиенты, фоновые задания) — проверьте, все ли из них нужно завершить.

Почему сеанс появляется снова сразу после удаления?

У пользователя настроен автозапуск 1С или работает фоновое задание, которое пересоздаёт сеанс. Установите блокировку сеансов в свойствах базы, а для фоновых заданий включите блокировку регламентных заданий — тогда новые подключения будут отклоняться.

Как завершить сеансы, если нет доступа к серверу 1С?

В типовых конфигурациях используйте «Администрирование» → «Обслуживание» → «Блокировка работы пользователей» — механизм работает из пользовательского режима и не требует доступа к консоли кластера. Для файловой базы без доступа к серверу остаётся только связаться с пользователями и попросить выйти.

Что будет с несохранёнными данными пользователя при принудительном завершении?

Все несохранённые изменения (незаписанные документы, непроведённые операции) будут потеряны. Открытые, но не записанные формы не восстанавливаются. Поэтому перед массовым завершением отправьте пользователям предупреждение и дайте 5–10 минут на сохранение работы.

Как автоматически завершать сеансы по расписанию?

Настройте скрипт на PowerShell или через V83.COMConnector, который подключается к кластеру, устанавливает блокировку и завершает все сеансы, и запускайте его через планировщик задач Windows — например, перед ночным резервным копированием. Не забудьте в конце скрипта снять блокировку.

Итог

Что важно запомнить

В клиент-серверной базе сеансы завершаются через консоль кластера, в файловой — через выход пользователей или завершение процессов. Перед массовым закрытием всегда устанавливайте блокировку сеансов и предупреждайте пользователей. После завершения проверяйте результат списком сеансов или монопольным режимом и не забывайте снять блокировку по окончании работ.