Закрываем базу 1С от пользователей: способы блокировки доступа
Содержание
Главная путаница: «заблокировать вход» понимают как одну кнопку. На деле их несколько, и работают они по-разному. Один способ закрывает доступ одному человеку навсегда, другой пускает в базу только вас на два часа, третий защищает папку с файлом базы.
Выбирайте по задаче. Уволился сотрудник — отключаете пользователя. Нужно обновить конфигурацию
или загрузить .dt — запрещаете новые сеансы на время работ. Надо спрятать базу от посторонних на уровне сервера — ограничиваете доступ в ОС и по сети.
Какой способ блокировки вам нужен
| Задача | Способ | На сколько | Кого касается |
|---|---|---|---|
| Уволился или сменил роль сотрудник | Снять право входа в карточке пользователя | Постоянно | Один человек |
| Обновление, загрузка выгрузки, свёртка | Запрет начала сеансов в консоли кластера | На время работ | Все, кроме вас с кодом разрешения |
| То же, но база файловая | Блокировка работы пользователей из самой программы | На время работ | Все, кроме администратора |
| Закрыть базу от посторонних | Права на папку и сетевые правила | Постоянно | Все, у кого нет доступа |
| Регулярные окна обслуживания | Скрипт или внешняя обработка | По расписанию | Все пользователи |
Сначала предупредите людей. Любая блокировка, кроме отключения одного пользователя, обрывает работу остальных. Несохранённые документы пропадут.
Отключаем пользователя: список и права доступа
Это самый частый случай. Сотрудник уволился, ушёл в отпуск или просто не должен больше открывать базу.
Через сам режим 1С:Предприятие
Если вы администратор, откройте раздел Администрирование → Настройки пользователей и прав → Пользователи. Откройте карточку нужного человека и снимите флажок «Вход в программу разрешен». Пользователь остаётся в списке, история документов с его фамилией сохраняется, а войти он больше не сможет.
Не удаляйте пользователя из справочника. На него ссылаются документы и записи журнала. Удаление оставит «битые» ссылки, а восстановить связь будет трудно.
Через Конфигуратор
Здесь список ведётся в меню Администрирование → Пользователи. Что можно сделать:
- 🔒 снять флажок «Аутентификация 1С:Предприятия» и не включать другие виды входа — пароль перестанет приниматься;
- 🔑 сменить пароль на длинный случайный, если нужно срочно закрыть доступ;
- 👁 убрать пользователя из списка выбора при запуске, если он нужен только для обменов и фоновых заданий.
Как проверить, что человек действительно вышел
Блокировка входа не выкидывает того, кто уже работает. Откройте список активных пользователей: в Конфигураторе это Администрирование → Активные пользователи, в консоли кластера — раздел «Сеансы». Найдите его сеанс и завершите.
Если сеанс завершить принудительно, несохранённые данные этого человека пропадут. Попросите сохранить работу или подождите окончания проведения документа.
Запрет сеансов через консоль администрирования
Способ для клиент-серверной базы. Он блокирует начало новых сеансов и при желании выбрасывает действующие. Сами пользователи остаются нетронутыми, поэтому после работ достаточно снять запрет.
Порядок действий:
- Откройте консоль серверов 1С и найдите нужный кластер.
- Раскройте список информационных баз и откройте свойства своей базы.
- Включите флажок блокировки начала сеансов.
- Задайте период: «Начало» и «Конец». Если конец не нужен, оставьте поле пустым, но тогда не забудьте снять запрет вручную.
- В поле сообщения напишите текст, который увидят пользователи, например: «Идёт обновление, вход откроется в 13:00».
- В поле «Код разрешения» впишите слово, которое знаете только вы.
- Отдельно включите блокировку регламентных заданий, если не хотите, чтобы они запускались посреди обновления.
- Сохраните и перейдите в раздел «Сеансы» — завершите те, что остались.
Как войти самому во время блокировки
Запустите 1С с параметром /UC и вашим кодом разрешения, склеив их без пробела. Например, при коде работы строка будет такой: /UCработы. Остальные получат сообщение из настройки и не попадут в базу.
Параметр можно добавить в поле «Дополнительные параметры запуска» в настройках информационной базы в списке баз или в ярлык. Это удобнее, чем каждый раз вводить его вручную.
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S "сервер\база" /UCработы
Придумайте код разрешения, который не совпадает с паролем администратора. Код виден в свойствах базы всем, у кого есть доступ к консоли.
Блокировка всей базы на время обслуживания
Нужна, когда вы собираетесь делать то, для чего база должна быть свободна: обновлять структуру, загружать выгрузку, запускать массовые операции. Тут не нужно гасить сервер — достаточно запретить вход.
Для таких работ подходит та же блокировка сеансов из консоли. Она хороша тем, что работает на стороне кластера: даже если у человека открыт ярлык, до базы он не дойдёт.
Блокировка из самой программы
Во многих типовых конфигурациях на базе библиотеки стандартных подсистем есть обработка «Блокировка работы пользователей». Искать её надо в разделе администрирования, в подразделе Поддержка и обслуживание. В ней:
- задаёте время начала и окончания блокировки;
- пишете сообщение для пользователей;
- указываете код, с которым вы сможете войти сами;
- нажимаете кнопку установки блокировки.
Это единственный удобный путь для файловой базы, потому что консоли кластера у неё нет. Плюс — не нужен доступ к серверу и консоль не требуется.
Подготовка перед включением
Прежде чем что-то блокировать, пройдите по короткому списку.
Блокировка на уровне операционной системы
Первые два способа закрывают вход средствами 1С. Если база файловая или вам нужна защита от «своих» умельцев, ограничивайте доступ там, где лежат данные.
Права на папку с базой
Файловая база — это каталог с файлом 1Cv8.1CD. Любой, кто может читать и писать в этот каталог, откроет базу напрямую, минуя ваши списки пользователей.
Что сделать:
- Откройте свойства каталога базы, вкладка «Безопасность».
- Уберите группы, которым доступ не нужен (например, «Все» или «Пользователи домена»).
- Оставьте полный доступ только тем, кто работает в базе, и администраторам.
- Для временного закрытия снимите право записи у группы пользователей — запустить базу они не смогут.
Если убрать права, пока в базе кто-то работает, у него возникнет ошибка записи и сеанс может завершиться аварийно. Делайте это, когда все вышли.
Серверные базы: брандмауэр и порты
Для серверной базы клиенты ходят на сервер 1С по сети. По умолчанию агент сервера слушает порт 1540, менеджер кластера — 1541, рабочие процессы берут порты из диапазона 1560-1591. Закрыв эти порты на брандмауэре для нужных адресов, вы отрежете от базы целые подсети.
Это грубый инструмент. Он не учитывает, кто именно подключается, и закрывает сразу все базы кластера. Годится для случая, когда нужно срочно изолировать сервер, а не для регулярных окон обслуживания.
Терминальный сервер
Когда работа идёт через удалённый стол, проще отключить доступ в самой службе удалённых рабочих столов: уберите пользователя из группы, которой разрешён вход. Заодно закроете и другие программы на сервере, поэтому применяйте с оглядкой.
Блокировка через файловую базу: что можно, а что нельзя
В файловой базе рядом с данными лежат служебные файлы, в том числе файл блокировок 1Cv8.cdn. Многие советуют «положить блокирующий файл» или «удалить файл блокировки». Не делайте ни того, ни другого.
- Файл
1Cv8.cdnведёт сама платформа. Подделать его не получится, а удаление при работающих сеансах повредит базу. - Удалять его допустимо только когда база точно не открыта ни у кого и платформа не завершилась корректно. Это ремонт, а не способ закрыть вход.
- Чтобы файловую базу закрыть от пользователей, используйте права на каталог или блокировку работы пользователей из самой программы.
Не удаляйте и не переименовывайте файлы базы, пока в ней идёт работа. Файловая база не терпит такого обращения, а резервная копия нужна до любых экспериментов.
Автоматизация: запуск блокировки по расписанию
Если окна обслуживания повторяются каждую ночь, включать запрет руками надоедает. Есть три пути.
Утилита администрирования rac
В составе сервера 1С идёт консольная утилита rac. Она умеет то же, что консоль кластера: показывать кластеры, базы, сеансы, менять настройки базы. Начните со списков:
rac cluster list
rac session list --cluster=<идентификатор кластера>
Параметры запрета сеансов у команд изменения базы различаются между версиями платформы. Не копируйте их с форумов — посмотрите справку своей версии командой rac help. Ошибка в параметре молча оставит базу открытой.
Внешняя обработка или регламентное задание
Если у вас есть программист, блокировку можно оформить внутри базы. Типовая схема:
- регламентное задание проверяет время и включает запрет входа;
- по окончании окна другое задание его снимает;
- результат пишется в журнал регистрации, чтобы утром было видно, сработало ли.
Такой запрет живёт только пока база сама может его снять. Предусмотрите ручное снятие, иначе сбой оставит всех за дверью.
Скрипт на сервере
Проще всего собрать пакетный файл, который вызывает rac и запускается планировщиком Windows. Проверьте его в тестовой базе, а потом уже на рабочей. После скрипта ставьте уведомление администратору: если блокировка не снялась, об этом нужно узнать до утра.
Автоматическая блокировка обрывает сеансы тех, кто не успел выйти. Выбирайте время, когда в базе никого нет, и заранее предупреждайте людей.
Как проверить результат и снять блокировку
После включения запрета проверьте работу глазами, а не по настройкам.
- Откройте второй ярлык без параметра
/UC— должно появиться ваше сообщение. - Откройте ярлык с кодом разрешения — вход должен пройти.
- Загляните в список сеансов: чужих быть не должно.
Когда работы закончены, снимите флажок блокировки в свойствах базы или в обработке и сохраните. Затем убедитесь, что регламентные задания тоже включены обратно. Забытая блокировка заданий — частая причина того, что утром не уходят обмены и не закрывается период.
Когда блокировать не нужно
Не каждая задача требует закрывать всю базу. Часто хватает более мягких мер:
- 📄 нужно только запретить правку закрытого периода — используйте дату запрета изменения данных, а не блокировку входа;
- 👥 надо ограничить одного сотрудника одним разделом — меняйте его роли, а не отключайте учётную запись;
- 🕐 работа займёт пять минут и затронет один справочник — предупредите коллег в чате, этого достаточно.
Чем уже блокировка, тем меньше людей вы остановите и тем меньше звонков получите.
Мини-кейс: ночное обновление
Бухгалтерия из 25 человек обновляет конфигурацию в субботу. Администратор в пятницу в 17:30 пишет всем в чат и ставит блокировку начала сеансов с 18:00 до 22:00. В поле сообщения: «Обновление до 22:00, вход откроется автоматически». Блокировку регламентных заданий включает с тем же периодом.
Код разрешения знает только он. В 18:00 открывает список сеансов и завершает три зависших: люди ушли домой, не закрыв программу. Копию делает уже под защитой запрета, никто не успевает занять базу. К 22:00 период кончается, и вход открывается сам — снимать вручную не требуется.
Заметьте: администратор заранее задал конец периода. Без него базу пришлось бы открывать вручную, а если забыть — утром понедельника вся бухгалтерия осталась бы у закрытой двери.
Что записать в регламент
Чтобы блокировка не превращалась в импровизацию, зафиксируйте в документе организации четыре вещи:
- Кто имеет право закрывать базу и кто его заменяет.
- За сколько минут предупреждают пользователей и каким каналом.
- Где хранится код разрешения и кто о нём знает.
- Кто проверяет, что блокировка снята и регламентные задания снова идут.
Пятнадцать минут на такой документ экономят часы разбирательств, когда что-то идёт не по плану.
Частые вопросы
Можно ли заблокировать вход в 1С для одного пользователя, не трогая остальных?
Что увидят люди при блокировке сеансов?
Блокировка отключит фоновые обмены и регламентные задания?
Забыл код разрешения, как войти?
rac.