Was this article helpful?

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

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

Практикум. Сервис доставки блюд. Ролевая модель

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

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

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

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

В Системе предусмотрены следующие группы доступа:

  • Все пользователи (SYS_BASE_USERS) – не системная группа доступа предоставляющая базовый доступ к объектам Системы, в которую по умолчанию включаются все создаваемые пользователи;

  • Административная группа (ROLE_ADMIN) – группа предполагает предоставление пользователю полномочий по выполнению настройки Системы;

  • Инициатор (MANAGER) – специализированная группа доступа, ориентированная на запуск бизнес-процессов.

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

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

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

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

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

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

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

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

Необходимо настроить права к системе для следующих групп пользователей: Клиент, Менеджер, Повар, Курьер. В рамках главы будет рассмотрена настройка прав доступа к следующим объектам Системы:

  • К типам объекта: Заказ из ресторана, Позиция из заказа, Справочник и его дочерним;

  • К настройкам реестров типов: Справочник. Блюдо, Справочник. Ресторан и Заказ из ресторана;

  • К визуалам типов: Заказ из ресторана, Позиция из заказа, Справочник и его дочерним.

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

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

Для решения бизнес-задачи в системе должно быть предусмотрено 4 типа пользователей. Клиенты имеют возможность регистрации в системе, создания заказа из одного ресторана и просмотра всех ресторанов и блюд. Менеджеры имеют возможность входа в систему, просмотра и подтверждения заказов клиентов, а также просмотра сформированных чеков заказов. Повара имеют возможность завершать задачу по приготовлению позиции из заказа в системе. Курьеры имеют возможность указывать статус оплаты заказа клиентом, а также обозначать в системе статус доставки заказа.

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

image

В открывшемся окне создайте роль: заполните Наименование«Клиент», идентификатор – «CLIENT».

image

Сохраните настроенную группу доступа с помощью кнопки «Сохранить» на панели инструментов.

Вернитесь на стартовую страницу и аналогично создайте роли:

  • «Курьер» [COURIER];

  • «Повар» [REST_CHEIF];

  • «Менеджер» [DELIVERY_MANAGER].

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

image

В реестре отображаются все группы доступа, не только созданные, но и преднастроенные.

image285

Создание сотрудника и пользователя

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

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

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

image

Создайте новый объект в реестре: чтобы создать сотрудника для одной из ролей «Курьер», «Повар» или «Менеджер» выберите тип «Сотрудник», а для того, чтобы создать сотрудника для роли «Клиент» - выберите тип «Клиент».

Создайте сотрудника типа «Сотрудник».

image287

Заполните минимальный набор полей для создания сотрудника:

  • Фамилия«Иванов»;

  • Имя«Иван»;

  • Отчество«Иванович».

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

image

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

image

Добавьте нового пользователя. В поле «Сотрудник» выберите из списка созданного ранее сотрудника. Также можно создать нового сотрудника при создании пользователя с помощью кнопки «Создать нового».

image

В группе «Учетные данные» необходимо указать способ авторизации пользователя в системе. В реестре «Учетные данные» создайте новый объект настройки авторизации с помощью кнопки image291. В окне выбора типа учетных данных выберите «Учетные данные. Парольная аутентификация».

image292

В модальном окне заполните поля «Логин» и «Пароль» — это учетные данные, необходимые для авторизации в системе. Логин может состоять только из латинских букв и цифр, пробелы и специальные символы не допускаются. Пароль должен содержать не менее 8 символов. Пароль должен содержать не менее 1 символов верхнего регистра. Пароль должен содержать не менее 1 цифр. Пароль должен содержать не менее 1 специальных символов. Пароль соответствует 1 из 4 правил, как минимум 3 является обязательными.

image293

В группе «Группы пользователя» определяется набор групп доступа, которые будут определять доступ пользователя к объектам системы. По умолчанию все пользователи после их создания получают группу доступа «Все пользователи», которая имеет минимальный набор прав для доступа к объектам системы – вручную ее добавлять не нужно.

Добавьте группу доступа «Менеджер».

image

Сохраните настройки пользователя.

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

Настройка вида контроля прав

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

Настроенные права доступа определяют возможность создания новых экземпляров типов объекта, а также их чтения, редактирования и удаления.

Все пользователи, зарегистрированные в системе, по умолчанию относятся к группе доступа «Все пользователи», которая является системной. Такой пользователь имеет разрешение только на чтение некоторых объектов и имеет ограничения на создание, изменение и удаление типов и объектов системы. При создании новых групп доступа необходимо произвести настройку контроля прав.

Основной настройкой прав доступа к экземплярам является определение вида контроля прав для типа объекта. Для этого предусмотрены следующие настройки:

  1. В настройках типа объекта – в этом случае изменения будут касаться всех экземпляров типа;

  2. В настройках доступа к объектам системы – в этом случае можно дать доступ к экземплярам типа в рамках вида контроля доступа на типе объекта.

Настройте права доступа к экземплярам типов объекта через настройки типа.

Вид контроля прав «Все пользователи имеют право на чтение»

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

image295

Аналогично настройте вид контроля прав для типов объектов «Справочник. Ресторан», «Справочник. Блюдо», «Справочник. Категория блюда» и «Справочник. Способ оплаты» и установите значение «Все пользователи имеют право на чтение». Сохраните настройки типа объектов.

Вид контроля прав «Контроль прав по ответственным сотрудникам»

Настройте права таким образом, чтобы редактировать заказ мог только пользователь с активной задачей, то есть ответственный. Настройка ответственных происходит на этапе настройки бизнес-процесса (см. Бизнес-процессы). Перейдите в настройки типа объектов «Заказ из ресторана»: в разделе «Дополнительные настройки» на вкладке «Контроль доступа» выберите «Контроль прав по ответственным сотрудникам».

image296

После этого сохраните настройки с помощью кнопки на панели управления. Аналогично настройте вид контроля прав для типа объектов «Клиент».

Вид контроля прав «Наследование прав от связанного объекта»

Перейдите в настройки типа объектов «Позиция из заказа» и выберите вид контроля прав – «Наследование прав от связанного объекта», а в поле «Атрибут для наследования прав» выберите объектный атрибут, связывающий заказ и заявку «Заказ из ресторана». Эта настройка позволяет разграничить доступ к экземплярам типа объекта на основе прав доступа к связанному объекту, чтобы клиенты имели право на создание новых экземпляров, на просмотр, редактирование и удаление только своих экземпляров типа объекта «Заказ из ресторана» и дочерних объектов тип объектов «Позиция из заказа».

image297

После этого сохраните настройки с помощью кнопки на панели управления.

Настройка прав для объектов

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

Настройка прав доступа для типов и объектов осуществляется:

  • В пункте меню «Администрирование»«Управление доступом»«Доступ к объектам системы»;

image

  • В настройках типа и объекта с помощью кнопки «Права доступа».

image299

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

Настройка прав доступа к типу объектов «Заказ из ресторана» и «Позиция из заказа»

Перейдите к настройкам типа объектов «Заказ из ресторана». Откройте настройки прав доступа с помощью кнопки «Права доступа».

В появившемся модальном окне отображается таблица настройки разрешений и запретов для групп и пользователь: по умолчанию для новых типов объектов автоматически выдаются права для группы «Административная группа» и «Все пользователи». Для того чтобы добавить группу или пользователя, необходимо нажать на кнопку image300, после чего выбрать субъект безопасности (группу/пользователя).

image

Добавьте группы доступа «Клиент», «Менеджер», «Повар» и «Курьер», для этого выберите их в списке и нажмите на кнопку «Добавить».

image

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

image

Затем сохраните изменения.

Аналогично настройте права для типа объектов «Позиция из заказа» и сохраните настройки.

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

image

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

Настройте права для типа объектов «Справочник».

Добавьте группы доступа «Клиент», «Менеджер», «Повар» и «Курьер» - для добавленных групп активируйте переключатели в столбце «Разрешено» в колонках «Чтение» и «Чтение экземпляров».

image

Аналогично настройте права для типов объектов «Справочник. Ресторан», «Справочник. Блюдо», «Справочник. Категория блюда» и «Справочник. Способ оплаты».

Настройка прав по умолчанию

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

Перейдите в настройки прав по умолчанию с помощью кнопки «Настройка прав по умолчанию».

image

В окне настройки прав добавьте группы доступа с помощью кнопки «Добавить группу или пользователя». Выберите созданные группы доступа, а именно: «Клиент», «Менеджер», «Повар» и «Курьер». Они автоматически получат разрешение на чтение – сохраните настройки.

image

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

image

После завершения обновления прав появится всплывающее уведомление об успешном завершении применении прав по умолчанию.

image

Настройка прав для визуалов и реестров типа объектов «Заказ из ресторана»

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

Настройка прав к настройкам реестра

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

image310

Настройте права для реестра «Все заказы», который предназначен для персонала. Для этого выделите его в списке, ниже воспользуйтесь кнопкой для добавления группы доступа. Добавьте группы доступа – «Клиент», «Повар», «Курьер» и «Менеджер». Для группы «Клиент» запретите чтение, для остальных групп оставьте разрешение на чтение. Сохраните настройки прав

image311

Настройте права для реестра «Мои заказы», который предназначен для клиентов. Для этого выделите его в списке, ниже воспользуйтесь кнопкой для добавления группы доступа. Добавьте группы доступа – «Клиент», «Повар», «Курьер» и «Менеджер». Для группы «Клиент» оставьте разрешение на чтение, для остальных групп уберите разрешение на чтение и установите запрет на чтение. Сохраните настройки прав.

image312

Настройка прав к визуалам

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

image

Настройте права для визуала «Визуал заказа для персонала», который предназначен для персонала. Для этого выделите его в списке, ниже воспользуйтесь кнопкой для добавления группы доступа. Добавьте группы доступа – «Клиент», «Повар», «Курьер» и «Менеджер». Для группы «Клиент» запретите чтение, для остальных групп оставьте разрешение на чтение. Сохраните настройки прав.

image311

Настройте права для визуала «Визуал создания заказа для клиента», который предназначен для клиентов. Для этого выделите его в списке, ниже воспользуйтесь кнопкой для добавления группы доступа. Добавьте группы доступа – «Клиент», «Повар», «Курьер»* и «Менеджер». Для группы «Клиент» оставьте разрешение на чтение, для остальных групп уберите разрешение на чтение и установите запрет на чтение. Сохраните настройки прав. image312