18

У пользователя недостаточно прав в 1С: как найти нужное право

Приветствую, коллеги. Недавно разбирался с обработкой, которая нормально открывалась под администратором, а у обычного пользователя останавливалась из-за нехватки прав. Подбирать роли наугад не стал — нужный объект нашёл в журнале регистрации 1С.

Проблема

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

У пользователя недостаточно прав на исполнение операции над базой данных.

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

Журнал регистрации 1С: как найти отказ в доступе и недостающее право
В журнале регистрации я смотрю пользователя, событие «Доступ. Отказ в доступе», объект метаданных и требуемое право.

Как я проверил, какого права не хватает

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

  1. Открыл базу под пользователем с полными правами.
  2. Перешёл в НСИ и администрирование → Обслуживание → Журнал регистрации. В конфигураторе этот журнал находится в меню Администрирование.
  3. Поставил отбор по пользователю, времени ошибки и событию Доступ. Отказ в доступе.
  4. Открыл найденную строку и посмотрел поле Данные.

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

Как я выдал недостающее право

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

  1. Открыл Администрирование → Настройки пользователей и прав.
  2. Проверил назначенные пользователю профили групп доступа.
  3. Добавил профиль, разрешающий работу с объектом из журнала.
  4. Попросил пользователя полностью закрыть 1С и войти заново.
  5. Повторил операцию и снова проверил журнал.

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

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

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

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

Раздел:

Получилось или остались вопросы?

Поделитесь результатом, дополните инструкцию своим опытом или задайте вопрос. Я читаю комментарии и обновляю статьи по реальным случаям.

Напишите комментарий

Опишите проблему и укажите, какое решение вы уже проверили. Адрес электронной почты на сайте не публикуется.