Ошибка «Нарушение прав доступа!» в 1С 8.3: от группы доступа до прав Windows
Содержание
Сообщение Нарушение прав доступа! в 1С 8.3 почти всегда значит одно: у текущего пользователя нет роли с правом на действие, которое он выполняет. Исправлять ошибку надо в два шага. Сначала найти, к какому объекту обращалась программа, — это видно в журнале регистрации. Потом выдать право через группу доступа (Администрирование → Настройки пользователей и прав → Группы доступа), а не правкой ролей в Конфигураторе.
Типичная ситуация: после обновления бухгалтер открывает привычный отчёт и получает окно с ошибкой, а у главбуха всё работает. Значит, дело в настройке прав конкретного пользователя, а не в базе. Реже то же сообщение приходит от Windows: у учётной записи нет прав на папку базы или временный каталог сервера. Начинайте с безопасных проверок, а до остановки служб доходите в последнюю очередь.
Диагностика: какой объект вызвал ошибку
Окно с ошибкой редко называет объект. Его нужно найти, иначе права придётся выдавать «на глаз».
- Попросите пользователя повторить действие и запомните время с точностью до минуты.
- Откройте журнал регистрации:
Администрирование → Обслуживание → Журнал регистрации. В Конфигураторе —Администрирование → Журнал регистрации. - Установите отбор: пользователь, интервал в 5–10 минут, уровень «Ошибка».
- Откройте запись. В полях «Метаданные» и «Данные» указан объект: справочник, документ, регистр, отчёт.
- Нажмите в окне ошибки ссылку «Подробнее» — там бывает стек вызовов с именем модуля.
Объект в журнале часто не тот, который открывал пользователь. Отчёт по продажам может упасть на регистре себестоимости, документ — на справочнике договоров. Права нужны именно на тот объект, что указан в записи.
Сразу отделите проблему прав 1С от проблемы прав Windows:
| Признак | Где искать причину |
|---|---|
| Ошибка у одного пользователя, у администратора всё работает | Группы доступа, профили, роли |
| Ошибка у всех при запуске или при записи любых данных | Права Windows на папку базы или каталоги сервера |
| Ошибка только при открытии внешнего отчёта или обработки | Право на открытие внешних файлов |
| Ошибка появилась после обновления конфигурации | Новые объекты не попали в роли, нужна проверка профилей |
| Пользователь видит не все записи, а при открытии ссылки — ошибка | Ограничение доступа на уровне записей |
Группы и профили доступа: проверка прав пользователя
В БП 3.0, ЗУП 3.1 и УТ 11 права раздаются не ролями напрямую, а через профили групп доступа. Профиль — набор ролей. Группа доступа — профиль плюс список участников и ограничения (например, по организациям).
| Конфигурация | Где находятся пользователи и группы доступа |
|---|---|
| Бухгалтерия предприятия 3.0 | Администрирование → Настройки пользователей и прав |
| ЗУП 3.1 | Администрирование → Настройки пользователей и прав |
| Управление торговлей 11 | НСИ и администрирование → Настройки пользователей и прав |
Как посмотреть, что есть у пользователя
- Откройте
Пользователии карточку нужного сотрудника. - Перейдите по ссылке «Права доступа» в карточке. Откроется список групп доступа, в которые он входит.
- Сравните с коллегой, у которого ошибки нет. Чаще всего разница в одной группе.
- Чтобы увидеть полный перечень разрешённых объектов, сформируйте из карточки отчёт о правах доступа. В нём видно, какие права на конкретный объект дают роли пользователя.
Как выдать недостающее право
- ✅ Есть подходящая группа доступа — добавьте пользователя в её участники и запишите.
- ✅ Группы нет, но есть типовой профиль — создайте группу на его основе.
- ✅ Типовой профиль не подходит — скопируйте его, добавьте роль и создайте группу на копии.
Не меняйте поставляемые профили напрямую — при обновлении конфигурации их состав восстанавливается, и выданное право исчезнет. Работайте с копией.
В Бухгалтерии предприятия есть упрощённый режим настройки прав, когда группы доступа скрыты, а права выбираются флажками профилей прямо в карточке пользователя. Если списка групп нет, ищите профили в карточке, по той же ссылке «Права доступа».
После записи группы права применяются со следующего входа. Пользователю достаточно перезапустить программу.
Проверка полными правами: временный администратор для теста
Перед долгой настройкой убедитесь, что ошибка действительно в правах. Самый быстрый способ — проверить то же действие под пользователем с полными правами.
- Создайте тестового пользователя, например «Тест_права».
- Включите его в группу доступа «Администраторы» (профиль «Администратор»).
- Войдите под ним и повторите действие.
Результаты читаются так:
- 🟢 Под администратором ошибки нет — причина в правах. Ищите, какой роли не хватает исходному пользователю.
- 🔴 Под администратором ошибка та же — права 1С ни при чём. Смотрите права Windows, кэш или повреждение данных.
Дальше сужайте поиск: убирайте тестовому пользователю по одной группе и повторяйте действие, пока ошибка не вернётся. Так находится профиль, который даёт нужное право.
Не выдавайте профиль «Администратор» рабочему пользователю «чтобы не мешало». Он получит право удалять данные, менять настройки учёта и управлять пользователями. После теста удалите тестового пользователя или снимите с него группу.
Есть особый случай. Если в базе нет ни одного пользователя, программа пускает любого с полными правами. Как только создан первый пользователь, вход без авторизации закрывается. Поэтому первым всегда создают администратора.
Настройка ролей в Конфигураторе: когда это оправдано
В Конфигураторе список пользователей открывается через Администрирование → Пользователи. В карточке пользователя на вкладке «Прочие» отмечены доступные ему роли. Сами роли лежат в дереве конфигурации в ветке Общие → Роли.
Типовая конфигурация на поддержке
В типовых БП, ЗУП, УТ роли в Конфигураторе вручную не назначают. Подсистема управления доступом сверяет роли пользователя с его группами доступа. Роль, выданная мимо профиля, может быть снята при следующем пересчёте.
Конфигуратор здесь нужен для двух задач:
- 🔧 проверить, какие роли реально назначены пользователю в данный момент;
- 🔧 восстановить вход администратору, если он потерял роль полных прав и не может зайти в пользовательский режим.
Во втором случае откройте пользователя, на вкладке «Прочие» отметьте роль полных прав (в типовых — «Полные права»), запишите. Войдите в программу и сразу приведите группы доступа в порядок.
Доработанная конфигурация
Если программист добавил новый документ или отчёт, права на него автоматически не появятся ни в одной роли. Отсюда массовая ошибка после установки доработки.
- Откройте роль из ветки
Общие → Роли. - Найдите в дереве новый объект.
- Отметьте права: «Чтение», «Просмотр», для документов — «Добавление», «Изменение», «Проведение» и интерактивные варианты.
- Обновите конфигурацию базы данных.
Удобнее создать для доработки отдельную роль и добавить её в нужные профили. Так типовые роли остаются нетронутыми, а обновления не конфликтуют с правками.
Для расширений правило то же: объекты, которые добавляет расширение, требуют прав из роли этого же расширения. Если в расширении роли нет, пользователи без полных прав получат ошибку на его объектах.
Ограничение доступа на уровне записей
В типовых конфигурациях можно включить флажок «Ограничивать доступ на уровне записей» в разделе Настройки пользователей и прав. Тогда группа доступа даёт право не на весь справочник, а на его часть: свои организации, свои склады, свои подразделения.
Симптомы такой настройки:
- 📋 в списке видна только часть документов;
- 📋 при открытии документа по ссылке из отчёта возникает ошибка прав;
- 📋 документ не проводится, потому что ссылается на организацию или склад вне разрешённых.
Что проверить:
- Откройте группу доступа пользователя и вкладку с ограничениями.
- Убедитесь, что нужная организация или склад входит в разрешённые значения.
- Если права только что поменяли, дождитесь окончания фонового обновления доступа. Пока оно идёт, пользователь может видеть данные с ограничениями.
При включённом ограничении по записям одна и та же ошибка у двух бухгалтеров из разных организаций может иметь разные причины. Сверяйте не только состав групп, но и значения ограничений.
Кэш прав и перезапуск служб
Иногда права настроены верно, а пользователь всё равно получает ошибку. Обычно виноват устаревший кэш на компьютере или на сервере.
Кэш на компьютере пользователя
- Закройте все окна 1С у этого пользователя.
- Запустите базу с параметром
/ClearCache. Его можно дописать в поле «Дополнительные параметры запуска» в свойствах базы в окне запуска. - Если не помогло, удалите папки кэша в профиле Windows:
%APPDATA%\1C\1cv8
%LOCALAPPDATA%\1C\1cv8
Удаляйте подпапки с именами-идентификаторами внутри этих каталогов. Файлы со списком баз (ibases.v8i) лежат в %APPDATA%\1C\1CEStart и при этом не затрагиваются.
Кэш сервера 1С
В клиент-серверном варианте сервер хранит сеансовые данные в каталоге кластера (по умолчанию srvinfo\reg_1541, подпапки snccntx…). Очистка помогает, когда ошибка держится у всех после изменения ролей.
Чтобы очистить кэш сервера, нужно остановить службу «Агент сервера 1С:Предприятия 8.3». Все сеансы пользователей оборвутся, несохранённые данные пропадут. Делайте это вечером или в выходной, предупредив людей заранее.
- Остановите службу агента сервера.
- Удалите подпапки
snccntx…в каталоге кластера. Остальные файлы не трогайте. - Запустите службу, войдите в базу и проверьте действие.
Права в файловом и клиент-серверном варианте
Когда ошибка не пропадает даже под администратором 1С, проверьте права операционной системы. Здесь варианты работы базы отличаются принципиально.
| Файловый вариант | Клиент-серверный вариант | |
|---|---|---|
| Кто обращается к данным | Каждый пользователь Windows со своего компьютера | Учётная запись службы сервера 1С |
| Какие права нужны | Изменение на папку с 1Cv8.1CD | Полный доступ к каталогу кластера и временным папкам службы |
| Где ещё бывают отказы | Права общей папки и права NTFS отдельно | Логин сервера 1С в СУБД |
| Кто исправляет | Администратор файлового сервера | Администратор сервера 1С и СУБД |
Файловая база
Программе нужна запись в папку базы, а не только чтение: при работе рядом с 1Cv8.1CD создаётся служебный файл блокировки 1Cv8.1CL. Если у пользователя право только на чтение, база не откроется или упадёт при первой записи.
- 📁 Для сетевой папки проверьте права и на самой общей папке, и в NTFS — действует более строгое из двух.
- 📁 Проверьте, не стоит ли на файле атрибут «Только чтение» после копирования с флешки или из архива.
Клиент-серверная база
Служба сервера работает от отдельной учётной записи, часто USR1CV8. Ошибка прав появляется после переноса сервера, смены учётной записи службы или ужесточения политик.
- 🖥 Учётной записи нужен полный доступ к каталогу кластера (
srvinfo) и к её временной папке. - 🖥 Если ошибка приходит от СУБД, проверьте права логина, под которым сервер 1С подключается к базе данных.