Завершение чужих сеансов и отключение лишних учётных записей в 1С 8.3

· 9 мин

Содержание

Чтобы выбросить пользователей из базы 1С, в типовой конфигурации откройте Администрирование → Обслуживание → Блокировка работы пользователей, задайте сообщение и код разрешения и нажмите «Установить блокировку». Программа предупредит всех, кто работает, и через несколько минут сама завершит их сеансы. В клиент-серверной базе то же самое делают из консоли администрирования кластера: Сеансы → правой кнопкой по сеансу → «Удалить».

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

Подготовка: кто сейчас в базе и почему это важно

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

Где увидеть список подключённых:

  • 🖥️ в режиме 1С:Предприятие — Администрирование → Обслуживание → Активные пользователи;
  • 🔧 в Конфигураторе — Администрирование → Активные пользователи;
  • 🗄️ в серверной базе — консоль администрирования серверов, ветка базы → Сеансы.

В списке видно имя пользователя, компьютер, приложение и время начала работы. Отдельно обратите внимание на колонку приложения:

  • 👤 «Тонкий клиент», «Толстый клиент», «Веб-клиент» — живые люди;
  • ⚙️ «Фоновое задание» — регламентные задания самой базы (загрузка курсов валют, обмены, полнотекстовый индекс);
  • 🔌 «COM-соединение» — внешние программы и обработки, которые подключаются к базе;
  • 🌐 «Web-сервис», «HTTP-сервис» — обращения через публикацию на веб-сервере.

Фоновые задания и COM-соединения после принудительного завершения часто тут же подключаются снова. Поэтому одного «выгнать» мало — нужно ещё запретить новые входы.

Перед началом напишите коллегам в рабочий чат: «В 18:00 база будет закрыта на 20 минут, сохраните документы». Это быстрее, чем потом восстанавливать потерянную работу.

Перед тем как выгнать пользователей
Выполнено: 0 / 5

Как выгнать всех из файловой базы

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

Способ 1. Блокировка работы пользователей

Это штатный механизм типовых конфигураций на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11 и другие).

  1. Откройте Администрирование → Обслуживание.
  2. Перейдите по ссылке «Блокировка работы пользователей».
  3. Заполните сообщение для пользователей, например «Обновление программы, вход откроется в 18:30».
  4. Укажите время начала и окончания блокировки.
  5. Задайте код разрешения — любую строку, например obnov. С этим кодом вы сами сможете войти в закрытую базу.
  6. Нажмите «Установить блокировку».

Пользователи увидят предупреждение и получат несколько минут на то, чтобы сохранить работу. Затем программа закроет их сеансы. Новые входы будут запрещены до снятия блокировки.

Чтобы войти в заблокированную базу, добавьте к параметрам запуска /UC и код разрешения:

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /UCobnov

Если в базе нет раздела «Обслуживание», а конфигурация нетиповая или старая, этот способ недоступен. Тогда переходите к способам 2 и 3.

Способ 2. Обзвон и закрытие сеансов на месте

Самый безопасный путь. По списку активных пользователей вы видите имена компьютеров. Попросите людей закрыть программу или сделайте это сами через удалённый доступ.

Способ 3. Принудительное закрытие файла на сервере

Когда база лежит в общей папке на сервере, Windows показывает, кто держит файл открытым:

  1. На сервере откройте Управление компьютером → Общие папки → Открытые файлы.
  2. Найдите строки с путём к 1Cv8.1CD.
  3. Правой кнопкой → «Закрыть открытый файл».

Если пользователи работают на терминальном сервере, их процессы 1cv8.exe или 1cv8c.exe видны в диспетчере задач на вкладке «Пользователи».

Принудительное закрытие файла или снятие процесса обрывает работу без сохранения. Несохранённые документы пропадут. Делайте это только после предупреждения и только когда другие способы не сработали.

Как отключить сеансы в клиент-серверной базе

Для базы на сервере 1С:Предприятия есть полноценный инструмент — консоль администрирования серверов. Она работает через агент сервера (порт 1540).

Шаг 1. Запретить новые подключения

  1. Откройте консоль, разверните Кластеры → ваш кластер → Информационные базы.
  2. Правой кнопкой по базе → «Свойства».
  3. Отметьте «Блокировка начала сеансов включена».
  4. Заполните сообщение, время начала и окончания блокировки и код разрешения.
  5. Если нужно остановить регламентные задания, отметьте «Блокировка регламентных заданий включена».
  6. Нажмите «ОК». Консоль запросит логин и пароль администратора информационной базы, если он задан.

Шаг 2. Завершить текущие сеансы

  1. В той же базе раскройте ветку Сеансы.
  2. Выделите сеансы (можно несколько через Shift или Ctrl).
  3. Правой кнопкой → «Удалить».

Сеанс исчезнет из списка, а у пользователя появится сообщение о разрыве соединения.

Если после удаления сеанса база всё ещё занята, загляните в ветку Соединения того же уровня. Подвисшее соединение тоже можно разорвать вручную.

Блокировка из самой программы

Форма «Блокировка работы пользователей» в типовой конфигурации работает и для серверной базы. При первом запуске она попросит параметры администрирования кластера: логин и пароль администратора кластера, если они заданы. Удобно, когда у бухгалтера-администратора нет доступа к консоли на сервере.

СпособГде работаетКто можетРиск потери данных
Блокировка работы пользователей (БСП)файловая и серверная базаадминистратор программынизкий: даёт время сохраниться
Консоль кластера, удаление сеансовтолько сервернаяадминистратор кластеравысокий: обрывает сразу
Закрытие файла в Windowsтолько файловаяадминистратор серверавысокий
rac из командной строкитолько сервернаяадминистратор кластеравысокий, но удобно по расписанию

Если пользователь уволился: удаление учётной записи

Вторая трактовка задачи — убрать человека из базы навсегда. Здесь важно различать две сущности:

  • 📇 элемент справочника «Пользователи» — на него ссылаются документы (поле «Ответственный», «Автор»);
  • 🔑 пользователь информационной базы — учётная запись платформы с логином, паролем и ролями.

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

Правильный порядок в типовой конфигурации

  1. Откройте Администрирование → Настройки пользователей и прав → Пользователи.
  2. Откройте карточку сотрудника.
  3. Снимите флажок «Вход в программу разрешен» и запишите карточку.

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

Если уволенный сотрудник сейчас в базе, сначала завершите его сеанс одним из способов выше. Запрет входа не выбрасывает уже открытый сеанс.

Почему не стоит удалять пользователя в Конфигураторе

В Конфигураторе есть список Администрирование → Пользователи, и удалить оттуда запись технически можно. Но так удаляется только учётная запись платформы. Элемент справочника остаётся, его карточка теряет связь с логином.

Следствия:

  • в списке пользователей программы появляется сотрудник без учётной записи, и непонятно, есть у него доступ или нет;
  • если позже завести логин с тем же именем в Конфигураторе, типовая конфигурация не свяжет его с прежней карточкой автоматически.

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

Облачная 1С: что можно сделать самому

В облаке (1С:Фреш и сервисы партнёров на той же технологии) у вас нет доступа к серверу и консоли кластера. Сеансы обрывает сам сервис, когда обновляет приложение или выгружает копию.

Что остаётся абоненту:

  • 👀 посмотреть, кто сейчас в приложении, через «Активные пользователи» внутри программы;
  • 🚫 закрыть сотруднику доступ к приложению в личном кабинете сервиса, в списке пользователей абонента;
  • 📞 если сеанс завис и мешает (например, документ остаётся заблокированным), обратиться в поддержку сервиса.

Обычно этого хватает: обновления в облаке ставит провайдер, и монопольный доступ абоненту нужен редко.

Выгнать пользователей из командной строки и по расписанию

Ручная блокировка удобна раз в месяц. Если базу обновляют ночью скриптом, сеансы тоже закрывают автоматически.

Через ключ запуска типовой конфигурации

Типовые конфигурации понимают параметр /C со специальными командами:

  • ЗавершитьРаботуПользователей — ставит блокировку и выгоняет всех;
  • РазрешитьРаботуПользователей — снимает блокировку.
rem Файловая база: закрыть вход и выгнать пользователей
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /N"Администратор" /P"пароль" /C"ЗавершитьРаботуПользователей" /UCobnov

rem Серверная база: то же самое
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S"srv1c\buh" /N"Администратор" /P"пароль" /C"ЗавершитьРаботуПользователей" /UCobnov

rem После работ — снять блокировку
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /N"Администратор" /P"пароль" /C"РазрешитьРаботуПользователей" /UCobnov

Код разрешения /UC в первой команде нужен, чтобы сам сеанс со скриптом не попал под собственную блокировку.

Через утилиту rac (только серверная база)

Утилита rac лежит в папке bin платформы и работает через службу RAS, которую нужно запустить заранее. Порт RAS по умолчанию — 1545.

rem Узнать идентификатор кластера
rac cluster list

rem Узнать идентификатор базы
rac infobase summary list --cluster=<id_кластера>

rem Запретить новые сеансы и регламентные задания
rac infobase update --cluster=<id_кластера> --infobase=<id_базы> ^
  --infobase-user="Администратор" --infobase-pwd="пароль" ^
  --sessions-deny=on --scheduled-jobs-deny=on ^
  --denied-message="Обновление базы" --permission-code=obnov

rem Список сеансов
rac session list --cluster=<id_кластера> --infobase=<id_базы>

rem Завершить конкретный сеанс
rac session terminate --cluster=<id_кластера> --session=<id_сеанса>

Если на кластере задан администратор, добавьте к командам --cluster-user и --cluster-pwd. Полный список параметров печатает rac help session и rac help infobase.

Пароли в bat-файле лежат открытым текстом. Храните такой скрипт в папке, доступной только администратору, и не кладите его в общую сетевую папку.

После работ снимите блокировку той же командой rac infobase update, но с --sessions-deny=off --scheduled-jobs-deny=off. Забытая блокировка — частая причина утренних звонков «1С не пускает».

Что идёт не так и как это исправить

Диагностика: выберите симптом

Частые вопросы

Можно ли выгнать одного пользователя, не трогая остальных?
В серверной базе — да: удалите только его сеанс в консоли кластера или командой rac session terminate. В файловой базе штатного способа нет, проще попросить человека выйти.
Что увидит пользователь, которого выбросили?
При блокировке через типовую конфигурацию — предупреждение с вашим текстом и обратный отсчёт. При удалении сеанса в консоли — сообщение о разрыве соединения с сервером без предупреждения.
Освободится ли лицензия после принудительного завершения сеанса?
Да, лицензия возвращается в общий пул, когда сеанс завершён. Проверить, кто занимает лицензии в серверной базе, можно командой rac session list --licenses.
Нужно ли выгонять пользователей перед работой с .dt?
Для загрузки .dt — обязательно: она полностью заменяет данные, и Конфигуратор не начнёт её при открытых сеансах. Выгрузку тоже лучше делать в закрытой базе, чтобы в архив не попали документы, которые кто-то записывает прямо в эту минуту.
Сколько времени даёт блокировка на сохранение документов?
Пользователи получают предупреждение заранее, а сеансы закрываются ближе к времени начала блокировки. Ставьте время начала с запасом минут в 10–15, если хотите, чтобы люди успели дописать документы.