Перейти к содержанию
На сайт → База знаний Блог

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

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

Права роли

Право По умолчанию Что разрешает
view_all включено видеть задачи всех сотрудников в доступных заведениях
edit_all выключено редактировать, завершать и вести чек-лист любых задач
assign выключено менять ответственного в существующей задаче
delete_all выключено удалять и восстанавливать любые задачи
manage_templates выключено изменять, запускать и удалять чужие шаблоны

view_all=true по умолчанию сохраняет прежнее поведение модуля, но даёт широкий доступ. Если сотрудник должен видеть только свои задачи, выключите это право в роли.

Company-account имеет все пять прав независимо от настроек роли.

Область заведений

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

  • задачи доступных заведений;
  • company-wide задачи без заведения.

Company-account видит все заведения компании.

Задачи другого заведения недоступны даже при знании UUID. Для чужих задач API возвращает 404, чтобы не раскрывать их существование.

Что даёт каждое право

view_all

При включённом праве сотрудник видит все задачи в доступных заведениях.

При выключенном:

  • список ограничен задачами, где сотрудник создатель или ответственный;
  • представления «Просроченные», «Назначенные мне» и «Созданные мной» тоже ограничены его задачами;
  • карточка чужой задачи возвращает 404;
  • комментарии к чужой задаче запрещены;
  • восстановление чужой задачи запрещено;
  • аналитика считает только его задачи.

edit_all

Разрешает редактировать, завершать, возвращать в работу и вести чек-лист любых задач в доступных заведениях.

Без права редактировать может создатель и ответственный.

assign

Разрешает менять ответственного в существующей задаче, если пользователь не создатель и не company-account.

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

delete_all

Разрешает удалять и восстанавливать любые задачи в доступных заведениях.

Без права удалять может создатель задачи.

manage_templates

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

Без права управлять шаблоном может его создатель. Создание шаблона требует доступа к заведению, отдельное manage_templates для создания не нужно.

Проверка прав

Права проверяются на backend при каждом запросе. Скрытие кнопок в интерфейсе — дополнительная подсказка, а не замена серверной проверке.

Типичные ответы:

Ситуация Ответ
нет доступа к модулю или компании 403
нет доступа к заведению 403
задача не существует или недоступна по scope 404
нет права на редактирование, удаление или назначение 403
устаревшая версия задачи 409
нарушены ограничения полей 422

Связанные разделы