Практикум. Система регистрации на мероприятия. Ролевая модель.
Общие сведения о ролевой модели
Платформа позволяет пользователям управлять правами доступа к объектам платформы и допустимым операциям с ними, благодаря различным настройкам ролевой модели. Основой ролевой модели доступа к данным является концепция сбора прав в ролях.
Роль (группа доступа) – это набор полномочий, который необходим пользователю или группе пользователей для выполнения определенных задач. Каждый пользователь системы может иметь одну или несколько ролей, а каждая роль может содержать от одного до множества полномочий, которые разрешены пользователю в рамках этой роли.
Сотрудник – объект, содержащий личную информацию о пользователе, а именно его ФИО, должность, номер телефона, почту и т.д.
Пользователь – учетная запись сотрудника с указанием логина, пароля и группы доступа. Создание пользователя позволяет пройти авторизацию и зайти в интерфейс Системы с разрешенными для него объектами;
На платформе есть возможность:
-
Создавать группы доступа, пользователей и сотрудников;
-
Разграничивать права доступа к объектам системы для разных групп доступа;
-
Устанавливать правила для предоставления прав доступа и операциям с объектами системы.
Последовательность настройки доступа:
-
Создание записи о сотруднике организации, если этого не было сделано ранее. Настройка записи сотрудника определяет, для кого настраивается доступ;
-
Определение требуемых групп доступа, если этого не было сделано ранее. Настройка групп доступа уточняет, в какие группы будет включен пользователь;
-
Создание учетной записи пользователя Системы. Настройки учетной записи отвечают на вопрос, какой аккаунт будет назначен сотруднику.
Описание модуля
Для решения поставленной бизнес-задачи необходимо настроить 2 группы доступа:
-
Участник - авторизируется в Системе, просматривает информацию о мероприятиях и регистрируется на них;
-
Организатор - добавляет, настраивает и редактирует мероприятия в Системе, а также вносит информацию о площадках и контактных лицах в соответствующие справочники.
Для решения поставленной бизнес-задачи необходимо настроить права доступа для всех групп пользователей к объектам системы, с которыми эти пользователи будут взаимодействовать, а именно:
-
К типам объекта: Мероприятие, Заявка, Тип мероприятия, Площадка, Участники, Контактное лицо;
-
К настройкам реестра типа Мероприятие;
-
К визуалам типа объектов Мероприятие.
Перед настройкой модуля «Ролевая модель» необходимо предварительно реализовать настройки, описанные в главах: Либо установить пакет обновлений. |
Создание групп доступа
Для того чтобы настроить права для нескольких пользователей сразу, создадим группы доступа «Организатор» и «Участник». Все пользователи, находящиеся в этих группах, будут иметь одинаковые настройки доступа.
Для того чтобы создать группу доступа, необходимо на стартовой странице в блоке «Роли» нажать на кнопку «Создать».
Заполним поле наименование – «Участник» и Идентификатор – [PARTICIPANT] и сохраним экземпляр по кнопке «Сохранить» на панели управления.
Вернемся на стартовую страницу, нажав на логотип в главном меню, и аналогичным образом добавим группу доступа «Организатор» [ORGANIZER].
Сохраним добавленную группу доступа по кнопке сохранения на панели управления.
Настройка прав доступа
Настройка прав доступа на типы объектов
Настроим права доступа на типы объектов для разных групп доступа, чтобы пользователи имели необходимый для них функционал.
Перейдем к настройкам доступа к объектам, для этого выберем в главном меню пункт «Администрирование» – «Управление доступом» – «Доступ к объектам системы».
В раскрывающемся списке «Тип объекта» найдем и выберем «Тип объекта», чтобы отобразить список типов объектов Системы.
С помощью поиска справа сверху найдем тип объектов «Мероприятие» и выделим его в списке, чтобы настроить для него права доступа.
Добавим группы доступа, для того по кнопке «Добавить группу или пользователя» откроем модальное окно выбора пользователей и групп. В этом окне выберем и отметим группы «Организатор» и «Участник» и добавим по кнопке «Добавить».
Настроим права для групп доступа «Участник» и «Организатор», для этого в соответствующих столбцах активируем переключатели. Для группы доступа «Организатор» дадим разрешение на Чтение, Создание экземпляров, Чтение экземпляров, Редактирование экземпляров, Удаление экземпляров. Для группы доступа «Участник» дадим разрешение на Чтение и Чтение экземпляров.
Сохраним настройки прав по кнопке:
Аналогичным образом настроим права для типа объектов «Заявка»: для группы доступа «Организатор» дадим разрешение на Чтение и Чтение экземпляров, для группы доступа «Участник» дадим разрешение на Чтение, Создание экземпляров и Чтение экземпляров.
Аналогичным образом настроим права для типа объектов «Тип мероприятия»: для группы доступа «Организатор» дадим разрешение на Чтение, Создание экземпляров, Чтение экземпляров и Редактирование экземпляров, для группы доступа «Участник» дадим разрешение на Чтение и Чтение экземпляров.
Аналогичным образом настроим права для типа объектов «Площадка» : для группы доступа «Организатор» дадим разрешение на Чтение, Создание экземпляров, Чтение экземпляров и Редактирование экземпляров, для группы доступа «Участник» дадим разрешение на Чтение и Чтение экземпляров.
Аналогичным образом настроим права для типа объектов «Контактное лицо»: для группы доступа «Организатор» дадим разрешение на Чтение, Создание экземпляров, Чтение экземпляров и Редактирование экземпляров, для группы доступа «Участник» дадим разрешение на Чтение и Чтение экземпляров.
Аналогичным образом настроим права для типа объектов «Участник»: для обеих групп доступа «Организатор» и «Участник» дадим разрешение на Чтение и Чтение экземпляров.
Настройка прав доступа на настройки реестра
Чтобы каждый из пользователей видел только предназначенный для него реестр типа объектов «Мероприятие», настроим права доступа для визуалов объектов соответствующим пользователям.
Для настройки прав на типе слева сверху в раскрывающемся списке с помощью поиска найдем выберем тип объектов «Базовое представление реестра»
В раскрывающемся списке «Тип объекта» найдем и выберем «Базовое представление реестра». С помощью поиска найдем настройки реестра для типа объектов «Мероприятие».
Настроим права на визуал «Форма для организаторов»: добавим группы доступа «Участник» и «Организатор», для первого запретим Чтение. Сохраним настройки прав.
Настроим права на визуал «Форма для участников»: добавим группы доступа «Участник» и «Организатор», для последнего запретим Чтение. Сохраним настройки прав.
Настройка прав доступа на визуалы
Настроим права доступа на визуалы. В списке «Тип объекта» выберем «Визуальная группировка». Найдем визуалы типа объекта «Мероприятие».
Настроим права на визуал «Форма для организаторов»: добавим группы доступа «Участник» и «Организатор», для первого запретим Чтение. Сохраним настройки прав.
Настроим права на визуал «Форма для участников»: добавим группы доступа «Участник» и «Организатор», для последнего запретим Чтение. Сохраним настройки прав.
Динамический визуал
Настроим отображение мероприятия для пользователей в зависимости от их роли – динамический визуал
Динамический визуал позволяет отобразить соответствующий визуал для каждой из групп доступа. Для его работы необходимо создать новый алгоритм, который в зависимости от группы доступа будет отображать тот или иной визуал.
Создадим новый визуал для типа объектов «Мероприятие». Для этого со стартовой страницы откроем предметную область «Мероприятия», выбрав на виджете «Предметные области» соответствующую иконку.
Перейдем к настройке визуалов объектов типа, для этого на диаграмме выберем тип «Мероприятие» и нажмем на кнопку «Настроить экранную форму для объекта» на панели управления.
В появившемся модальном окне создадим новый визуал по кнопке «Создать новую визуальную группировку».
Откроется страница настройки визуала в режиме редактирования, сохраним текущую настройку визуала и выйдем из режима редактирования по кнопке «Ок» на панели элементов.
Перейдем к настройке текущего визуала, для этого в поле Визуал раскроем панель дополнительных действий и выберем «Редактировать».
Изменим Наименование – «Динамический визуал», Вид визуальной группировки – «Визуальная группировка по алгоритму». Чтобы создать алгоритм определения визуала в поле Алгоритм определения визуальной группировки раскроем панель дополнительных действий и выберем «Добавить».
Все системные и созданные пользователями алгоритмы хранятся в реестре алгоритмов объектов, в который можно перейти с помощью главного меню: «Администрирование» - «Управление объектами» - «Алгоритмы объектов».
Создаваемые алгоритмы можно размещать в системной папке или создать собственную папку для хранения созданных алгоритмов с помощью кнопки на верхней панели.
Выберем папку для хранения алгоритма – Прочее.
Создадим новый алгоритм визуала «Выбор визуала по группе доступа» [VIS_CHOICE_AlG], который в зависимости от группы доступа пользователя будет отображать тот или иной визуал.
Заполним формулу алгоритма:
Воспользуемся следующими функциями:
-
if – Оператор реализующий условие: если выражение (condition) возвращает значение true, то выполняются операторы блока { };
-
currentUserHasGroup – Функция осуществляет проверку вхождения текущего пользователя в заданную группу доступа, как результат проверки возвращает значение true/false;
-
dict – Вставка объекта Системы (типа объекта или экземпляра) в алгоритм;
-
return – Возвращает значение указанного объекта;
-
else – Функция «Иначе», которая выполняет блок действий в случае, когда выражение (condition) функции if возвращает значение false.
Пошагово заполним формулу алгоритма:
-
С помощью функции if добавим условие, в котором будем проверять, входит ли текущий пользователь в указанные группы доступа. Для этого воспользуемся функцией currentUserHasGroup, чтобы указать параметр используем функцию dict. Выберем тип объекта «Группа доступа» и добавим экземпляр «Организатор», а затем административную группу;
-
В случае удовлетворения заданному условию будем отображать визуальную группировку, настроенную для организаторов. Для этого вновь воспользуемся функцией dict и укажем экземпляр типа «Визуальная группировка». В противном случае - визуал, настроенный для участников.
Сохраним настройки алгоритма по кнопке «Ок». Сохраним настройки динамического визуала по кнопке «Ок».
В поле Визуал выберем объект «Форма для организатора» и откроем настройки: деактивируем переключатель «Сделать визуальную группировку по умолчанию». Сохраним изменения в настройках по кнопке «Ок».
В поле Визуал выберем объект «Динамический визуал» и откроем настройки: активируем переключатель «Сделать визуальную группировку по умолчанию». Сохраним изменения в настройках по кнопке «Ок».
Теперь для пользователей будет отображаться визуал мероприятия в зависимости от их группы доступа.
На этом настройка ролевой модели в рамках практикума «Система регистрации на мероприятия» завершена.