Роли и доступ (RBAC)
Путь: /dashboard/roles · Разрешения: Только для администратора (Admin)
FRENZY.BOT использует управление доступом на основе ролей (RBAC) на уровне модулей, чтобы разграничить видимость и возможности каждого члена команды в панели управления. Это гарантирует, что сотрудники смогут выполнять повседневные задачи, не рискуя случайно изменить системные настройки.
Как работает RBAC
- Каждому пользователю назначается ровно одна роль.
- Каждая роль имеет набор разрешений для модулей — доступ к модулю либо разрешен, либо запрещен.
- При входе пользователя в систему на боковой панели отображаются только те модули, которые разрешены его ролью.
- Конечные точки API также проверяют разрешения — даже если кто-то вручную перейдет по URL прямого доступа, несанкционированные запросы вернут ошибку 403 Forbidden.
Роли по умолчанию
| Роль | Включенные модули | Исключенные модули |
|---|---|---|
| Admin | Все модули | Нет |
| Manager | Knowledge Base, Conversations, Handoff, Leads, Analytics, Channels, Integrations, Sync Jobs, Settings, Embed, Modules | User Management, System Logs |
| Staff | Knowledge Base, Conversations, Leads, Integrations, Channels, Sync Jobs | Settings, Users, Roles, Analytics, System Logs, Modules, Embed |
Эти настройки по умолчанию подходят для большинства команд. Вы можете настроить их индивидуально с помощью матрицы разрешений.
Матрица разрешений
На странице «Роли и доступ» (/dashboard/roles) отображается сетка «роли × модули» с переключателями:
- Переключение отдельных модулей — включение или выключение доступа к конкретному модулю для каждой роли.
- Массовое переключение — включение или выключение всех модулей для роли одним нажатием.
- Изменения вступают в силу немедленно — боковая панель пользователя обновится при следующей загрузке страницы.
Доступные модули
| Модуль | Что контролирует |
|---|---|
| Knowledge Base | Загрузка файлов, URL-адресов, FAQ; управление источниками данных |
| Conversations | Просмотр истории чатов и расшифровок сессий |
| Handoff | Рабочая область агента живого чата |
| Leads | Воронка лидов и управление контактами |
| Analytics | Отчеты, показатели воронки, данные об использовании |
| Channels | WhatsApp, Telegram, Discord и др. |
| Integrations | Email, Webhook, Google Sheets, MailChimp |
| Sync Jobs | Мониторинг фоновых задач синхронизации |
| Settings | ИИ-движок, брендинг, виджет, конфигурация системы |
| Users | Управление членами команды |
| Roles | Матрица разрешений (эта страница) |
| Modules | Активация и управление функциональными возможностями |
| Embed | Генератор кода для вставки виджета |
| Activity Logs | Системный журнал аудита |
Типовые конфигурации ролей
| Член команды | Рекомендуемая роль | Почему |
|---|---|---|
| Владелец бизнеса | Admin | Нужен полный контроль над настройками, пользователями и оплатой |
| Операционный менеджер | Manager | Управляет ежедневными операциями, аналитикой и интеграциями без доступа к системным настройкам |
| Агент поддержки | Staff | Работает с диалогами, лидами и базой знаний без доступа к настройкам |
| Контент-менеджер | Staff (с доступом к KB + Sync Jobs) | Управляет только контентом базы знаний |
Как обновить роль
- Перейдите в раздел Roles & Access на боковой панели.
- Найдите роль, которую хотите изменить.
- Используйте переключатели для активации или деактивации нужных модулей.
- Изменения сохраняются автоматически.
- Пользователи с этой ролью увидят обновленную боковую панель при следующей загрузке страницы.
Протестируйте после изменений
После изменения роли войдите в систему под пользователем с этой ролью (или попросите его обновить страницу), чтобы убедиться в правильности отображения боковой панели и прав доступа.
Защита администратора
- Основная учетная запись администратора не может быть удалена, деактивирована, а ее роль не может быть изменена.
- Имя пользователя и email администратора заблокированы для изменений — можно обновить только пароль.
- Это гарантирует, что в системе всегда будет как минимум один аккаунт с полным доступом.
Детали принудительного исполнения
RBAC применяется на двух уровнях:
- Уровень интерфейса (UI) — боковая панель скрывает модули, которые не включены в роль пользователя. На защищенных страницах отображается экран отказа в доступе.
- Уровень API — каждая конечная точка API панели управления проверяет роль пользователя перед обработкой запроса. Несанкционированные запросы возвращают HTTP 403.
Эта двойная проверка означает, что даже если кто-то сохранит URL в закладках или введет его вручную, он не сможет обойти ограничения прав доступа.
FAQ
В: Почему пользователь видит ошибку 403 вместо перенаправления на страницу входа?
- Пользователь авторизован, но его роль не включает данный модуль. Ошибка 403 (Forbidden) отображается намеренно — она означает «вы аутентифицированы, но не авторизованы». Обновите его роль в разделе Roles & Access.
В: Могу ли я создавать пользовательские роли помимо Admin/Manager/Staff?
- Текущая система поддерживает три встроенные роли с настраиваемыми разрешениями для модулей. Создание ролей с произвольными названиями находится в планах разработки.
В: Нужно ли пользователю выходить из системы и заходить снова для применения изменений роли?
- Нет. Изменения ролей вступают в силу при следующем переходе пользователя между страницами. Выход из системы не требуется.
В: RBAC действует для каждого бота отдельно или глобально?
- RBAC действует глобально — роль пользователя применяется ко всем ботам, к которым у него есть доступ. Разграничение ролей для каждого отдельного бота находится в планах разработки.

