Перейти к основному содержимому
Версия: 3.0

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

Рабочее пространство (workspace) — контейнер для группы ботов, пользователей и их прав. Как правило, одно рабочее пространство соответствует одной компании, подразделению или проекту. Пользователей рабочего пространства добавляют в разделе «Пользователи», см. Административная консоль iQBot.

Роли и права​

Каждая роль — это набор разрешений на конкретные действия: редактировать ботов, просматривать логи, управлять пользователями и т. д. В базовой поставке доступны роли:

РольЧто может
Администратор (admin)Полный доступ ко всем разделам рабочего пространства, включая управление пользователями и ролями. Исключение — два файла в редакторе кода: главный конфиг сервера (iqbot.config.json, workspaces.json) и глобальные конфигурации модулей. Они остаются за супер-администратором.
Разработчик (dev)Полный доступ к ботам: сценарии, содержимое, NLU, код. В админ-панели — только просмотр (без изменений), список пользователей скрыт. Глобальные действия и хуки в редакторе кода можно читать, но не менять.
Редактор контента (editor)Меняет содержимое бота (тексты ответов, интенты и сущности NLU) и базу вопросов-ответов, может запустить обучение NLU. Сценарии доступны только для просмотра. Нет доступа к редактору кода, списку пользователей, журналу сервера и экспорту бота — удобно для сотрудников, которые актуализируют тексты ответов, но не меняют логику бота.

Если встроенных ролей недостаточно — например, нужна роль «аналитик» с доступом только на чтение логов и аналитики, — создайте свою в разделе «Роли» рабочего пространства.

Редактор ролей​

Раздел «Роли» (/admin/workspace/<id>/roles) показывает все роли рабочего пространства. Справа от каждой роли — кнопки «Дублировать», «Редактировать» и «Удалить», вверху — «Создать роль» и «Восстановить базовые роли». Эти действия доступны, если у вашей роли есть право на запись в разделе «Роли».

Список ролей рабочего пространства

Создать роль. Нажмите «Создать роль», укажите название и описание. Идентификатор подставится сам из названия — он нужен для API и после создания не меняется (допустимы латиница, цифры, дефис и подчёркивание, от 3 символов). Затем отметьте права в дереве и нажмите «Создать роль» (при редактировании кнопка называется «Редактировать роль»).

Как устроено дерево прав. Права сгруппированы по областям: бот, администрирование, модули, редактор кода и прочее. У каждого пункта два независимых флажка — «Чтение» (видеть) и «Запись» (изменять). Наведите курсор на значок ⓘ рядом с названием — появится подсказка, за что отвечает право.

Редактор роли: дерево прав с флажками «Чтение» и «Запись»

Подсказка у права

Модули и редактор кода в дереве прав

  • Флажок на заголовке группы выдаёт право на всю группу сразу, включая пункты, которые появятся в платформе позже. Если отмечены не все пункты группы, на заголовке показывается промежуточное состояние (чёрточка).
  • Исключения. Отметьте группу целиком и снимите флажок у отдельного пункта — роль получит все права группы, кроме этого. Так, например, устроена роль «Администратор»: полный доступ минус два файла.
  • Модули. Доступ к модулю («Вопрос-ответ», NLU, «Аналитика», «Тестирование» и др.) задаётся одним правом: оно открывает и API модуля, и его пункт в боковом меню Studio. Список модулей зависит от того, какие установлены на сервере.
  • Редактор кода. Флажки на заголовке «Редактор кода» дают доступ к модулю целиком. Ниже можно отдельно ограничить типы файлов: глобальные (общие для всех ботов) и файлы конкретного бота.
  • Полный доступ ко всем ресурсам. Переключатель в начале списка прав даёт абсолютно все права. Используйте только для действительно доверенных ролей.

Редактировать и дублировать. При открытии роли в дереве отмечено то, что она реально разрешает сейчас — даже если права были заданы вручную в конфигурации. «Дублировать» открывает редактор с копией прав и новым идентификатором — удобно сделать вариант существующей роли.

Прочие правила. Если в роли остались правила на ресурсы, которых нет в дереве (например, их вписали вручную в workspaces.json для собственного модуля), они показываются отдельным списком «Прочие/устаревшие правила». Редактор их не меняет, а при сохранении сохраняет как есть; удалить можно кнопкой с корзиной.

Удалить роль. Нельзя удалить роль, которая выбрана ролью по умолчанию или ролью администратора рабочего пространства, а также назначена хотя бы одному пользователю. Сначала переназначьте пользователей. Служебную роль интеграционного пользователя (chatuser) изменить и удалить нельзя.

Восстановить базовые роли. Возвращает «Администратор», «Разработчик» и «Редактор контента» к исходным правам. Остальные роли не затрагиваются.

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

Отдельно от ролей рабочего пространства существует статус супер-администратора платформы. Он не привязан к конкретному рабочему пространству и даёт полный доступ ко всем пространствам и к серверным разделам консоли: «Контроль версий», «Языки», «Модули», «Готовность к продуктиву». Первый зарегистрированный пользователь становится супер-администратором автоматически. Список супер-администраторов хранится в параметре superAdmins главного конфига, см. Конфигурация iQBot.