Настраиваем правовую политику
Last updated
Last updated
Теперь, когда у нас уже есть небольшая система, нам необходимо разграничить доступ к данным системы между сотрудниками. Права в Бипиум можно задать как для отдельных сотрудников в системе, так и по объединяющим сотрудников сущностям: роль, отдел, регион и т.д. Рассмотрим оба варианта ниже:
Добавим в нашу систему несколько сотрудников, например: Ивана, Андрея и Анну. Для этого переходим в каталог "Сотрудники" и добавляем новые записи, указав имя сотрудника и адрес электронной почты.
Для начала рассмотрим простые правила на примере каталога Клиенты: Андрей - администратор системы с полным доступом ко всем данным Анна - может создавать новых Клиентов, просматривать и изменять существующих Иван - может только просматривать Клиентов, без возможности создания новых и без возможности изменять данные в существующих клиентах.
В первую очередь мы должны настроить права доступа к самому верхнему уровню - Отделу.
Переходим в нужный отдел (Компания)
В левом нижнем углу нажимаем "Свойства отдела"
Нажимаем кнопку "Доступ к отделу"
Откроется окно с правами по умолчанию: Все сотрудники - Администрировать
Нажимая кнопку "Добавить сотрудника/группу" добавляем правила для наших сотрудников: - Андрей - "Администрировать" - Иван и Анна - "Видеть каталог в меню" - Правило по умолчанию для всех сотрудников удаляем. После этого нажимаем кнопку "Сохранить".
Теперь необходимо настроить права на Каталог.
Переходим в нужный каталог (Клиенты)
Нажимаем иконку шестеренки рядом с названием каталога
Нажимаем кнопку "Доступ к каталогу"
Откроется окно с правами доступа с правилами, унаследованными от отдела.
Тут мы уже задаем правила для остальных сотрудников: Анне - привилегию "Создавать записи" Ивану - привилегию "Видеть все записи" Сохраняем заданные правила.
На скриншотах ниже примеры того, что видит каждый сотрудник под своей учетной записью:
Андрей - с привилегией "Администратор" может видеть, изменять, добавлять и удалять записи. Также может настраивать поля в каталоге (менять структуру) и назначать права доступа.
Анна - с привилегией "Создавать записи" может видеть, изменять и добавлять записи. Возможности удалять записи, а также настраивать поля в каталоге и назначать права у неё нет.
Иван - с привилегией "Видеть все записи" может только видеть записи. Редактировать, добавлять и удалять записи он не может.
Немного усложним предыдущую схему и рассмотрим на примере каталога Заказы: Андрей - также администратор системы с полным доступом ко всем данным Анна - также может создавать новые Заказы, просматривать и изменять существующие Иван - может просматривать и изменять Заказы, но не все, а только те, где он назначен ответственным менеджером. Также ему будет запрещено менять поля "Клиент" и "Ответственный менеджер" в заказах - данные поля он сможет только видеть, а дополнительное поле "Внутренний комментарий" и вовсе не должен видеть.
Добавим в каталоге "Заказы" новые поля типов "Сотрудник" и "Многострочный текст" для указания ответственного менеджера и внутреннего комментария соответственно:
Права для Отдела были настроены ранее, их менять нам не требуется. Настроим права для Каталога: Для Анны привилегия будет такая же: "Создавать записи" Для Ивана мы выдадим привилегию: "Видеть каталог в меню". Дополнительно скроем от него поле: "Внутренний комментарий"
Текущие настройки пока позволяют Ивану лишь видеть каталог в меню, при этом ни одна запись в каталоге ему пока не доступна даже для просмотра. Теперь нам необходимо разрешить ему изменять те записи, где он является ответственным менеджером. Для этого создаем правовой вид со следующим фильтром:
Сохраняем вид в качестве правового, название произвольное:
Теперь для данного вида назначаем следующие права: добавляем Ивана - привилегия "Изменять записи", Право редактировать поля: Клиент - видеть, Ответственный менеджер - видеть, в других полях всё оставляем по умолчанию.
Права настроены, теперь на примерах посмотрим что видит каждый пользователь системы. Анна видит все записи и может редактировать все поля:
Иван видит только те записи, где он назначен ответственным менеджером, а также не может редактировать поля "Клиент" и "Ответственный менеджер", поле "Внутренний комментарий" не видит вовсе:
Под объединяющей сущностью в данном примере мы будем рассматривать роли сотрудников. Рассмотрим 3 роли: Администратор, Старший менеджер и Менеджер. Чтобы можно было сотрудникам назначать роли, а потом еще и настраивать права под эти роли мы должны сначала создать каталог "Роли" с одним полем "Наименование роли":
Затем создать записи с нашими ролями:
Теперь нужно привязать данную сущность к каталогу сотрудников. Добавляем поле типа "Связанный каталог" и указываем связь на каталог Роли
Распределяем созданные роли нашим сотрудникам: Андрей - администратор, Анна - старший менеджер, Иван - менеджер
Теперь распределяем права: мы можем использовать те же правила, что и в схеме с правами под конкретных сотрудников, описанные выше, но теперь уже распределить по ролям. Для отдела:
Для каталога Клиенты:
Для каталога Заказы:
Для правового вида:
Все сотрудники увидят в системе то же самое, что и в схеме выше. Но теперь, добавляя в систему нового сотрудника, нам достаточно просто задать ему роль и права автоматически будут применены - дополнительно заходить и настраивать права для конкретного сотрудника не требуется.
Для примера добавим в систему нового сотрудника с ролью "Менеджер", создадим пару заказов, где назначим его ответственным
Новый сотрудник (Пётр) в каталоге Клиенты увидит всех клиентов, но редактировать их не сможет. В каталоге Заказы увидит только 2 своих заказа, поле "Внутренний комментарий" от него скрыт, поля "Клиент" и "Ответственный менеджер" редактировать он не сможет.