14. Модуль Доступы

57

Целью модуля является разграниченное право доступа конкретного пользователя к определенному функционалу платформы MAS или MMS конкретным модулям и объектам/операциям внутри модулей) и логирование всех совершенных там пользователями операций

Функционал модуля существует в MAS и MMS в рамках соответствующей возможности использования в каждой системе

 

Сущности и определения

  • Профиль пользователя - данные пользователя для отображения самому пользователю в его профиле
  • Карточка пользователя - карточка пользователя со всеми его данными и командой строкой в MMS и MAS
  • Пользователи - список пользователей системы в MMS и MAS, с фильтрами, поиском и командной строкой и базовой информацией по выданным правам (список функциональных ролей пользователя в отдельной колонке)
  • Пользователи Мерчанта - все пользователи конкретного мерчанта, выводятся на вкладке "Пользователи" в карточке Мерчанта с базовой информацией по правам доступа, позволяет быстро посмотреть всех пользователей конкретного мерчанта
  • Объекты доступа - объекты системы, на которые выдаются права доступа
  • Функциональная роль - содержит в себе права на объекты доступа, сгруппированные по функциональности или другим параметрам, и назначается на пользователей для выдачи им прав в системе
  • Конфигуратор прав доступа - функционал настройки прав доступа для пользователей и ролей в MMS и MAS
  • Нотификации - уведомления пользователя о изменениях в его карточке, составе ролей или прав доступа

 

Задачи модуля "Доступы"

1.      Завести функциональные роли для MMS и MAS

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

3.      Добавить к функциональной роли конкретного пользователя

4.      Логировать все операции и делать видимым в интерфейсных частях платформы, кто и когда и какую операцию совершил

5.      Настраивать права / роли / пользователей

 

Пользователи

Пользователь содержит всю необходимую информацию для идентификации, привязке его к конкретной системе (MMS или MAS) и возможности логина в систему: ФИО, email,

телефон, логин и пароль, система Статусная модель пользователей Статусная модель единая для MAS / MMS

Статус

Описание

Активный

В этом статусе пользователь может работать в системе согласно своей функциональной роли.

Заблокирован

В этом статусе пользователь не может войти в систему под своей учетной записью и ему не доступны все разделы системы соответственно.

 

Добавление пользователей

·         MMS

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

логин/пароль/email/телефон/фио и назначая функциональные роли согласно требуемым правам доступа пользователя в системе (необходимо указать как минимум одну роль для получения доступа к системе)

o    Суперадмин может сам заполнить полную карточку пользователя

o    Загрузка пользователей списком не предусмотрена

·         MAS

o    После регистрации Мерчанта и создания ЛК автоматически создается пользователь мерчанта для доступа в MAS и ему присваивается роль "Администратор мерчанта"

o    Далее администратор мерчанта может завести других пользователей (менеджеров) и раздать им функциональные роли, после этого пользователи могут войти в систему под заданными администратором учетными данными

o    Загрузка пользователей списком не предусмотрена

 

 

Авторизация пользователя

·         MMS

o    После добавления пользователя в системе он получает уведомление с логином и паролем для доступа

§  Если у пользователя указан email, то уведомление придет на него

§  Если не указан email, но указан телефон, то уведомление придет в виде смс на этот номер

o    Если пользователь забыл пароль, то он может напомнить себе пароль, указав логин

 

§  Количество попыток напоминания пароля ограничено: 1-я попытка 5 минут, 2-я 24 часа.

·         MAS

o    После добавления пользователя (менеджера) он получает на email письмо со ссылкой, перейдя по которой он может установить пароль

o    Если пользователь забыл пароль, то он может напомнить пароль, указав свой email, на который получит письмо со ссылкой для установки нового пароля

 

Системные роли

Указывают определенную роль пользователя внутри системы, к которой он относится

 

Системные роли не редактируются!

Список системных ролей:

·         Супер-администратор

o    Имеет все права в системе MMS

·         Администратор

o    Имеет часть прав супер-администратора в MMS

·         Менеджер мерчантов

o    Пользователь MMS, который может быть назначен менеджером мерчанта

·         Менеджер клиентов

o    Пользователь MMS, который может быть назначен персональным менеджером клиента

·         Оператор мерчанта

o    Пользователь MAS, сотрудник мерчанта

·         Администратор мерчанта

o    Пользователь MAS, сотрудник мерчанта с правами администратора - может добавлять и менять статус других сотрудников и раздавать права доступа

·         Клиент

o    Пользователь витрины, клиент маркетплейса

·         Реферальный партнер

o    Пользователь витрины, клиент маркетплейса, который является реферальным партнером

 

Функциональные роли

Функциональная роль предназначена для группировки прав по определенным условиям, например: права на определенный модуль, права на определенные действия, права для определенной бизнес-роли пользователя и т.п.

 

·        Функциональная роль относится к MMS или MAS. Для каждой из систем ведется свой список ролей

·        Структура функциональных ролей имеет 2 уровня, для того чтобы можно было использовать как общую роль на широкий список прав, так и более мелкие роли, вложенные в общую роль, для выдачи прав более детально, при этом не загромождая общий список ролей и позволяя удобно настраивать роли под любой масштаб маркетплейса: как 3 основных роли на весь функционал, так и 24 роли (6 общих и 18 вложенных), сгруппированных по функционалу/бизнес-ролям пользователей/как-то еще

o    роли 1 уровня: "АОЗ", "CRM" и т.д.

o    роли 1 и 2 уровня: "Работа с заказами" -> "АОЗ", "Оператор заказа", "Оплата заказа"

o    Примеры:

·         Пользователи могут входить в роли любого уровня

·        Роль можно создать, переименовать, удалить (что приведет к удалению прав этой роли для всех пользователей, входящих в роль)

·        Создавать функциональные роли может пользователь, имеющий роль с правами доступа для настройки прав или роль суперадмина

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

·        С системой поставляется краткий упрощенный список ролей с настроенными правами к модулям. Эти роли и права в дальнейшем можно менять

 

Объекты доступа

Объект доступа - то, на что мы выдаем права для роли.

 

Специфика объекта прав определяется типом объекта прав: модуль, пункт меню, кнопка, сущность, операция, просмотр и т.д.

·         Объекты доступа относятся к MMS или MAS и имеют многоуровневую

иерархическую структуру: каждый вложенный уровень включает в себя объекты, содержащиеся внутри объекта текущего уровня

o    Модуль Заказы -> пункт меню "список заказов"

o    Модуль Заказы -> "карточка заказа" -> пункт/кнопка "изменение адреса заказа", операции "просмотр заказа", "изменить заказ" и т.д.

o    Примеры:

·         Объекты доступа не добавляются и не редактируются через интерфейс

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

o    При модернизации или кастомизации системы список объектов доступа обновляется техническими средствами обновления системы согласно новым/измененным элементам системы и возможностям проверки прав

 

Права доступа

Право доступа - связка объекта доступа и функциональной роли

·         Права раздаются на объекты любого уровня для ролей любого уровня

·         Варианты действия прав на вложенные объекты

o    Права на объект означают, что есть права на все вложенные объекты. Если у роли есть права на объекты нижнего уровня, то применяются только они

 

Конфигуратор прав доступа

Конфигуратор позволяет сделать связку "Объекты доступа -> Роли -> Доступы -> Пользователи" и реализован через различные интерфейсы сущностей модуля

 

Проверка прав доступа

Пользователь -> Функциональные роли -> Объекты доступа всех ролей пользователя -> Проверка прав на объект доступа в системе: есть/нет в списке объектов пользователя

 

Интерфейс модуля

Карточка профиля пользователя

Доступна через пункт "Профиль" персонального меню пользователя Поля Карточки

1.      Дата создания карточки

2.      ФИО

3.      Логин

4.      Телефон

5.      Пароль (поле скрыто)

6.      Функциональные роли

7.      Права доступа

8.      История изменений пользователя, его ролей и прав

 

Команды доступные всем пользователям

 

1.      Поменять поля ФИО, Логин / Емейл / Телефон

2.      Изменить пароль / Задать пароль первый раз

 

Список пользователей

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

 

·         В меню Доступы в MMS

·         В меню Доступы в MAS

·         Во вкладе карточки мерчанта Пользователи

 

В списке выведены все поля с данными пользователя и реализованы все возможные фильтры по полям списка

Командная строка списка

 

·         Добавить пользователя

·         Изменить статус пользователя

·         Добавить системную роль

·         Добавить функциональную роль

·         Доступны групповые операции по смене статуса и добавлению ролей

 

Карточка пользователя

1.      Поля

1.      ID пользователя - внутренний номер системы

2.      Дата создания карточки

3.      Система (MMS или MAS)

4.      Статус пользователя

5.      Организация - конкретный Мерчант или Маркетплейс

6.      ФИО

7.      Логин

8.      Телефон

9.      Пароль (поле скрыто)

2.      Закладки

1.      Системные роли (список системных ролей пользователя, которые есть сейчас в карточке под названием "Роли пользователя")

2.      Функциональные роли (список ролей пользователя, редактируемый)

3.      Права доступа (иерархический список всех прав доступа пользователя, не редактируемый - для информации)

4.      История изменений пользователя, его ролей и прав Команды, доступные администратору

1.      Карточка

1.      Изменить и сохранить данные пользователя

2.      Изменить статус пользователя

 

2.      Закладка "Системные роли"

1.      Добавить системную роль (реализация аналогично команде в списке)

2.      Удалить роли поддержкой групповой операции)

3.      Закладка "Функциональные роли"

1.      Добавить функциональную роль (реализация аналогично команде в списке)

2.      Удалить имеющиеся роли поддержкой групповой операции)

 

Список функциональных ролей

Список находится:

 

·         В меню Доступы в MMS

·         В меню Доступы в MAS

 

 

 

Роли выведены в 2-уровневой иерархии, содержат поля с данными роли, включая список объектов доступа (только 1 и 2 уровень) и реализованы все возможные фильтры по полям списка, включая выбор объекта доступа

Командная строка списка

 

·         Добавить роль

·         Удалить роль

·         Изменить "Активность" роли

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

·         Добавить пользователей (интерфейс выбора или указания пользователей с

последующим добавлением указанных/выбранных пользователей в отмеченные роли)

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

 

Карточка функциональной роли

1.      Поля

1.      ID

2.      Дата создания карточки

3.      Система (MMS или MAS)

4.      Родительская роль

5.      Название

6.      Описание

7.      Активна

2.      Закладки

1.      Функциональные роли (список вложенных ролей, редактируемый)

 

2.      Права доступа (список объектов доступа роли, редактируемый, с фильтрацией "только этой роли/с учетом вложенных ролей")

3.      Пользователи (список пользователей роли, редактируемый, с фильтрацией "только этой роли/с учетом вложенных ролей")

4.      История изменений роли и ее прав Команды, доступные администратору

1.      Карточка

1.      Изменить и сохранить данные роли

2.      Закладка "Функциональные роли"

1.      Если текущая роль сама не является вложенной (ограничиваем только 2 уровнями)

2.      Добавить новую вложенную функциональную роль

3.      Удалить имеющиеся вложенные роли поддержкой групповой операции)

3.      Закладка "Права доступа"

1.      Выдать права доступа (реализация аналогично команде в списке)

2.      Удалить права доступа поддержкой групповой операции)

4.      Закладка "Пользователи"

1.      Добавить пользователя

2.      Удалить пользователя поддержкой групповой операции)

 

Список объектов доступа

Список находится:

 

·         В меню “Доступы” пункт “Операции” в MMS

 

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

Командная строка списка

 

·         Назначить функциональную роль (интерфейс иерархического списка ролей с возможностью поиска и выбора с последующим добавлением прав выбранным ролям на отмеченные объекты)

·         Доступны групповые операции по назначению роли (выбор посредством чек-бокса)

 

Карточка объекта доступа

1.      Поля

1.      ID

2.      Дата создания карточки

3.      Система (MMS или MAS)

 

4.      Родительский объект

5.      Тип объекта доступа

6.      Название

7.      Описание

8.      Активен

2.      Закладки

1.      Объекты доступа (список вложенных объектов)

2.      Функциональные роли (список ролей, которым назначен этот объект,

редактируемый, с фильтрацией "только этот объект/с учетом вложенных объектов")

3.      Пользователи (список пользователей (с указанием ролей, через которую получены права на объект), у которых есть права на этот объект, с учетом объектов выше уровнем, не редактируемый)

 

Команды, доступные администратору

 

1.      Закладка "Функциональные роли"

1.      Дать права на функциональную роль (аналогично команде в списке "Назначить роль")

2.      Удалить имеющиеся функциональные роли поддержкой групповой операции)