Система прав доступа в ELMA365 / Примеры настройки доступа к элементам через свойство приложения

Примеры настройки доступа к элементам через свойство приложения

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

Для настройки используются свойства типов:

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

  • текущего приложения;
  • приложения, связанного с текущим — опция доступна в поставке ELMA365 On‑Premises при включении фича-флага allowCollectionFieldPermissions.

Выдать права сотрудникам из карточки текущего элемента

Допустим, в приложении Договоры есть контекстная переменная Исполнитель типа Пользователи. Настроим доступ так, чтобы коммерческий директор и финансовый директор видели все договоры, а ответственный за договор — только свои. Для этого:

  1. Откройте настройки доступа приложения Договоры.
  2. Включите опцию Ограничить доступ к данным > На уровне элементов приложения.
  3. Удалите роль Автор.
  4. Нажмите кнопку + Добавить в окне настроек доступа.
  5. Добавьте элементы оргструктуры Коммерческий директор и Финансовый директор, выставьте для них полный доступ.
  6. Нажмите кнопку + Добавить в окне настроек доступа.
  7. Выберите опцию Свойство приложения.
  8. В выпадающем списке выберите переменную Исполнитель.

property-based-permissions-1

  1. Выставьте следующие права доступа: просмотр и редактирование.
  2. Сохраните настройки.

Теперь автор после создания не сможет просмотреть или отредактировать элемент приложения Договор. Полный доступ разрешён только коммерческому и финансовому директору. Они могут открыть договор и выбрать в поле Исполнитель нужного пользователя. Только этот пользователь сможет просматривать и редактировать карточку договора.

Выдать права сотрудникам из карточки связанного элемента  

Допустим, менеджерам, которые работают с клиентами, нужно предоставить права на просмотр элементов приложения Тарифы.

Каждый тариф доступен для определённых сегментов заказчиков: для физических лиц, малого бизнеса, среднего бизнеса и т. д. Список этих сегментов хранится в карточке тарифа. Разные менеджеры работают с разными сегментами клиентов. Нужно настроить права так, чтобы менеджеры видели только тарифы, актуальные для их клиентов, и не имели доступа к другим предложениям. При этом список сегментов, для которых доступен тариф, может изменяться, и права должны обновляться динамически.

Для этого можно предоставить права на просмотр элементов приложения Тарифы пользователям, указанным в свойстве Менеджеры из контекста связанного приложения Сегменты клиентов.

начало внимание

Настройка доступа к элементам приложения через свойство связанного приложения доступна для поставки ELMA365 On‑Premises при включении фича‑флага allowCollectionFieldPermissions. Подробнее читайте в статьях «Изменение параметров On‑Premises Enterprise» и «Изменение параметров On‑Premises Standard».

конец внимание

Рассмотрим, как настроить такие права:

  1. Перейдите в настройки доступа приложения Тарифы.
  2. Включите опцию Ограничить доступ к данным > На уровне элементов приложения.
  3. Нажмите + Добавить и выберите опцию Свойство приложения. В выпадающем списке выберите поле Сегменты клиентов из контекста приложения Тарифы, затем вложенное свойство Менеджеры из приложения Сегменты клиентов.

property-based-permissions-2

  1. Установите для менеджеров права на просмотр.

property-based-permissions-3

  1. Сохраните настройки.

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