Организационные юниты и Функциональные роли, включение друг в друга, наследование разрешений.

В системе введено 2 сущности: элементы организационной структуры "Орг.юниты" и "Функциональные роли", в каждую из них по отдельности можно включать пользователей, и друг друга.
Причем включение одной сущности в другую создает реверс-тождественную связь (Добавление Функ.роли в Орг.Юнит равнозначно добавлению Орг.Юнита в Функ.Роль, эти связи вне зависимости от направления даже описываются в одной таблице).
Так вот, логично было бы предположить что данное разделение для обеспечения многопользовательского режима в приложении имеет смысл на уровне предоставления прав доступа, но эксперимент показывает весьма непредсказуемое поведение:
Пользователь А включен в Функц.Роль B которая в свою очередь включена в Орг.Юнит C.
В настройках прав доступа, например на объект "Контакты", установлено запрещающее правило на "Чтение", что фактически скрывает раздел для Орг.Юнита C.
Логическая цепочка: Пользователю A, раздел контакты станет недоступен, т.к. он входит в Функ.Роль B которая в свою очередь входит в Орг.юнит С, которому запрещено чтение по объекту "Контакты".
Фактически: Пользователю A - остается доступен раздел "Контакты", и ограничение он получает только если будет непосредственно включен в Орг.Юнит C
т.е. ограничения распостраняются только на пользователей непосредственно включенных в соответствующую Функ.роль или Орг.Юнит, через включение их друг в друга пользователям не наследуются никакие разрешения целевой группы, так же как и пользователям целевой что либо от включаемой.

А теперь самый главный вопрос: Зачем ?!
Какой смысл в 2-х сущностях, и в возможности их связи друг с другом, если это ни коим образом не связано с наследованием предоставленных разрешений ?!
И зачем вообще тогда нужны Функциональные роли...
В чем вообще "соль" обособленности Орг.Юнитов и Функ.Ролей ?

Нравится

3 комментария

Здравствуйте, Илья.

Можем предположить, что в описанной вами ситуации у пользователя А есть доступ к разделу по причине того, что данный пользователь может входить в дргую функциональную роль, которой доступ к данному разделу не запрещен, либо явно разрешен и данная запись является выше по приоритету (расположена вверху).

Ответы на ваши вопросы вы можете найти в статьях на Академии: https://academy.terrasoft.ru/documents/sales-team/7-9/razdel-upravleniy…
https://academy.terrasoft.ru/documents/sales-team/7-9/stranica-organiza…
https://academy.terrasoft.ru/documents/sales-team/7-9/stranica-funkcion…

Также, рекомендуем вам просмотреть видео:
https://www.youtube.com/watch?v=mSWfz61NKFI
https://www.youtube.com/watch?v=x5C6VcOhKj4

В них поясняются все особенности работы с Организационными и Функциональными ролями и описаны примеры настройки прав доступа для Функциональных и Организационных ролей.

Ну с членством в другой функ.роли которой явно разрешено и разрешающее правило расположено выше - понятно.

а вот тут, прошу пару слов пояснения:

"Мария Ватулина" написал:входить в дргую функциональную роль, которой доступ к данному разделу не запрещен

Т.е. включая пользователя в Орг.юнит или Функ.роль которой явно что-то не запрещено, все связанные явно заданные запрещающие правила всех других включений для пользователя - не применяются ?

Илья,

прошу прощения, не корректно написала.
В системе то, что явно не запрещено, то разрешено. В данной ситуации нужно обратить внимание на расположение записи при настройке прав (приоритет), на то, в какие еще организационные и функциональные роли входит данный пользователь и как именно для них настроены права.

Рекомендуем ознакомиться с видео (ссылки указаны выше), там озвучены все нюансы настройки прав доступа для Организационных и Функциональных ролей.

Показать все комментарии