Роли и права доступа

В нашей системе реализован гибкий механизм создания ролей и настройки прав.

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

Есть платные и бесплатные роли:

  • Пользователей с бесплатными ролями можно добавлять в систему без ограничений. Это могут быть исполнители на площадке, курьеры и тд. Роль бесплатна, когда в ней включены только бесплатные права, они весьма ограничены;
  • Платные пользователи ограничены тарифом, больше определенного количества добавить нельзя. Вы можете докупить "слоты" платных пользователей согласно ценам на https://rentrabb.it/pricing/.


Есть 4 стандартные (базовые) роли:
(их нельзя изменять и удалять, используйте действие Создать на основе чтобы создать свою измененную версию этих ролей)

  • Владелец (Базовый) - полные права доступа в системе. Всегда есть минимум 1 пользователь в этой роли;
  • Старший менеджер (Базовый) - почти полные права, за исключением доступа к настройкам компании в целом;
  • Проектный менеджер (Базовый) - права ограничены сделками в которых пользователь назначен ответственным. Может управлять только задачами, где он участник, при создании задачи становится ответственным за нее. Нет доступа к настройкам компании в целом;
  • Исполнитель (Базовый) - бесплатный пользователь, можно добавить сколько угодно пользователей в этой роли. Права минимальны, может видеть и завершать работы и задачи, где он участник и ответственный соответственно.

1 Принцип работы прав доступа

Основных типов прав шесть (колонки в таблице прав):

  • Просмотр (в календаре, списках, карточке и тд.),
  • Создание,
  • Изменение (редактирование, статус и тд.),
  • Финансы (видеть и изменять финансовые данные),
  • Удаление,
  • Выгрузка (экспорт в Эксель, выгрузка отчетов, прайс лист, инвентарный лист).


Права выдаются по областям (строки в таблице прав):

  • Задачи,
  • Сделки (проекты, заказы, поставки),
  • Контрагенты,
  • Контакты,
  • Инвентарь (весь склад от набора до экземпляра),
  • Персонал (специальности, проектные работники),
  • Работы,
  • Логистика (локации, перевозки),
  • Статистика,
  • Настройки (настройки компании в целом).


Таким образом, например, если пользователь имеет право Изменение в области Инвентарь, то он может изменять всю номенклатуру инвентаря.

Отношение к объекту

Кроме типа и области есть еще ограничение на то, какое отношение пользователь должен иметь к объекту, чтобы получить право доступа.

Это может быть Только ответственный или Только участник, в таком случае недостаточно быть в этой роли, нужно быть ответственным за объект или быть участником, чтобы получить право. Например, можно настроить, что пользователь в роли Младший менеджер, может редактировать сделку, только когда он является по ней ответственным.

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

Отношения расчитываются для следующих объектов:

  • Задача - явно указываются ответственный и участники;
  • Поставка, заказ - явно указывается ответственный;
  • Проект - явно указывается ответственный, исполнители работ являются участниками;
  • Смета проекта - наследует ответственного и участников с основного проекта.
  • Контрагент - явно указывается ответственный;
  • Работы - участниками считаются исполнители и ответственный по проекту;

Дополнительные права

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

  • Задачи: завершение - дает отдельное право на смену статуса задачи на Выполнена. Право изменения включает это право, поэтому имеет смысл, только когда нужно дать право на завершение, без полноценного права на изменение. Например, стандартная роль исполнитель имеет право завершать задачи, в которых он является участником, но редактировать их он не может;
  • Сделки : корректировка - право создавать операции корректировки и менять статус заказа через корректировку. Требует право изменения;
  • Контакты : объединение - право объединять два контакта в один с удалением лишнего. 
  • Инвентарь: обслуживание, завершени обслуживания, списание - дает право изменять статус экземпляра соответствующим образом, а также изменять кол-во счетных экземпляров на обслуживании и общее кол-во на учете в инвентаре. Удаление продукта, варианта и экземпляра которые были на учете в инвентаре также требует права списания. Требует право изменения;
  • Персонал : просмотр ставок - право видеть ставки проектных работников. Требует право просмотра и право на финансы;
  • Работы : завершение - аналогично завершеню для области задач;
  • Логистика : создание локации - дает отдельное право на создание Локации. Полноценное право создания включает это право;
  • Настройки : пользователи - дает право на управление пользователями в настройках компании.

2 Просмотр ролей

Перейдите в раздел Настройки, подраздел Роли и права доступа.

Вы увидите список ролей, которые есть именно в вашей компании. Тут отображается название роли, вид (стандартная или пользовательская), кол-во пользователей в роли (кликабельно), является ли роль платной, дата изменения. 

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

Нажмите не строку роли, будет открыта ее карточка:

Вы можете видеть таблицу прав доступа.

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


В правой верхней части карточки роли указано является ли она Платной.
Нажмте на подпись "Cодержит платные права - Смотреть" чтобы подсветить платные права.
Такие права подчеркиваются жирной желтой чертой.

3 Редактирование ролей  

Нажмите действие Редактировать на нужной роли (или создайте новую).

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

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

Есть три вида отношения пользователя к объекту:

  • Все - все объекты. Даже те, к которым пользователь не имеет никакого отношения;
  • Только участник - только объекты, участником которых является пользователь;
  • Только ответственный - только объекты, ответственным за которые является пользователь.

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

4 Назначение ролей

Назначение ролей происходит стандартным образом в Настройках, подразделе Пользователи.

Работа в данном подразделе требует специального права Пользователи области Настройки.

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

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

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

5 Особенности работы прав доступа

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