Здравствуйте.
1С наконец то добавила возможность добавлять новые справочники и документы непосредственно в расширениях.
Но вот роли как не работали, так и не работают.
Т.е. я создаю новую роль и программно назначаю ее, объект во всех функциях виден но я ничего не могу с ним сделать (не работают права и ограничения).
Т.е. фактически 1С реализовали новый функционал, но он не рабочий. В чем смысл или я чего то не понимаю? То же самое наблюдается при расширении новой роли.
Спасибо.
---
у ролей нет прав на интерактивные действия.
---
что именно не работает?
Создал расширение. Добавил в нем роль. Добавил в расширении новый справочник. Назначил права на этот справочник для новой роли.
Программно добавил роль пользователю с ограниченными правами. Перезагрузить. Это обязательно.
Все работает. Справочник открывается. Новые элементы добавляются.

Добавил в расширение существующий справочник. Убрал у пользователя права на реквизиты справочника. Добавил права на реквизиты для новой роли. Все отрывается и работает.
---
Не создаются новые объекты (права доступа не применяются).
Что-то у Вас очень просто все, я уже 10 раз по новой перепроверил. На какой конфе делаете расширение, создаете новый справочник или документ непосредственно в расширении?
---
значит что-то не то делаете.
---
Можете расширение скинуть? К какой конфигурации оно цепляется?
---
8.3.12.1440
В расширении встроена регистрация новой роли. После первого запуска перезагрузить, для работы новой роли.
---
Интересно и правда у Вас работает, а у меня нет.
Хотя сделано тоже самое в принципе.
Если кто может посмотрите пожалуйста что не так - не понимаю.
Прикрепил.
---
у ролей нет прав на интерактивные действия.
---
Какой ужас, на самом деле так. Я ранее давал все права, перед тем как программно назначал права, а потом отключил. Был уверен что там все ОК. Огромнейшее спасибо)))
---
в общем ключевой момент в том, что в профиле роль есть, а в конфигураторе нет.
Нужно перед запуском сеанса роли добавить программно (&Перед("ПередНачаломРаботыСистемы")) , потому что в режиме совместимости 8.3.12 с платформой выше 8.3.14 оно не работает.

```1c
    Процедура ДобавитьРоль() Экспорт
    Пользователь = ПользователиИнформационнойБазы.ТекущийПользователь();
    Если Пользователь.Роли.Содержит(Метаданные.Роли.ИмяРолиВРасширении) Тогда
    Возврат;
    КонецЕсли;
    Пользователь.Роли.Добавить(Метаданные.Роли.ИмяРолиВРасширении);
    Пользователь.Записать();
    КонецПроцедуры
```

Вставил код, чтобы не качать расширение.

Но у меня в расширении 3 роли, 1 на чтение реквизитов, и 2 роли на редактирование разных реквизитов.
Нужно подумать как это модифицировать.
---
нашел решение вопроса Проверка наличия роли у пользователя.
---
ПередНачаломРаботыСистемы

Для УТ 11.5 вполне рабочее решение, многие предлагают изменить типовой, но в моем случае это не подходит, потому-что много ролей задействовано, под типовой вариант и изменение повлечет возникновению ошибок.
---
Можете написать на какой конфе работает и расширение скинуть?
---
может быть признак безопасного режима мешает?
---
Отключен
---
коллеги подскажите, сделал свое расширение для ЕРП по аналогии с выложенными тут в постах (7) и (10) все работает как надо, за исключением одной особенности, если пользователю установлю роль и перезайду то проверка на РольДоступна() говорит что роль не назначена, но если еще раз (второй) перезайти то РольДоступна() Истина, т.е. после второго раза входа в базу роль назначается, проверил расширение на файловой и на SQL базе, в обоих случаях после второго входа в базу роль назначается и если убираем роль из профиля то со второго раза входа в базу роль отменяется. Кто в курсе почему так? по логике после изменении и нового входа (нового сеанса пользователя) должно же сработать.