Принудительное завершение сеансов в 1С 8.3: консоль, rac и блокировка входа
Содержание
Отключить активного пользователя в 1С 8.3 быстрее всего через консоль кластера серверов: Информационные базы → нужная база → Сеансы, правый клик по строке пользователя → Удалить. Если в конфигурации есть подсистема БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11), то же самое делает форма «Активные пользователи» с командой завершения сеанса, а в файловой базе — блокировка работы пользователей.
Способ зависит от двух вещей: где лежит база (сервер 1С или файл 1Cv8.1CD) и что нужно — выкинуть одного человека, освободить базу для обновления или закрыть доступ уволенному сотруднику навсегда. Для первого хватит минуты в консоли, для второго нужна блокировка входа, для третьего — запрет входа в карточке пользователя.
Что проверить перед принудительным отключением
Принудительное завершение сеанса обрывает работу человека без предупреждения. Документ, который он не записал, пропадёт. Если в этот момент шло проведение или групповая обработка, транзакция откатится целиком.
Перед тем как жать «Удалить», пройдите короткий список:
- 📞 Предупредите пользователя. Звонок или сообщение «выйдите из 1С через 5 минут» спасает несохранённую работу и снимает лишние претензии.
- 🔍 Посмотрите, чем занят сеанс. В консоли кластера у сеанса видно время начала, приложение и объём захваченной памяти. Если сеанс долго держит транзакцию, после удаления база какое-то время будет откатывать изменения.
- 🤖 Отличите человека от фонового задания. Сеансы с приложением «Фоновое задание» или «COM-соединение» — это регламентные задания и обмены. Удалите их — через минуту они запустятся снова.
- 🔑 Проверьте права. Для удаления сеансов на сервере нужен логин и пароль администратора кластера (если он задан) и администратора информационной базы.
Если вы готовите базу к обновлению конфигурации или загрузке .dt, отключать людей по одному бессмысленно — они зайдут снова. Сначала включите блокировку новых сеансов, а потом завершайте текущие.
Как отключить пользователя через консоль администрирования серверов 1С
Консоль кластера — основной инструмент для серверной базы. Она устанавливается вместе с платформой (компонент «Администрирование сервера 1С:Предприятия») и работает через агент сервера на порту 1540.
Пошагово
- Откройте
Пуск → 1С Предприятие 8 → Администрирование серверов 1С Предприятия. - Если сервера в дереве нет, правый клик по
Central 1C:Enterprise 8.3 servers→Создать → Центральный сервер 1С:Предприятия 8.3, укажите имя компьютера и порт 1540. - Раскройте
Кластеры → Локальный кластер → Информационные базы → <имя базы>. Консоль запросит логин и пароль администратора этой базы. - Выберите узел
Сеансы. Справа появится список: пользователь, компьютер, приложение, время начала. - Найдите нужную строку (колонки сортируются кликом по заголовку), правый клик →
Удалить.
Пользователь увидит сообщение Сеанс работы завершен администратором и предложение перезапустить программу.
💡 Чтобы выкинуть всех сразу, выделите строки с Shift или Ctrl и удалите пачкой. Сеансы конфигуратора (Конфигуратор в колонке «Приложение») тоже удаляются, но предупредите разработчика — несохранённые правки конфигурации пропадут.
Сеансы и соединения
В узле базы есть ещё Соединения. Соединение — это канал от клиента к рабочему процессу, сеанс — логическая работа пользователя. Обычно достаточно удалить сеанс: связанные соединения закроются сами. Разрывать соединения вручную стоит, только если сеанс уже удалён, а соединение висит.
Если консоль не запускается
Частая ситуация после обновления платформы: оснастка открывается с ошибкой или пустая. Причина — зарегистрирована библиотека radmin.dll от старой версии. Перерегистрируйте её от имени администратора, подставив свой номер версии:
regsvr32 "C:\Program Files\1cv8\8.3.24.1586\bin\radmin.dll"
Версия radmin.dll должна совпадать с версией сервера 1С, иначе консоль не подключится к агенту.
Отключение пользователей в файловой базе 1С
В файловом варианте нет кластера и нет консоли. Каждый клиент сам открывает файл 1Cv8.1CD, поэтому «удалить сеанс» с сервера нельзя.
Сначала выясните, кто именно держит базу. Зайдите в 1С и откройте список активных пользователей (как это сделать, описано в разделе про форму «Активные пользователи»): там видно имя пользователя и компьютер. Если в базу зайти не получается, на файловом сервере имя компьютера покажет список открытых файлов.
Дальше есть три рабочих пути.
1. Блокировка работы пользователей средствами конфигурации
В типовых конфигурациях на БСП откройте раздел Администрирование → Обслуживание и найдите команду «Блокировка работы пользователей». Включите блокировку, задайте время начала и текст сообщения.
Каждый клиент периодически проверяет флаг блокировки. Пользователи получают предупреждение, а после наступления времени блокировки программа сама завершает их сеансы. Задержка — до нескольких минут, мгновенно это не происходит.
2. Закрыть процесс на терминальном сервере
Если пользователи работают через RDP на одном сервере, найдите процесс 1cv8.exe или 1cv8c.exe нужного пользователя в диспетчере задач (вкладка «Пользователи») и завершите его. Это грубый, но надёжный способ.
3. Закрыть открытый файл на файловом сервере
На Windows-сервере, где лежит база: Управление компьютером → Общие папки → Открытые файлы. Найдите 1Cv8.1CD, правый клик → «Закрыть открытый файл». Так отключается конкретный компьютер, держащий базу.
Закрытие файла посреди записи может повредить базу. Делайте это только при наличии свежей резервной копии и после попытки отключить пользователя штатно.
Если база опубликована на веб-сервере в файловом режиме, сеансы держит сам веб-сервер. Перезапуск пула приложений IIS или службы Apache отключит всех веб-пользователей разом.
Завершение сеансов из 1С и через командную строку
Форма «Активные пользователи»
В конфигурациях на БСП есть форма «Активные пользователи». Её проще всего открыть через Все функции → Обработки → Активные пользователи (если пункта «Все функции» нет, включите его: Сервис и настройки → Параметры → Отображать команду "Все функции").
Форма показывает пользователя, компьютер, приложение и время начала сеанса. Для серверной базы в ней доступна команда завершения выбранного сеанса — при первом использовании программа спросит параметры администрирования кластера. В файловой базе форма только показывает список, отключать через неё нельзя.
💡 Стандартная платформенная функция «Активные пользователи» (раздел «Стандартные» в «Все функции») тоже показывает список, но без кнопки завершения — это просто монитор.
Утилита rac
Для автоматизации на сервере используется связка ras (сервер администрирования) и rac (консольный клиент). Сначала запустите ras, он по умолчанию слушает порт 1545:
ras cluster --daemon
Дальше получите идентификаторы кластера и базы, список сеансов и завершите нужный:
rac cluster list
rac infobase summary list --cluster=<uuid-кластера>
rac session list --cluster=<uuid-кластера> --infobase=<uuid-базы>
rac session terminate --cluster=<uuid-кластера> --session=<uuid-сеанса>
Если у кластера задан администратор, добавьте --cluster-user и --cluster-pwd. Полный список параметров — rac help session.
Этот подход удобен для ночных скриптов: bat-файл в планировщике задач завершает все сеансы перед резервным копированием или обновлением. Схема скрипта такая:
- Включить блокировку начала сеансов и регламентных заданий (
rac infobase update, см. следующий раздел). - Получить список сеансов базы (
rac session list) и выбрать из вывода строкиsession. - Для каждого идентификатора вызвать
rac session terminate. - Выполнить обслуживание: выгрузку, обновление, тестирование.
- Снять блокировку тем же
rac infobase updateс--sessions-deny=off.
💡 Запускайте скрипт от учётной записи, которой разрешено подключаться к ras, и проверяйте результат первых прогонов вручную в консоли: если в базе остался хотя бы один сеанс, монопольный режим для обновления не установится.
Параметр /C для типовых конфигураций
Конфигурации на БСП понимают параметр запуска ЗавершитьРаботуПользователей. Он включает блокировку и выгоняет всех, кто сейчас в базе:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S"srv1c\buh" /N"Администратор" /P"пароль" /C"ЗавершитьРаботуПользователей" /UC"12345"
Код /UC — это код разрешения: с ним администратор сможет зайти в заблокированную базу. Снять блокировку — тот же запуск с параметром /C"РазрешитьРаботуПользователей" и тем же /UC.
Блокировка новых входов на время регламентных работ
Отключить людей — полдела. Если не закрыть вход, через минуту кто-то откроет базу снова, и обновление сорвётся.
Блокировка в свойствах базы на сервере
В консоли кластера: правый клик по базе → Свойства. Там есть:
| Поле | Что задаёт |
|---|---|
| Блокировка начала сеансов включена | Запрещает новые входы |
| Начало / Конец | Интервал блокировки; пустой конец — до ручного снятия |
| Сообщение | Текст, который увидит пользователь при попытке войти |
| Код разрешения | Пароль для входа в заблокированную базу через /UC |
| Блокировка регламентных заданий включена | Останавливает фоновые задания |
Пользователь при входе получит ошибку Начало сеанса с информационной базой запрещено и ваше сообщение. Уже открытые сеансы эта галочка не трогает — их нужно удалить вручную или через rac.
То же самое делается командой rac infobase update с параметрами --sessions-deny=on, --denied-message, --permission-code и --scheduled-jobs-deny=on. Нужны также --infobase-user и --infobase-pwd.
Блокировка из конфигурации
Форма «Блокировка работы пользователей» на БСП работает и в файловой, и в серверной базе. Для серверной она выставляет ту же блокировку в кластере, а заодно предупреждает пользователей заранее и завершает их сеансы в назначенное время.
Как отключить уволенного сотрудника и сохранить его данные
Когда человек уходит, задача уже не «завершить сеанс», а закрыть ему вход навсегда. Удалять пользователя нельзя: он указан как «Ответственный» и автор в тысячах документов, а в истории изменений — как исполнитель.
Правильный порядок в конфигурациях на БСП:
- Откройте
Администрирование → Настройки пользователей и прав → Пользователи. - Откройте карточку сотрудника и снимите флажок «Вход в программу разрешен». Запишите.
- Если нужно убрать его из списков выбора, установите в карточке признак «Недействителен».
- Завершите его текущий сеанс одним из способов выше — запрет входа не выкидывает того, кто уже работает.
- Смените пароли общих учётных записей, если сотрудник их знал.
После этого все документы, настройки отчётов и история остаются на месте, а войти под этим именем нельзя. Если человек вернётся, достаточно снова поставить флажок.
В ЗУП и других конфигурациях, где пользователь связан с физическим лицом, кадровое увольнение и отключение учётной записи — разные действия. Документ «Увольнение» не блокирует вход в программу.