Пользователь завис в базе 1С: как выбить его сеанс и убрать учётную запись
Содержание
Удалить активного пользователя в 1С — это два разных действия. Сначала завершают его сеанс: в клиент-серверной базе через консоль Администрирование серверов 1С Предприятия (база → Сеансы → Удалить) или через rac, в файловой — блокировкой входа с завершением работы. Потом, если сотрудник больше не нужен, убирают саму учётную запись в Администрирование → Настройки пользователей и прав → Пользователи.
Какой путь выбрать, зависит от задачи. Нужно на 10 минут выгнать всех ради обновления — подойдёт блокировка работы пользователей. Нужно выбить один повисший сеанс — консоль кластера. Сотрудник уволился — снимаем право входа, а запись в справочнике оставляем.
Как найти «лишний» сеанс и понять, чей он
Прежде чем что-то завершать, выясните, кто именно сидит в базе. Под одним логином могут работать несколько сеансов, а часть сеансов вообще не принадлежит людям.
Список активных пользователей в режиме 1С:Предприятие
В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) откройте Администрирование → Обслуживание и перейдите по ссылке «Активные пользователи». Там видно:
- 👤 имя пользователя;
- 💻 компьютер, с которого он зашёл;
- 🧩 приложение — тонкий клиент, веб-клиент, Конфигуратор, фоновое задание, COM-соединение;
- 🕐 время начала работы и номер сеанса.
В любой конфигурации тот же список есть в стандартных функциях: Главное меню → Все функции → Стандартные → Активные пользователи. Если пункта «Все функции» нет, включите его: Главное меню → Сервис → Параметры → флажок «Отображать команду “Все функции”».
Список в Конфигураторе
В Конфигураторе: Администрирование → Активные пользователи. Список только для просмотра, завершать сеансы отсюда нельзя.
Кого можно трогать, а кого нет
| Приложение в списке | Что это | Можно ли завершать |
|---|---|---|
| Тонкий / толстый клиент | живой человек | да, предупредив его |
| Веб-клиент | работа через браузер | да |
| Конфигуратор | разработчик или админ | только после разговора — потеряет несохранённые правки |
| Фоновое задание | регламентное или длительная операция | осторожно: может оборваться закрытие месяца, обмен, загрузка |
| COM-соединение | внешняя программа, обмен, сайт | уточните, что это за интеграция |
Номер сеанса из списка пригодится дальше. По нему в Журнале регистрации (отбор по сеансу) видно, что пользователь делал последние минуты: если идёт проведение пакета документов, лучше дождаться конца.
Блокировка входа: выводим всех из базы аккуратно
Когда нужно освободить базу для обновления или тестирования, не выбивайте сеансы по одному. Используйте штатную блокировку — она предупреждает людей и закрывает их клиенты сама.
Блокировка работы пользователей в БСП
- Откройте
Администрирование → Обслуживание→ ссылка «Блокировка работы пользователей». - Задайте время начала и окончания блокировки.
- Впишите сообщение — его увидят пользователи: например, «Обновление базы, вернёмся к 19:30».
- Укажите код разрешения — с ним сможете зайти вы сами.
- Нажмите «Установить блокировку».
Пользователи получат предупреждение и несколько минут на сохранение. Потом программа сама завершит их сеансы. Чтобы войти в заблокированную базу, добавьте к параметрам запуска ключ /UC с кодом разрешения:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /UC12345
В списке баз то же самое задаётся в свойствах базы, в поле дополнительных параметров запуска: /UC12345.
Монопольный режим — когда он нужен
Монопольный доступ к базе нужен не всегда. Он требуется для обновления структуры базы (Обновить конфигурацию базы данных в Конфигураторе), загрузки файла .dt, тестирования и исправления. Если в этот момент в базе остался хоть один чужой сеанс, платформа сообщит, что не может установить монопольный режим, и операцию придётся повторить.
Поэтому порядок такой: блокировка входа → проверка списка активных пользователей → операция в Конфигураторе → снятие блокировки.
Не забудьте снять блокировку после работы. Иначе утром никто, кроме вас, не войдёт в программу.
Принудительное завершение сеанса на сервере 1С
В клиент-серверной базе повисший сеанс выбивают через консоль кластера. Здесь не нужно ждать реакции клиента: сеанс обрывается на сервере.
Всё, что пользователь не успел записать, пропадёт. Предупредите его, если он на связи.
Через консоль администрирования
- Запустите
Администрирование серверов 1С Предприятияна сервере или на компьютере администратора. - Раскройте
Центральные серверы 1С:Предприятия→ ваш сервер →Кластеры→ кластер. - Откройте
Информационные базы→ нужная база →Сеансы. - Найдите строку по имени пользователя, компьютеру и времени начала.
- Правой кнопкой →
Удалить. Подтвердите.
Сеанс исчезнет из списка, клиентская лицензия освободится. Если у кластера заданы администраторы, консоль попросит логин и пароль администратора кластера.
Не открывается консоль, оснастка ругается на класс или «не может создать компонент»? Обычно оснастка не зарегистрирована для текущей версии платформы. Зарегистрируйте её от имени администратора: regsvr32 "C:\Program Files\1cv8\8.3.xx.xxxx\bin\radmin.dll" (вместо xx.xxxx — ваш номер версии). Версия radmin.dll должна совпадать с версией сервера.
Через утилиту rac
Если консоль недоступна или сервер на Linux, пользуйтесь rac. Ей нужен запущенный сервер администрирования ras (по умолчанию порт 1545):
cd "C:\Program Files\1cv8\8.3.xx.xxxx\bin"
ras cluster --daemon
rac localhost:1545 cluster list
rac localhost:1545 session list --cluster=<uuid-кластера>
rac localhost:1545 session terminate --cluster=<uuid-кластера> --session=<uuid-сеанса>
cluster list выдаёт идентификатор кластера. session list показывает сеансы с полями user-name, host, app-id, started-at — по ним ищите нужный. Если у кластера есть администратор, добавьте --cluster-user=<имя> --cluster-pwd=<пароль>. Остальные параметры смотрите в справке rac help session.
Если сеанс «воскресает» или не удаляется
- 🔁 Пользователь сразу заходит снова — сначала включите блокировку, потом удаляйте сеанс.
- ⏳ Сеанс висит после удаления — его держит рабочий процесс
rphost, который занят долгим запросом. Подождите пару минут. - 🛑 Крайняя мера — перезапуск службы «Агент сервера 1С:Предприятия 8.3». Это обрывает сеансы ВСЕХ пользователей во всех базах кластера. Делайте только вечером или после общего предупреждения.
Удаление пользователя из списка пользователей базы
Завершённый сеанс — это ещё не удалённый пользователь. Завтра он снова войдёт. Если доступ нужно закрыть насовсем, работайте с учётной записью.
Почему лучше «запретить», а не «удалить»
На пользователя ссылаются документы: поле ответственного, автор, история изменений, записи журнала регистрации. Физически удалить такой элемент справочника не получится — программа найдёт ссылки. Да и не нужно: в отчётах за прошлые периоды фамилия должна остаться.
Правильный порядок в конфигурации на БСП:
- Завершите активный сеанс сотрудника (см. разделы выше). Уже открытый сеанс продолжит работать до выхода, даже если права отобрать.
- Откройте
Администрирование → Настройки пользователей и прав → Пользователи. - Откройте карточку сотрудника.
- Снимите флажок «Вход в программу разрешён» и запишите. При необходимости отметьте «Недействителен» — пользователь пропадёт из списков выбора.
- Если в базе есть пометка на удаление и удаление помеченных объектов, можно пометить карточку на удаление. Но при наличии ссылок она всё равно останется.
Почему не стоит удалять пользователя в Конфигураторе
В Конфигураторе есть свой список: Администрирование → Пользователи. Там удаляется только учётная запись платформы. Элемент справочника «Пользователи» в программе при этом остаётся и теряет связь с учётной записью. Потом это всплывает ошибками в настройках прав и в отчётах по пользователям.
Удалять через Конфигуратор оправданно только в базе без БСП (самописной или старой) — там другого списка нет.
| Действие | Где | Что будет с документами | Когда выбирать |
|---|---|---|---|
| Снять «Вход в программу разрешён» | карточка пользователя | всё сохраняется | увольнение, долгий отпуск |
| Пометить «Недействителен» | карточка пользователя | всё сохраняется, нет в списках выбора | сотрудник больше не вернётся |
| Удалить в Конфигураторе | Администрирование → Пользователи | справочник остаётся без связи | только базы без БСП |
Файловая и клиент-серверная база: в чём разница
Самое частое недоразумение: в файловой базе нет консоли кластера и нет команды «завершить чужой сеанс». Всё держится на том, что клиент сам читает признак блокировки и закрывается.
| Файловая | Клиент-серверная | |
|---|---|---|
| Увидеть активных | Активные пользователи | Активные пользователи, консоль, rac |
| Выбить один сеанс | нет штатного способа | Сеансы → Удалить |
| Выгнать всех | блокировка работы пользователей | блокировка или блокировка начала сеансов в консоли |
| Если клиент завис | закрыть файл базы на сервере | перезапуск рабочего процесса |
Повисший сеанс в файловой базе
Типичный случай: компьютер бухгалтера выключили по питанию, а в списке активных пользователей он висит. Монопольный режим не ставится.
- Убедитесь, что на том компьютере 1С действительно закрыта. Если открыта — закройте её там или через удалённый доступ.
- Если машина недоступна, а база лежит в общей папке Windows: на сервере откройте
compmgmt.msc→Общие папки→Открытые файлы. - Найдите файл
1Cv8.1CD, открытый с этого компьютера, и закройте его.
Закрытие открытого файла обрывает соединение с базой без сохранения. Если файл держат несколько пользователей, закрывайте только строку нужного компьютера, а лучше — когда в базе больше никто не работает. Не удаляйте вручную служебные файлы из каталога базы, пока к ней кто-то подключён.
Блокировка начала сеансов в консоли кластера
Для клиент-серверной базы есть аналог блокировки БСП на уровне сервера. В консоли откройте свойства информационной базы:
- ✅ флажок «Блокировка начала сеансов включена»;
- 🕐 поля начала и окончания блокировки;
- 💬 сообщение для пользователей;
- 🔑 код разрешения — тот же, что передаётся через
/UC.
Там же есть флажок блокировки регламентных заданий. Включайте его перед обновлением, иначе фоновое задание займёт базу в самый неудобный момент.
Как не тратить время на зависшие сеансы
Ручное выбивание пользователей — признак того, что работы с базой не запланированы. Несколько привычек снимают проблему.
Блокировка по расписанию
Обновления и тестирование назначайте на одно и то же время, например на вечер пятницы. Блокировку в БСП можно выставить заранее: укажите будущее время начала. Пользователи увидят предупреждение и успеют закончить.
Скрипт для сервера
Если базу регулярно обслуживают ночью, вынесите завершение сеансов в скрипт планировщика заданий. Скелет на rac:
@echo off
set RAC="C:\Program Files\1cv8\8.3.xx.xxxx\bin\rac.exe"
set CL=<uuid-кластера>
set IB=<uuid-базы>
rem список сеансов одной базы
%RAC% localhost:1545 session list --cluster=%CL% --infobase=%IB% > sessions.txt
Дальше из файла выбирают строки session : <uuid> и для каждого вызывают session terminate. Перед запуском в рабочей базе прогоните скрипт на копии и проверьте вывод session list глазами. Ночной скрипт не должен рвать фоновые задания закрытия месяца и обменов — согласуйте расписание с бухгалтерией.
Профилактика «зависаний»
- 🖥️ Просите сотрудников закрывать 1С, а не гасить компьютер кнопкой.
- 🌐 Для удалённых сотрудников надёжнее веб-клиент или терминальный сервер, чем файловая база по VPN: при обрыве связи файловая база страдает сильнее всего.
- 📏 Растёт число пользователей и обрывов — пора переводить файловую базу на клиент-серверный вариант. Там есть консоль,
racи нормальное завершение сеансов. - 🔑 Следите за лицензиями: каждый зависший сеанс тонкого клиента держит лицензию, и новый сотрудник не сможет войти.