Ситуации, когда в Журнале регистрации (ЖР) внезапно обнаруживаются тысячи измененных документов за прошлые периоды, часто вызывают тревогу у администраторов и владельцев бизнеса. На первый взгляд это может выглядеть как попытка несанкционированного копирования данных или злонамеренная порча базы. Однако в архитектуре 1С:Предприятие 8.3 существует множество штатных механизмов, которые приводят к подобным записям. Разберем детально, как анализировать ЖР, отличать ручные действия от автоматических и понимать истинные намерения пользователя.
Первое, на что мы должны обратить внимание при анализе ЖурналаРегистрации, — это тип события. Проанализируем два ключевых состояния:
Рассмотрим ситуацию, когда затронуты документы за целый год. Если в колонке «Событие» мы видим Данные.Проведение, это почти всегда означает запуск обработки Групповое перепроведение документов или Закрытие месяца.
Проанализируем техническую особенность платформы 8.3. Многие тяжелые операции в управляемых формах выполняются не в самом сеансе пользователя, а через ФоновыеЗадания. В ЖР это выглядит следующим образом:
Выясним причину появления странных записей, таких как «Новости. Все обновления новостей». Это стандартные регламентные операции. При входе пользователя система автоматически проверяет обновления, загружает курсы валют или классификаторы. Если пользователь обладает правами ПолныеПрава (как часто бывает у главных бухгалтеров), эти задания выполняются от его имени, создавая иллюзию бурной активности в 19:00 или даже ночью.
Одной из самых частых причин массового изменения документов за прошлые годы является нарушение Границы последовательности. В 1С:Бухгалтерия это работает так: если кто-то изменит документ в январе 2019 года, система пометит все последующие документы как «требующие перепроведения» для актуализации остатков и себестоимости.
Посмотрим на типичный сценарий: бухгалтер при подготовке годового отчета обнаруживает ошибку в начале года. Исправив один реквизит в старом документе, она запускает цепочку. При выполнении обработки ЗакрытиеМесяца программа сама предложит: «Нужно восстановить последовательность документов». Если пользователь нажимает «ОК», система начинает методично перепроводить каждый документ. Это может длиться 3 часа и более, затрагивая регистры БухгалтерскийХозрасчетный, НДС и другие.
Рассмотрим вопрос безопасности. Можно ли понять по ЖР, скачивал ли пользователь базу?
Для файловой базы: Если пользователь просто скопировал файл 1Cv8.1CD через проводник Windows на флешку, в 1С об этом не останется никаких следов. ЖурналРегистрации фиксирует только события внутри программной оболочки.
Для клиент-серверной базы: Выгрузка всей базы в формат .dt требует административных прав. Если такая выгрузка была произведена, в ЖР появится запись:
Событие: Информационная база. Выгрузка в файл
Пользователь: ГалинаТ
Комментарий: Выгрузка информационной базы в файл: C:\Backup\base.dt
Если вы видите массовые события Данные.Изменение, как в описанном случае, это, скорее всего, не слив данных. Для воровства информации документы не нужно перепроводить — их достаточно прочитать. Перезапись документов, напротив, создает лишний шум и привлекает внимание администратора.
Для того чтобы окончательно разобраться в ситуации, проанализируем следующие шаги:
Документ.РеализацияТоваровУслуг и Документ.ПоступлениеТоваровУслуг, то это похоже на восстановление последовательности. Если затронуты Справочники.Пользователи — это повод для серьезного беспокойства.Если записей слишком много и стандартный фильтр ЖР не справляется, мы можем использовать встроенный язык 1С для детального анализа. Рассмотрим пример кода, который выводит все изменения, сделанные конкретным пользователем в определенный период:
Выборка = ЖурналРегистрации.Выбрать(НачалоПериода, КонецПериода, Новый Структура("Пользователь", "ГалинаТ"));
Пока Выборка.Следующий() Цикл
Если Выборка.Событие = "_$Data$_.Post" Тогда // Проведение
Сообщить("Документ: " + Выборка.Данные + " проведен в " + Выборка.Дата);
КонецЕсли;
КонецЦикла;
Этот метод позволяет быстро отфильтровать только значимые события Проведение и понять масштаб «катастрофы».
Проанализировав ситуацию, можно сделать вывод: поведение пользователя «ГалинаТ», скорее всего, объясняется штатными процедурами бухгалтерского учета. Подготовка к сдаче годового отчета часто требует перепроведения больших массивов данных. Однако сам факт наличия у наемного главного бухгалтера прав, позволяющих запускать такие процессы бесконтрольно, — это вопрос к системному администрированию.
Рекомендуем настроить разделение прав доступа так, чтобы рядовые операции не пересекались с административными, и регулярно проводить аудит Журнала регистрации с использованием настроенных отборов по критическим событиям (изменение прав, выгрузка базы, удаление объектов).