> ## Documentation Index
> Fetch the complete documentation index at: https://faq.exode.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# Роли пользователей

> Какие роли есть в онлайн-школе, за что отвечает каждая и как они соотносятся с системой прав доступа

В онлайн-школе за разными задачами закреплены разные люди: кто-то ведёт курсы, кто-то проверяет
домашние задания, кто-то отвечает за финансы и настройки. Чтобы каждый видел только то, что ему нужно,
платформа использует **роли** — именованные наборы прав доступа.

<Note>
  Важно понимать модель платформы: жёсткого списка «ролей» с фиксированными названиями в системе нет.
  Роль — это, по сути, **набор прав (permissions)**, который вы выдаёте конкретному сотруднику.
  Ниже описаны типовые роли так, как они реально складываются из прав в коде. Полный список прав и
  инструкции по их назначению — на странице [Права доступа](/online-schools/roles-permissions/access-rights).
</Note>

## Два контекста ролей

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

| Контекст                   | Что определяет                                        | Где настраивается                             |
| -------------------------- | ----------------------------------------------------- | --------------------------------------------- |
| Команда школы (сотрудники) | Кто и что может делать в панели управления школой     | Раздел «Мои менеджеры» и «Пользователи школы» |
| Учебный контекст (профиль) | Роль человека в обучении: ученик, родитель, репетитор | Профиль пользователя (`ProfileRole`)          |

## Роли команды школы

Это сотрудники, которым вы даёте доступ к управлению школой. Технически каждый из них — это **менеджер**
с определённым набором прав. В системе есть два типа менеджеров (`SellerManagerType`):

| Тип менеджера       | Значение в коде | Область действия                          |
| ------------------- | --------------- | ----------------------------------------- |
| Глобальный менеджер | `Seller`        | Права распространяются на всю школу       |
| Менеджер продукта   | `Product`       | Права ограничены одним курсом / продуктом |

### Владелец школы

Создатель школы (владелец организации-продавца). Обладает **полным доступом** ко всем разделам и правам —
управляет командой, финансами, курсами и настройками. Владельца нельзя удалить или ограничить через
интерфейс менеджеров: он всегда является текущим управляющим (`currentManager`) своей школы.

### Администратор / глобальный менеджер

Сотрудник с широкими правами на уровне всей школы. Набор прав администратора складывается из глобальных
разрешений (`getGlobalManagerPermissions`), среди которых:

* `SchoolManageSettings` — управление настройками школы;
* `SchoolManageUsers` — управление пользователями школы;
* `SellerManageManagers` — управление другими сотрудниками команды;
* `SellerManage`, `SellerSales`, `SellerRefunds` — работа с организацией, продажами и возвратами;
* `CourseManage`, `ProductManage` — управление курсами и продуктами.

Точный объём прав администратора определяете вы сами при добавлении сотрудника — можно выдать все права
или только их часть.

### Преподаватель

Сотрудник, который создаёт и ведёт учебный контент. Ключевое право — `CourseManage` (управление курсом:
уроки, структура, материалы). Часто дополняется правом `CourseView` (видеть список курсов). Преподавателя
удобно оформлять как **менеджера продукта**, ограничив его доступ конкретным курсом.

### Куратор

Отвечает за проверку работ учеников. За эту роль отвечает право `CourseCurator` — «пользователь может
проверять домашние задания». Часто куратору дополнительно дают:

* `CourseCommentsManage` — управление комментариями в курсе;
* `CourseStudentManage` — просмотр информации об учениках;
* `CourseReportingView` — просмотр отчётов по курсу.

### Менеджер продаж / финансовый менеджер

Сотрудник, работающий с деньгами и заявками. Собирается из прав группы `Seller`:

| Право            | За что отвечает                         |
| ---------------- | --------------------------------------- |
| `SellerSales`    | Просмотр истории платежей и отчётов     |
| `SellerFinances` | Просмотр баланса и выплат               |
| `SellerRefunds`  | Управление возвратами                   |
| `SellerManage`   | Просмотр и изменение данных организации |

### Менеджер продукта

Особая роль с доступом, ограниченным **одним курсом или продуктом**. Права менеджера продукта
(`getProductManagerPermissions`) — это подмножество курсовых прав, применяемых только к выбранному продукту:
`CourseManage`, `CourseView`, `CourseCurator`, `CourseReportingView`, `CourseCommentsManage`, `ProductManage`.

<Tip>
  Менеджер продукта — правильный выбор, когда вы приглашаете стороннего эксперта или подрядчика вести один
  курс: он получит доступ только к этому курсу, но не ко всей школе.
</Tip>

## Роли в учебном контексте

Помимо сотрудников, у каждого профиля есть роль в обучении. Она задаётся перечислением `ProfileRole`:

| Роль      | Значение в коде | Назначение                                                |
| --------- | --------------- | --------------------------------------------------------- |
| Ученик    | `Student`       | Основной участник обучения: проходит курсы, сдаёт задания |
| Родитель  | `Parent`        | Связан с учеником, наблюдает за его обучением             |
| Репетитор | `Tutor`         | Индивидуально занимается с учеником                       |

Учеников школы вы создаёте и приглашаете через раздел «Пользователи школы», выдавая им доступы к курсам.

## Сводная таблица: роль → зона ответственности

| Роль              | Тип                   | Ключевые права                                                      | Зона ответственности             |
| ----------------- | --------------------- | ------------------------------------------------------------------- | -------------------------------- |
| Владелец          | Глобальный            | Все права                                                           | Полный контроль над школой       |
| Администратор     | Глобальный            | `SchoolManageSettings`, `SchoolManageUsers`, `SellerManageManagers` | Настройки, пользователи, команда |
| Преподаватель     | Глобальный / продукта | `CourseManage`, `CourseView`                                        | Создание и ведение курсов        |
| Куратор           | Глобальный / продукта | `CourseCurator`, `CourseCommentsManage`                             | Проверка домашних заданий        |
| Менеджер продаж   | Глобальный            | `SellerSales`, `SellerFinances`, `SellerRefunds`                    | Финансы, платежи, возвраты       |
| Менеджер продукта | Продукта              | Курсовые права в рамках одного продукта                             | Один конкретный курс             |
| Ученик            | Учебный               | —                                                                   | Прохождение курсов               |
| Родитель          | Учебный               | —                                                                   | Наблюдение за обучением ученика  |
| Репетитор         | Учебный               | —                                                                   | Индивидуальные занятия           |

<Note>
  Для маркетплейс-платформы (не школьной) существует ещё роль **супер-администратора платформы**
  (право `UserIsAdmin`) — это сотрудники самой площадки, а не вашей школы. Управление такими правами
  доступно только в административном разделе `/admin/users` и к настройкам отдельной школы не относится.
</Note>

<img src="https://mintlify.s3.us-west-1.amazonaws.com/exode-faq/images/online-schools/roles-permissions/managers-list.png" alt="Список сотрудников школы с их ролями и правами" />
