Вопросы по функционалу Генератора пользовательских ролей

Декоративное изображение

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

Сотрудник 1С-Рарус
RSS
В этой теме консультируем по возможностям инструмента Генератора пользовательских ролей.

Описание основного функционала приведено в публикации:
https://rarus.ru/instruments/generator-polzovatelskikh-roley/
Декоративное изображение 124
Интересующийся
Евгений Виноградов, Здравствуйте. Есть вопрос по использованию. Мне данный инструмент был бы полезен для урезания стандартных полных прав конфигурации "Комплексная автоматизация 2.5". Установил генератор ролей, создал роль, скопировал "полные права" (Заполнить по роли - Полные права) и сохранил в три роли (Справочники, Документы, Остальное), поскольку в одну всё не помещалось из-за большого количества записей. Пользователю назначил эти три роли, но при запуске пишет "нет прав для запуска клиента..." (нужно ставить галки на тонком или толстом в конфигураторе), а потом "нет прав на запуск приложения". Помогает запустить, если ставлю "Базовые права БСП", но в разделе "НСИ и администрирование" в некоторых разделах все равно ругается на права доступа. То есть копирование роли "Полные права", видимо полных прав не дает? Возможно, я что-то не так делаю, но в данном случае все возвращается к добавлению стандартных ролей в конфигураторе, от чего хотелось бы отказаться, удобно убирая вместо этого ненужные подсистемы-документы-справочники в генераторе из роли "полные права". Подскажите, что не так?
Сотрудник 1С-Рарус
Константин Батурин, добрый день.

Механизм расширений 1С не позволяет задать роли такие глобальные права, как «Тонкий клиент» или «Администрирование». Поэтому при назначении пользователю ролей, созданных «Генератором пользовательских ролей», их необходимо дополнять типовыми ролями.

В вашем случае рекомендую выдать пользователю в дополнение к сгенерированной роли типовую «АдминистраторСистемы».

Хочу обратить ваше внимание, что в ряде мест функционала типовых конфигураций выполняется проверка на наличие у пользователя именно типовой роли «Полные права». Модифицированная роль «полные права» такую проверку не пройдет.
Интересующийся
Спасибо за ответ. Еще вопрос: если, например, нужно дать право на обработку "УдалениеПомеченныхОбъектов", то хватит добавления типовой роли "АдминистраторСистемы" или как раз не пройдет проверка на "ПолныеПрава"?
Сотрудник 1С-Рарус
Константин Батурин, вопрос начинает выходить за рамки темы, но все же отвечу.

Для того чтобы воспользоваться обработкой "Удаление помеченных объектов" понадобятся права:
1. Роль "АдминистраторСистемы" (для того чтобы система считала пользователя "полноправным")
2. Права на использование обработки
3. Право "удаление" у объектов, чьи элементы планируете удалять

Пункты 2 и 3 можно настроить через "Генератор пользовательских ролей"
Интересующийся
Еще раз спасибо за ответ. Я просто так и сделал до того как задать вопрос: в генераторе ролей в режиме "эксперт" настройки роли дабавил обработку УдалениеПомеченныхОбъектов, проставил все галочки. Затем добавил для примера справочник, присутствующий в списке обработки с помеченными на удаление элементами и также, проставил все галочки. Сохранил роль, добавил её расширением. Нужного пользователя добавил в группу доступа с профилем, включающим все роли кроме администрирования и полных прав. А также в группу доступа с профилем, включающим роль, созданную в генераторе для удаления помеченных объектов. В режиме предприятия отдельно роли "АдминистраторСистемы" не нашел, поэтому добавил в режиме конфигуратор. Получился пользователь  без полных прав с ролью АдминистраторСистемы плюс права на обработку УдалениеПомеченныхОбъектов и удаление элементов нужного справочника. При запуске обработки пользователь все равно видит "Недостаточно прав". В отчете по правам право на удаление для справочника присутствует.
Интересующийся
Все-таки нужна роль "ПолныеПрава". При открытии обработки удаления помеченных:

Если Не Пользователи.ЭтоПолноправныйПользователь() Тогда
ТекстОшибки = НСтр("ru = 'Недостаточно прав для выполнения операции.'");
Возврат; // Отказ устанавливается в ПриОткрытии.
КонецЕсли;
Сотрудник 1С-Рарус
Современная версия БСП в функции Пользователи.ЭтоПолноправныйПользователь() проверяет наличие у пользователя одной из двух ролей: "АдминистраторСистемы" или "ПолныеПрава". Так что сообщение "Недостаточно прав" выводится из-за чего-то другого.

Мне сложно вам что-то конкретное посоветовать в данной ситуации, т.к. обработка "УдалениеПомеченныхОбъектов" затрагивает слишком большое количество объектов конфигурации и их прав. Тут нужен программист на месте для более подробного анализа.
Интересующийся
Всё-таки удалось добиться работы "Удаления помеченных объектов" без ролей "АдминистраторСистемы" и "ПолныеПрава". Интересно, что через "Генератор ролей" работает выдача доступа к самой обработке "УдалениеПомеченныхОбъектов" и к одной из констант, значение которой эта обработка устанавливает в процессе работы (без этой константы выдает ошибку). Но, от добавления через "Генератор ролей" объектов метаданных и установки для них права удаления ничего не зависит. К примеру, добавляю в роль справочник "Валюты", в режиме эксперта ставлю все галки (на всякий случай, для тестирования), устанавливаю расширение. Потом добавляю в расширение пару необходимых процедур-функций из "УдаленияПомеченныхОбъектов" с исправлением "&Вместо" и после этого одинаково удаляется любой объект из списка найденных в помеченных на удаление, независимо, добавлен он в роли с правом удаления или его там нет совсем.
Сотрудник 1С-Рарус
Спасибо что оставили описание способа как можно решить подобную задачу. Уверен, ваш опыт точно окажется полезным другим.
Читают тему
Поддержка отраслевых решений «1С-Рарус»
Услуги 1С