Администрирование · 10 мин
Как в 1С отключить пользователя от базы
Как отключить пользователя от базы 1С: через консоль кластера, консоль СУБД, параметр «Блокировка сеансов» и программно. Пошаговые инструкции и частые ошибки.
«Зависший» сеанс в 1С блокирует регистры и мешает коллегам работать, а обновление конфигурации вообще невозможно, пока хоть один пользователь подключен к базе. Отключить пользователя можно через консоль кластера серверов 1С, администрирование в конфигураторе или функциональность БСП, но выбор способа зависит от режима работы базы — файлового или клиент-серверного — и от наличия у вас прав администратора.
В клиент-серверном варианте основной инструмент — консоль кластера серверов 1С, где можно завершить сеанс конкретного пользователя или всех сразу. В файловом варианте централизованного «выкидывания» нет, и приходится использовать блокировку сеансов, обращение к самому пользователю либо завершение процесса на его компьютере. Ниже разобраны все рабочие сценарии с условиями и ограничениями.
Важно понимать разницу между «мягким» и «жёстким» отключением. Мягкое завершение даёт пользователю время сохранить данные и корректно закрыть программу. Жёсткое (удаление сеанса в консоли кластера или убийство процесса) прерывает работу мгновенно: несохранённые документы и введённые данные будут потеряны, а в редких случаях возможны «оборванные» транзакции.
Как определить, какой у вас режим работы базы
Прежде чем выбирать способ отключения, уточните, в каком режиме работает информационная база. Откройте список баз в окне запуска 1С, выделите нужную базу и посмотрите строку подключения: если путь выглядит как сетевая папка (\\server\base или диск), это файловый режим. Если указан сервер и имя базы на сервере — клиент-серверный.
Также режим виден в конфигураторе: меню «Администрирование» → «Свойства информационной базы». В файловом режиме одновременная работа идёт через общий файловый доступ, и сервер 1С не участвует, поэтому администратор не имеет централизованного управления сеансами. В клиент-серверном режиме все соединения проходят через кластер серверов, и именно он позволяет управлять сеансами.
Используйте консоль кластера для завершения сеансов
Централизованного отключения нет, действуйте через блокировку или на стороне пользователя
Завершите сеанс в консоли кластера или дождитесь тайм-аута
Отключение пользователя через консоль кластера серверов
Это основной и самый надёжный способ для клиент-серверных баз. Откройте «Администрирование серверов 1С:Предприятия» (консоль кластера) на сервере или с рабочего места администратора, где установлена компонента администрирования. Раскройте дерево: кластер → «Информационные базы» → нужная база → «Сеансы».
В списке сеансов видны имена пользователей, компьютеры, время начала сеанса и режим (тонкий клиент, толстый клиент, фоновое задание). Найдите нужного пользователя, выделите его сеанс и нажмите «Удалить» (или Delete). Сеанс будет принудительно завершён, а клиентское приложение пользователя получит сообщение о разрыве соединения.
Если нужно отключить всех сразу — например, перед обновлением — выделите все сеансы (Ctrl+A) и удалите их. Но правильнее сначала установить блокировку сеансов, чтобы пользователи не подключались заново, пока вы работаете с базой.
- 1Откройте консоль «Администрирование серверов 1С:Предприятия»
- 2Разверните кластер и найдите нужную информационную базу
- 3Перейдите в раздел «Сеансы» и найдите пользователя по имени или компьютеру
- 4Выделите сеанс и нажмите «Удалить»
- 5Проверьте, что сеанс исчез из списка, а соединение в разделе «Соединения» тоже закрылось
Что делать с «спящими» и зависшими сеансами
Нередко пользователь уже закрыл программу или его компьютер завис, но сеанс в кластере продолжает числиться. Такие сеансы могут удерживать лицензии и блокировки. Их можно смело удалять тем же способом — через список сеансов. Чтобы проблема не повторялась, настройте в свойствах кластера тайм-ауты завершения неактивных сеансов.
Блокировка сеансов: как не пустить пользователей обратно
Удаление сеанса решает задачу на момент времени, но пользователь может сразу подключиться снова. Для регламентных работ используйте блокировку сеансов. В консоли кластера откройте свойства информационной базы и установите флаг «Блокировка регламентных заданий включена» и параметр «Блокировка начала сеансов включена», указав время начала и окончания блокировки.
Обратите внимание на поле «Код разрешения». Если задать код, пользователи, знающие его, смогут войти во время блокировки, запустив 1С с параметром /UC<код>. Это удобно, чтобы администратор или бухгалтер могли работать в базе, пока остальные отключены. Также заполните сообщение блокировки — его увидят пользователи при попытке входа.
В типовых конфигурациях (Бухгалтерия, ЗУП, Управление торговлей) есть штатный механизм: раздел «Администрирование» → «Обслуживание» → «Блокировка работы пользователей». Он устанавливает ту же блокировку из интерфейса программы и позволяет завершать активные сеансы по расписанию.
Отключение пользователя в файловой базе
В файловом режиме консоли кластера нет, и отключить чужой сеанс централизованно нельзя. Работают три подхода. Первый — попросить пользователя выйти и контролировать это через список активных пользователей: в конфигураторе «Администрирование» → «Активные пользователи», а в режиме предприятия многих типовых конфигураций — «Администрирование» → «Активные пользователи» (или «Работающие в программе»).
Второй подход — завершить процесс 1cv8.exe на компьютере пользователя через диспетчер задач (локально или удалённо, если у вас есть права администратора домена). Это грубый метод: данные, которые пользователь не сохранил, пропадут, а при записи в момент обрыва есть риск повреждения файла базы.
Третий подход — программный. В типовых конфигурациях работает механизм «Завершение работы пользователей» из библиотеки стандартных подсистем: администратор устанавливает блокировку, а у активных пользователей программа через заданный интервал сама предлагает завершить работу. Это самый безопасный вариант для файловых баз.
Сравнение способов отключения
Быстро и точечно, только для клиент-серверного режима; не мешает пользователю войти снова
Подходит для регламентных работ, не даёт подключаться новым пользователям; требует планирования времени
Единственный «жёсткий» вариант для файловой базы; риск потери данных и повреждения файла
Мягко, с предупреждением пользователя; работает не мгновенно и только в конфигурациях на БСП
Программное отключение сеансов
Для автоматизации — например, ночного отключения всех перед резервным копированием — используют COM-коннектор к агенту сервера (V83.COMConnector) или утилиту администрирования кластера rac. Скрипт подключается к агенту сервера, получает список сеансов нужной базы и завершает их методом TerminateSession.
Через rac задача решается без программирования: команда session terminate с указанием кластера и идентификатора сеанса завершает конкретный сеанс, а список сеансов получают командой session list. Такие скрипты удобно ставить в планировщик заданий перед обновлением или выгрузкой.
rac session list --cluster=<ID_кластера> --infobase=<ID_базы>
rac session terminate --cluster=<ID_кластера> --session=<ID_сеанса>В файловом режиме программно отключить чужой сеанс нельзя в принципе — нет посредника, управляющего соединениями. Единственная программная опция — механизм завершения работы через код конфигурации, который срабатывает на стороне самого пользователя.
Проверка результата и типичные ошибки
После отключения убедитесь, что цель достигнута. В консоли кластера обновите список сеансов: нужный пользователь должен исчезнуть. Проверьте также раздел «Соединения» — иногда соединение остаётся после удаления сеанса и тоже удерживает ресурсы. В файловой базе проверку делают через список активных пользователей в конфигураторе.
Если отключение делалось ради монопольного режима или обновления, попробуйте войти в конфигуратор монопольно: успешный вход подтверждает, что активных сеансов не осталось. Если вход не удаётся, значит, какой-то сеанс или соединение ещё живо — вернитесь в консоль и найдите его.
Как проверить результат
Пользователь отсутствует в списке
Сеанс появился снова — пользователь переподключился, включите блокировку
Вход выполнен без ошибок
Ошибка «база занята» — остались активные сеансы или соединения
В списке только вы
Пользователь числится активным — попросите выйти или завершите процесс
FAQ: частые вопросы об отключении пользователей
Можно ли отключить пользователя, не теряя его несохранённые данные?
Полностью гарантировать сохранность при принудительном отключении нельзя. Мягкий вариант — попросить пользователя завершить работу самому или использовать штатное завершение работы в типовых конфигурациях, которое даёт время на сохранение. Удаление сеанса в консоли кластера всегда прерывает работу мгновенно.
Почему после удаления сеанса пользователь снова появляется в списке?
Клиентское приложение автоматически переподключается при разрыве соединения, если оно не закрыто. Чтобы этого не происходило, перед удалением сеансов установите блокировку начала сеансов в свойствах информационной базы.
Как отключить всех пользователей файловой базы перед обновлением?
Централизованной команды нет. Порядок такой: предупредите коллег, установите блокировку через типовой механизм конфигурации, проверьте список активных пользователей в конфигураторе, а оставшихся попросите выйти лично или завершите их процессы 1cv8.exe через диспетчер задач.
Что делать, если сеанс не удаляется в консоли кластера?
Проверьте, что у вашей учётной записи есть права администратора кластера. Если сеанс «завис» и не удаляется, попробуйте удалить связанное соединение в разделе «Соединения». В крайнем случае помогает перезапуск службы агента сервера 1С, но он отключит всех пользователей всех баз кластера.
Отличается ли отключение пользователя в веб-клиенте?
Нет. Сеанс веб-клиента отображается в консоли кластера так же, как сеанс тонкого клиента, и завершается тем же способом — удалением сеанса. У пользователя в браузере появится сообщение о разрыве соединения с сервером.
Как автоматически отключать простаивающие сеансы?
В свойствах кластера серверов настройте параметры завершения неактивных сеансов: интервал отключения спящих сеансов и время засыпания. Это избавит от ручной чистки «висящих» сеансов, которые занимают лицензии.
Что важно запомнить
В клиент-серверной 1С пользователя отключают удалением сеанса в консоли кластера, а для регламентных работ сначала включают блокировку сеансов. В файловой базе централизованного отключения нет — используйте штатное завершение работы, список активных пользователей и, в крайнем случае, завершение процесса. Любое принудительное отключение без предупреждения ведёт к потере несохранённых данных.