Набор прав для пользователей

Пишите ваши предложения здесь.
Ответить
$Expert
Спонсор
Спонсор
Сообщения: 371
Зарегистрирован: 06 фев 2017, 23:32
Имя: Сергей
Откуда: Планета Земля

Набор прав для пользователей

Сообщение $Expert »

Здравствуйте! Уже несколько раз сталкивался с необходимостью наделять пользователей дополнительными правами. Например, существует несколько различных групп пользователей с непересекающимися доступами. Иногда бывает необходимо наделить правами из двух или более различных групп. Сейчас приходится создавать новую группу и прописывать пользователя в неё. Возможность добавлять пользователя в несколько разных групп позволило бы, на мой взгляд, более тонко настраивать права доступа.

Пример из практики: у нас несколько подразделений. В зависимости от их штатного состава роль, например, бухгалтера и кассира выполняет либо одно лицо, либо два. Соответственно, если это два различных человека, то у них распределённые доступы по разделам. Если подразделение маленькое и роль бухгалтера и кассира выполняет один человек, то у него доступ к обоим разделам. Сейчас приходится создавать три группы - Бухгалтер, Кассир и Бухгалтер-кассир. Если можно было бы добавлять одного пользователя в две группы, было бы гораздо удобнее.
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Набор прав для пользователей

Сообщение support »

Предложение отклоняется. Правила доступа из разных групп могут противоречить друг другу.
HetmanNet
Сообщения: 62
Зарегистрирован: 05 сен 2017, 15:36
Имя: Anon Anon
Откуда: Кременчук
Организация: MasterMilk LLC

Re: Набор прав для пользователей

Сообщение HetmanNet »

Если обрабатывать по принципу наложения:
Запрещено всем все
Позволяем то разрешено группе 1
Позволяем то разрешено группе 2
И т.д.

То есть наследуем только разрешения а не запреты.
masyok
Сообщения: 27
Зарегистрирован: 19 мар 2015, 00:54

Re: Набор прав для пользователей

Сообщение masyok »

простой пример. Есть сущность проект и подсущность задача. Есть роль руководитель проекта, который может создать задачу и есть роль исполнителя, которая позволяет только изменять задачу. Допустим у нас есть два проекта, следовательно и два пользователя - каждый из них руководитель своего проекта и одновременно исполнитель чужого проекта (Пользователь 1 есть руководителем Проекта 1 и исполнителем Проекта 2, соответственно Пользователь 2 есть руководителем Проекта 2 и исполнителем Проекта 1. У обеих пользователей роль руководитель с возможностью просматривать все в рамках назначенного им Проекта). Можно ли решить столь простую задачу существующим функционалом системы? Я не нашел способа решения данной задачи, поэтом предлагаю расширить функционал системы через присвоение бизнес правил для группы. Как это должно работать:
1. Создаем группу "Проект 1", и добавляем для группы набор правил исполнителя:
- для сущности Проект: Просмотр только назначенные; Обновить, стандартные отчеты
- для сущности Задача: Просмотр только назначенные; Обновить, стандартные отчеты.
2. Добавляем в эту группу Пользователя 2 с ролью Руководителя
3. Пользователь 1 назначает на Проект 1 группу "Проект 1" с ролью исполнителя.
4. Пользователь 1 создает задачу 1 и назначает на нее исполнителем группу "Проект 1"
Роли группы "Проект 1" нивелирую права роли руководителя, следовательно Пользователь 2 (руководитель Проекта 2) становится исполнителем Проекта 1 со всеми вытекающими последствиями...

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

Насколько сложно такое реализовать?
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Набор прав для пользователей

Сообщение support »

Роли пользователей в проекте и Группы пользователей - это разные вещи. Сами роли реализовать можно, но пока эту возможность особо никто не спрашивал и так как это не тривиальная задача, то пока в планах нет.
Ответить