Запреты и блокировки в 1С: права, сеансы и даты периодов

· 10 мин

Содержание

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

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

Что именно нужно запретить?

Запрет на проведение и изменение документов через права

Проведение, изменение и удаление документов управляются ролями. Роль — это набор прав на объекты: отдельно «Чтение», «Добавление», «Изменение», «Удаление», «Проведение», «Отмена проведения». Снимаете у роли право «Проведение» — пользователь с этой ролью видит документы, но кнопка Провести ему недоступна.

В типовых конфигурациях на базе Библиотеки стандартных подсистем (БП 3.0, ЗУП 3.1, УТ 11) роли напрямую не раздают. Работают через профили групп доступа:

  1. Откройте Администрирование → Настройки пользователей и прав → Профили групп доступа.
  2. Скопируйте подходящий типовой профиль (например, на основе «Бухгалтера») — свои изменения в типовой профиль вносить нельзя, он перезапишется при обновлении.
  3. В копии на закладке «Разрешённые действия (роли)» снимите флажки с ролей, дающих проведение и изменение нужных документов.
  4. Создайте группу доступа с этим профилем в Группы доступа и включите в неё пользователей.

Полезно различать два близких права. «Проведение» отвечает за формирование движений в принципе, а «Интерактивное проведение» — за нажатие кнопки Провести в форме документа. Если снять только интерактивное, документ всё ещё сможет проводиться программно (например, при загрузке из обмена), но руками пользователь его не проведёт. Для полного запрета снимайте оба.

Если нужно ограничить доступ не ко всем документам, а к данным одной организации или склада, роли мало — нужны ограничения на уровне записей (RLS). Они настраиваются в той же группе доступа, в полях «Значения доступа»: например, выбираете организацию, и пользователь видит только её документы, а чужие ему недоступны даже на чтение.

Точечный запрет на уровне конфигурации (убрать право у роли в Конфигураторе) оставьте на крайний случай: после каждого обновления типовой конфигурации правку придётся повторять, а снятие с поддержки усложнит дальнейшие обновления.

Как заблокировать вход конкретного пользователя

Когда человек уволился или ушёл в длительный отпуск, права трогать не нужно — достаточно закрыть вход.

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

Рядом есть флажок Недействителен — он прячет сотрудника из списков выбора (например, в поле «Ответственный»), но сам по себе вход не закрывает. Для полной блокировки снимайте именно Вход в программу разрешён.

Если пользователь прямо сейчас работает в базе, снятие флажка не выкинет его из сеанса — запрет сработает при следующем входе. Чтобы завершить активный сеанс немедленно, понадобится серверная консоль (см. раздел про анализ блокировок).

Для сотрудников, которые входят по учётной записи домена, дополнительно проверьте закладку «Аутентификация»: там отключается вход по логину 1С и по Windows-аккаунту по отдельности.

Ограничение до режима «только чтение»

Готовой кнопки «только просмотр» на всю базу в 1С нет — режим собирается из прав. Логика та же, что с проведением: пользователю оставляют право «Чтение» (просмотр) и снимают «Добавление», «Изменение», «Удаление», «Проведение».

На практике удобнее не собирать такую роль вручную, а взять типовой профиль только для просмотра. В большинстве конфигураций на БСП он есть под названием вроде «Только просмотр» или «Аудитор» — проверьте список в Профили групп доступа. Если подходящего профиля нет, скопируйте полный профиль роли и снимите в копии все права на запись, оставив чтение и открытие отчётов.

Такой доступ удобен аудитору, собственнику или новому сотруднику на период обучения: он видит данные и строит отчёты, но ничего не меняет и случайно не перепроводит документ.

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

Общая блокировка сеансов перед обновлением

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

В клиент-серверном и файловом варианте путь одинаковый: Администрирование → Обслуживание → Блокировка работы пользователей. Здесь задаются:

  • дата и время начала блокировки;
  • текст сообщения, который увидят пользователи при попытке входа;
  • код разрешения — пароль, с которым админ всё же сможет зайти.

Код разрешения передаётся параметром запуска /UC — например, ярлык администратора указывает "...\1cv8.exe" ENTERPRISE /UC <код>. Остальные при включённой блокировке в базу не попадут.

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

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

В клиент-серверной базе ту же блокировку можно включить со стороны сервера — это полезно, когда в базу вообще нельзя зайти интерактивно. Инструмент — консоль «Администрирование серверов 1С Предприятия» (оснастка MMC) или утилита командной строки rac.

В консоли откройте свойства информационной базы и заполните:

  • Блокировка начала сеансов включена — да;
  • Код разрешения и Сообщение блокировки;
  • при необходимости — Блокировка регламентных заданий включена, чтобы на время работ не запускались фоновые задания.

Отдельно обратите внимание на флаг блокировки регламентных заданий. Фоновые задания (обмены, пересчёт итогов, закрытие месяца по расписанию) могут стартовать сами и захватить данные ровно в тот момент, когда вы начали обновление. Поэтому перед техническими работами разумно гасить и сеансы, и регламентные задания.

Через rac те же действия выполняются командами управления сеансами и информационной базой. Консоль и rac обращаются к агенту сервера (по умолчанию порт 1540), поэтому для работы с ними служба «Агент сервера 1С:Предприятия» должна быть запущена. Точный набор параметров зависит от версии платформы — сверяйтесь со справкой: rac help и rac infobase help. Список активных сеансов смотрится командой rac session list, список баз — rac infobase summary list.

Остановка службы «Агент сервера 1С:Предприятия» или перезапуск сервера рвут все сеансы разом — несохранённые данные пользователей пропадут. Это крайняя мера для нерабочего времени, а не способ «быстро всех выгнать».

Запрет редактирования закрытого периода

Самый частый запрос бухгалтера — закрыть прошлый квартал или год, чтобы задним числом никто ничего не поправил. Для этого есть дата запрета изменения данных.

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

Дату запрета можно настроить гибко:

ВариантКогда применять
Общая дата для всехПростой учёт, одна организация
По организациямВ базе несколько юрлиц, периоды закрываются в разное время
По пользователямБухгалтеру период закрыт, а главбух ещё правит
По разделам учётаБанк и касса закрыты, а зарплата ещё считается

Для «плавающего» закрытия удобно задать относительную дату — например, «конец прошлого месяца»: тогда граница сдвигается автоматически и её не нужно переставлять вручную каждый месяц.

Разберём на примере. Отчётность за первый квартал сдана, сейчас идёт апрель. Вы ставите дату запрета 31 марта. С этого момента документы до 31 марта включительно закрыты: при попытке перепровести мартовскую реализацию программа сообщит, что изменение данных запрещено, и укажет дату границы. Апрельские документы при этом создаются и правятся как обычно. Когда закроете второй квартал, границу сдвинете на 30 июня.

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

Дата запрета защищает от случайной правки, но администратор с полными правами всё равно сможет временно её снять. Поэтому право на изменение самой даты запрета оставляйте только ответственному сотруднику.

Как понять, что блокирует, и снять лишнее

Иногда «запрет» возникает сам — пользователь жалуется, что документ не сохраняется или база «висит». Разберём, что здесь происходит.

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

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

Что именно происходило, видно в журнале регистрации: Администрирование → Обслуживание → Журнал регистрации. Отфильтруйте по пользователю и времени — там фиксируются и отказы в правах, и включение блокировок, и завершения сеансов. По событию отказа в доступе видно, на каком объекте и праве человек споткнулся, — это быстрее, чем перебирать профиль наугад.

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

Частые ошибки

Разберём промахи, из-за которых запрет либо не срабатывает, либо бьёт мимо цели.

  • 🔧 Правят типовой профиль вместо копии. При следующем обновлении изменения слетают. Всегда копируйте профиль и работайте с копией.
  • 🔒 Снимают право в Конфигураторе «для одного человека». Это меняет роль для всех её носителей и усложняет обновление. Для одного пользователя — отдельный профиль группы доступа.
  • 👤 Путают «Недействителен» и «Вход в программу разрешён». Первое прячет из списков, второе закрывает вход. Для блокировки нужен второй флажок.
  • ⏳ Включают блокировку сеансов, не предупредив людей. Те, кто уже работает, остаются в базе, а обновление начинать нельзя. Сначала дайте всем выйти.
  • 📅 Ставят дату запрета, а старые документы уже были отредактированы. Дата защищает только вперёд — задним числом она уже внесённые правки не откатит.
Чем запрет через роль отличается от даты запрета изменения?
Роль ограничивает, что пользователь может делать вообще (например, никогда не проводить документы). Дата запрета ограничивает период: правка разрешена, но только начиная с определённой даты. Это разные механизмы, их часто используют вместе.
Можно ли запретить проведение только одного вида документа?
Да. Права настраиваются по объектам конфигурации, поэтому в профиле можно снять проведение у конкретного документа, оставив остальные. Делается это в копии профиля на закладке с ролями.
Пользователь заблокирован, но всё равно сидит в базе — почему?
И снятие флажка входа, и дата запуска блокировки действуют на новые сеансы. Уже открытый сеанс продолжает работать до выхода. Завершить его немедленно можно только из серверной консоли.
Как зайти в базу, когда включена общая блокировка?
Запустите 1С с параметром /UC и кодом разрешения, который указан в настройках блокировки. Без кода вход закрыт для всех.
Дата запрета мешает мне самому исправить ошибку в прошлом периоде. Что делать?
Либо настройте дату запрета по пользователям и оставьте себе доступ, либо временно сдвиньте границу, внесите правку и верните дату обратно. Второй вариант безопаснее, если период уже сдан в отчётность.