Was this article helpful?

Спасибо за вашу оценку!

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

Практикум. Система регистрации на мероприятия. Ролевая модель.

Общие сведения о ролевой модели

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

Роль (группа доступа) – это набор полномочий, который необходим пользователю или группе пользователей для выполнения определенных задач. Каждый пользователь системы может иметь одну или несколько ролей, а каждая роль может содержать от одного до множества полномочий, которые разрешены пользователю в рамках этой роли.

Сотрудник – объект, содержащий личную информацию о пользователе, а именно его ФИО, должность, номер телефона, почту и т.д.

Пользователь – учетная запись сотрудника с указанием логина, пароля и группы доступа. Создание пользователя позволяет пройти авторизацию и зайти в интерфейс Системы с разрешенными для него объектами;

На платформе есть возможность:

  • Создавать группы доступа, пользователей и сотрудников;

  • Разграничивать права доступа к объектам системы для разных групп доступа;

  • Устанавливать правила для предоставления прав доступа и операциям с объектами системы.

Последовательность настройки доступа:

  1. Создание записи о сотруднике организации, если этого не было сделано ранее. Настройка записи сотрудника определяет, для кого настраивается доступ;

  2. Определение требуемых групп доступа, если этого не было сделано ранее. Настройка групп доступа уточняет, в какие группы будет включен пользователь;

  3. Создание учетной записи пользователя Системы. Настройки учетной записи отвечают на вопрос, какой аккаунт будет назначен сотруднику.

Описание модуля

Для решения поставленной бизнес-задачи необходимо настроить 2 группы доступа:

  • Участник - авторизируется в Системе, просматривает информацию о мероприятиях и регистрируется на них;

  • Организатор - добавляет, настраивает и редактирует мероприятия в Системе, а также вносит информацию о площадках и контактных лицах в соответствующие справочники.

Для решения поставленной бизнес-задачи необходимо настроить права доступа для всех групп пользователей к объектам системы, с которыми эти пользователи будут взаимодействовать, а именно:

  • К типам объекта: Мероприятие, Заявка, Тип мероприятия, Площадка, Участники, Контактное лицо;

  • К настройкам реестра типа Мероприятие;

  • К визуалам типа объектов Мероприятие.

Перед настройкой модуля «Ролевая модель» необходимо предварительно реализовать настройки, описанные в главах:

Либо установить пакет обновлений.

Создание групп доступа

Для того чтобы настроить права для нескольких пользователей сразу, создадим группы доступа «Организатор» и «Участник». Все пользователи, находящиеся в этих группах, будут иметь одинаковые настройки доступа.

Для того чтобы создать группу доступа, необходимо на стартовой странице в блоке «Роли» нажать на кнопку «Создать».

image015

Заполним поле наименование – «Участник» и Идентификатор – [PARTICIPANT] и сохраним экземпляр по кнопке «Сохранить» на панели управления.

image017

Вернемся на стартовую страницу, нажав на логотип в главном меню, и аналогичным образом добавим группу доступа «Организатор» [ORGANIZER].

image019

Сохраним добавленную группу доступа по кнопке сохранения на панели управления.

Настройка прав доступа

Настройка прав доступа на типы объектов

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

Перейдем к настройкам доступа к объектам, для этого выберем в главном меню пункт «Администрирование» – «Управление доступом» – «Доступ к объектам системы».

menu

В раскрывающемся списке «Тип объекта» найдем и выберем «Тип объекта», чтобы отобразить список типов объектов Системы.

panel

С помощью поиска справа сверху найдем тип объектов «Мероприятие» и выделим его в списке, чтобы настроить для него права доступа.

image025

Добавим группы доступа, для того по кнопке «Добавить группу или пользователя» откроем модальное окно выбора пользователей и групп. В этом окне выберем и отметим группы «Организатор» и «Участник» и добавим по кнопке «Добавить».

image027

Настроим права для групп доступа «Участник» и «Организатор», для этого в соответствующих столбцах активируем переключатели. Для группы доступа «Организатор» дадим разрешение на Чтение, Создание экземпляров, Чтение экземпляров, Редактирование экземпляров, Удаление экземпляров. Для группы доступа «Участник» дадим разрешение на Чтение и Чтение экземпляров.

image029

Сохраним настройки прав по кнопке:

image031

Аналогичным образом настроим права для типа объектов «Заявка»: для группы доступа «Организатор» дадим разрешение на Чтение и Чтение экземпляров, для группы доступа «Участник» дадим разрешение на Чтение, Создание экземпляров и Чтение экземпляров.

image033

Аналогичным образом настроим права для типа объектов «Тип мероприятия»: для группы доступа «Организатор» дадим разрешение на Чтение, Создание экземпляров, Чтение экземпляров и Редактирование экземпляров, для группы доступа «Участник» дадим разрешение на Чтение и Чтение экземпляров.

image035

Аналогичным образом настроим права для типа объектов «Площадка» : для группы доступа «Организатор» дадим разрешение на Чтение, Создание экземпляров, Чтение экземпляров и Редактирование экземпляров, для группы доступа «Участник» дадим разрешение на Чтение и Чтение экземпляров.

image035

Аналогичным образом настроим права для типа объектов «Контактное лицо»: для группы доступа «Организатор» дадим разрешение на Чтение, Создание экземпляров, Чтение экземпляров и Редактирование экземпляров, для группы доступа «Участник» дадим разрешение на Чтение и Чтение экземпляров.

image035

Аналогичным образом настроим права для типа объектов «Участник»: для обеих групп доступа «Организатор» и «Участник» дадим разрешение на Чтение и Чтение экземпляров.

image035

Настройка прав доступа на настройки реестра

Чтобы каждый из пользователей видел только предназначенный для него реестр типа объектов «Мероприятие», настроим права доступа для визуалов объектов соответствующим пользователям.

Для настройки прав на типе слева сверху в раскрывающемся списке с помощью поиска найдем выберем тип объектов «Базовое представление реестра»

В раскрывающемся списке «Тип объекта» найдем и выберем «Базовое представление реестра». С помощью поиска найдем настройки реестра для типа объектов «Мероприятие».

image041

Настроим права на визуал «Форма для организаторов»: добавим группы доступа «Участник» и «Организатор», для первого запретим Чтение. Сохраним настройки прав.

image043

Настроим права на визуал «Форма для участников»: добавим группы доступа «Участник» и «Организатор», для последнего запретим Чтение. Сохраним настройки прав.

image045

Настройка прав доступа на визуалы

Настроим права доступа на визуалы. В списке «Тип объекта» выберем «Визуальная группировка». Найдем визуалы типа объекта «Мероприятие».

image047

Настроим права на визуал «Форма для организаторов»: добавим группы доступа «Участник» и «Организатор», для первого запретим Чтение. Сохраним настройки прав.

image043

Настроим права на визуал «Форма для участников»: добавим группы доступа «Участник» и «Организатор», для последнего запретим Чтение. Сохраним настройки прав.

image043

Динамический визуал

Настроим отображение мероприятия для пользователей в зависимости от их роли – динамический визуал

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

Создадим новый визуал для типа объектов «Мероприятие». Для этого со стартовой страницы откроем предметную область «Мероприятия», выбрав на виджете «Предметные области» соответствующую иконку.

image

Перейдем к настройке визуалов объектов типа, для этого на диаграмме выберем тип «Мероприятие» и нажмем на кнопку «Настроить экранную форму для объекта» на панели управления.

image

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

image

Откроется страница настройки визуала в режиме редактирования, сохраним текущую настройку визуала и выйдем из режима редактирования по кнопке «Ок» на панели элементов.

image056

Перейдем к настройке текущего визуала, для этого в поле Визуал раскроем панель дополнительных действий и выберем «Редактировать».

image

Изменим Наименование – «Динамический визуал», Вид визуальной группировки – «Визуальная группировка по алгоритму». Чтобы создать алгоритм определения визуала в поле Алгоритм определения визуальной группировки раскроем панель дополнительных действий и выберем «Добавить».

image060

Все системные и созданные пользователями алгоритмы хранятся в реестре алгоритмов объектов, в который можно перейти с помощью главного меню: «Администрирование» - «Управление объектами» - «Алгоритмы объектов».

Создаваемые алгоритмы можно размещать в системной папке или создать собственную папку для хранения созданных алгоритмов с помощью кнопки на верхней панели.

image062

Выберем папку для хранения алгоритма – Прочее.

image064

Создадим новый алгоритм визуала «Выбор визуала по группе доступа» [VIS_CHOICE_AlG], который в зависимости от группы доступа пользователя будет отображать тот или иной визуал.

Заполним формулу алгоритма:

image066

Воспользуемся следующими функциями:

  • if – Оператор реализующий условие: если выражение (condition) возвращает значение true, то выполняются операторы блока { };

  • currentUserHasGroup – Функция осуществляет проверку вхождения текущего пользователя в заданную группу доступа, как результат проверки возвращает значение true/false;

  • dict – Вставка объекта Системы (типа объекта или экземпляра) в алгоритм;

  • return – Возвращает значение указанного объекта;

  • else – Функция «Иначе», которая выполняет блок действий в случае, когда выражение (condition) функции if возвращает значение false.

Пошагово заполним формулу алгоритма:

  1. С помощью функции if добавим условие, в котором будем проверять, входит ли текущий пользователь в указанные группы доступа. Для этого воспользуемся функцией currentUserHasGroup, чтобы указать параметр используем функцию dict. Выберем тип объекта «Группа доступа» и добавим экземпляр «Организатор», а затем административную группу; image068

  2. В случае удовлетворения заданному условию будем отображать визуальную группировку, настроенную для организаторов. Для этого вновь воспользуемся функцией dict и укажем экземпляр типа «Визуальная группировка». В противном случае - визуал, настроенный для участников.

Сохраним настройки алгоритма по кнопке «Ок». Сохраним настройки динамического визуала по кнопке «Ок».

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

image070

В поле Визуал выберем объект «Динамический визуал» и откроем настройки: активируем переключатель «Сделать визуальную группировку по умолчанию». Сохраним изменения в настройках по кнопке «Ок».

image072

Теперь для пользователей будет отображаться визуал мероприятия в зависимости от их группы доступа.

На этом настройка ролевой модели в рамках практикума «Система регистрации на мероприятия» завершена.