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

Существует несколько способов получения информации о текущих подключениях: от использования графического интерфейса «Конфигуратора» до прямого запроса к системным таблицам или использования утилит командной строки. Выбор конкретного метода зависит от прав доступа, типа запуска приложения (файловый или клиент-серверный) и срочности решения проблемы. В этой статье мы подробно разберем каждый из доступных инструментов.

Анализ через консоль администрирования серверов

Для клиент-серверного варианта работы наиболее полным и надежным источником информации является Консоль администрирования серверов 1С:Предприятия (RAS). Этот инструмент позволяет увидеть все активные сеансы в реальном времени, включая технические детали, которые не отображаются в обычном интерфейсе. Запуск консоли осуществляется через меню «Пуск» или командой radmin в терминале.

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

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

⚠️ Внимание: Для просмотра информации в консоли администрирования у вашей учетной записи должны быть права администратора кластера 1С. Обычный пользователь базы данных не увидит чужие сеансы через этот инструмент.

Из консоли можно не только наблюдать, но и управлять подключениями. Выделив ненужный или зависший сеанс, администратор имеет право завершить его принудительно. Это действие разорвет соединение с клиентом, и пользователь получит сообщение об ошибке связи с сервером.

💡

Консоль администрирования (ras) — единственный инструмент, позволяющий управлять сеансами на уровне кластера серверов без захода в конкретную базу данных.

Просмотр списка подключений в режиме Конфигуратора

Если у вас нет доступа к серверной консоли или база работает в файловом варианте, основным инструментом становится режим Конфигуратор. Для получения списка активных пользователей необходимо зайти в базу под правами администратора и выбрать пункт меню Администрирование → Сеансы. Откроется окно со списком всех текущих подключений.

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

В этом же окне доступна функция завершения сеансов. Вы можете выбрать одного или несколько пользователей и нажать кнопку «Завершить». Система запросит подтверждение, после чего выбранные сеансы будут разорваны. Это стандартная процедура при проведении регламентных работ или обновлении конфигурации.

  • 👤 Позволяет увидеть имя пользователя и компьютер подключения.
  • 🔒 Дает возможность принудительно завершить чужую сессию.
  • ⏳ Отображает время начала сеанса для выявления «зависших» клиентов.
  • 📂 Работает как в файловом, так и в клиент-серверном варианте.

Существует нюанс: если пользователь работает в режиме «Тонкий клиент» через веб-сервер, в списке сеансов он может отображаться некорректно или отсутствовать, если соединение разорвано нештатно. В таких случаях требуется дополнительная проверка через журнал регистрации.

📊 Как вы чаще всего контролируете пользователей 1С?
Через Консоль администрирования
Через Конфигуратор (Сеансы)
Через Журнал регистрации
С помощью сторонних утилит

Использование журнала регистрации для ретроспективного анализа

Когда требуется не просто увидеть текущих пользователей, а понять историю их активности, на помощь приходит Журнал регистрации. Это мощный инструмент аудита, который фиксирует события входа и выхода из системы. Чтобы найти активных пользователей за определенный период, нужно настроить отбор по событиям НачалоСеанса и КонецСеанса.

Откройте журнал регистрации через меню Администрирование → Журнал регистрации. В настройках отбора укажите период, за который нужно получить данные. Фильтр по событию «НачалоСеанса» покажет всех, кто заходил в базу. Сравнив количество начал и окончаний сеансов, можно вычислить тех, кто до сих пор находится в системе, но не виден в текущем списке (например, при обрыве сети).

Журнал хранит данные о компьютере, пользователе и даже о том, какая конфигурация была запущена. Это полезно для расследования инцидентов безопасности. Если вы заметили подозрительную активность, анализ журнала поможет установить источник угрозы постфактум.

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

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

Прямой SQL-запрос к таблице сеансов

Для опытных администраторов и разработчиков существует метод получения информации напрямую из системных таблиц базы данных. В платформе 1С существует виртуальная таблица Session (или Сеансы), которая доступна для чтения через запросы. Этот метод особенно полезен, когда нужно встроить проверку активных пользователей в собственный отчет или обработку.

Выполнить такой запрос можно через консоль запросов или в коде обработки. Пример простейшего запроса на языке 1С выглядит следующим образом:

ВЫБРАТЬ

Сеансы.ИмяПриложения,

Сеансы.ИмяКомпьютера,

Сеансы.Пользователь,

Сеансы.НачалоСеанса

ИЗ

РегистрСведений.Сеансы КАК Сеансы

Однако, стоит помнить, что структура системных таблиц может различаться в зависимости от версии платформы и типа СУБД (MSSQL, PostgreSQL, Oracle). При работе с файловой базой доступ к этим данным осуществляется через встроенные механизмы 1С, а при клиент-серверном — через системные представления СУБД.

Поле данных Описание Тип значения
ИмяКомпьютера Сетевое имя ПК клиента Строка
Пользователь Учетная запись в 1С Справочник.Пользователи
НачалоСеанса Дата и время входа Дата
ОсновноеПриложение Имя запущенного приложения Строка

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

Особенности работы с таблицей Session

В некоторых версиях платформы прямое чтение таблицы Session может быть ограничено правами доступа. Для получения полной информации может потребоваться использование системных функций V8GetSessionInfo().

Выявление блокировок и захваченных объектов

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

Сделать это можно через пункт меню Администрирование → Блокировки данных (доступно в некоторых конфигурациях) или через консоль администрирования на вкладке «Блокировки». Здесь отображается, какой пользователь, на каком объекте и в каком режиме установил блокировку.

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

  • 🔍 Показывает конкретный объект, который заблокирован.
  • 👥 Указывает владельца блокировки.
  • ⏱ Отображает время удержания блокировки.
  • ⚡ Позволяет принудительно снять блокировку (с риском потери данных).

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

💡

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

Автоматизация мониторинга с помощью внешних обработок

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

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

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

⚠️ Внимание: Автоматическое завершение сеансов по тайм-ауту может привести к потере несохраненных данных у пользователей. Настройте предупреждение за 5-10 минут до принудительного отключения.

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

☑️ Настройка автоматического мониторинга

Выполнено: 0 / 5

Часто задаваемые вопросы (FAQ)

Как найти пользователя, если он зашел под техническим именем?

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

Можно ли увидеть активных пользователей в веб-клиенте?

Да, пользователи, работающие через веб-интерфейс (тонкий клиент в браузере), отображаются в списке сеансов так же, как и обычные пользователи. Разница лишь в том, что в графе «Приложение» может быть указано значение, связанное с веб-сервером, а имя компьютера может определяться по IP-адресу шлюза.

Почему в списке сеансов отображается больше пользователей, чем реально работает?

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

Как узнать, кто заблокировал базу данных для обновления?

Если база заблокирована монопольно, в окне «Сеансы» в Конфигураторе будет показано сообщение о монопольном режиме. Обычно это делает администратор. Если вы не инициировали блокировку, проверьте расписание регламентных заданий — возможно, в это время выполняется автоматическое обновление или выгрузка данных.