Встановлення дозволів
Безпека AI-School працює на основі ролей з дозволами.
Акаунти та ролі
Акаунти створюються автоматично після успішної першої спроби входу. Під час створення акаунтів на сервері додаються токени:
- учень (так/ні): встановлюється на "так" якщо email-адреса збігається з адресою з списку учнів
- працівник (так/ні): встановлюється на "так" якщо email-адреса збігається з адресою з списку співробітників
- admin (так/ні): завжди встановлюється на "ні" під час першого створення акаунта
- admin ради управління (так/ні): завжди встановлюється на "ні" під час першого створення акаунта
- супер-адмін (так/ні): завжди встановлюється на "ні" під час першого створення акаунта
Зміна ролі
Адміністратор, адміністратор ради управління або супер-адмін може призначати ролі, якщо цей адміністратор має дозволи на призначення ролей.
Наприклад, співробітник може отримати роль admin, якщо адміністратор ради управління або супер-адмін призначає її. Однак адміністратор ніколи не може призначати ролі адміністратор ради управління або супер-адмін.
Зміна ролі супроводжується призначенням нових токенів на сервері.
Дозволи за ролями
У адмін-розділі супер-адміністратор або адміністратор ради управління можуть змінювати дозволи для кожної ролі.

Тут видно ще одну додаткову роль: гість. Це дозволи, які надаються користувачам без входу.
Користувачі без входу повинні мати мінімальні можливості читати основні дані середовищ, інакше не буде можливості зробити вибір на екрані входу.
Будьте дуже обережні з наданням додаткових дозволів для цієї ролі!
Колекції
Дозволи надаються за колекцією. Колекція — це сукупність подібних даних. Так, наприклад, є колекція "Школи" та колекція "Чати".
Встановлення дозволів за замовчуванням бази даних
Лише супер-адміни можуть встановлювати дозволи за замовчуванням бази даних.
Встановлення дозволів за базою даних tenant (tenant)
Після обрання ролі адміністратор може змінити дозволи для кожної колекції в базі даних tenant.

Дозволи читання
Дозволи читання стосуються можливості читати дані з бази даних.
Права можна налаштовувати зростаючим чином:
-
Лише запис: користувач повинен знати унікальний UUID запису
-
Свої записи: лише записи, які створив сам користувач
-
Спільні записи: записи, якими поділилися з користувачем
-
Контрольовані записи: записи, якими керує вчитель, наприклад чати під час уроку або пов’язані з асистентом
-
Записи tenant (Tenant): всі записи tenant на AI-School
-
Усі записи: всі записи AI-School
Оскільки структура бази даних побудована так, що кожен tenant (клієнт) AI-School має власну базу даних, налаштування "Tenant records" вимкнено під час встановлення дозволів в базах даних tenants.
Дозволи перегляду
Тут адміністратор може встановити, чи бачить відповідна роль плитку в адміністративній частині.
Створення, оновлення, видалення дозволи
Ці дозволи призначені для створення, оновлення або видалення записів та налаштовуються per колекція. Права можна зводити зростаючим чином:
-
Свої записи: лише записи, які створив або створив користувач
-
Tenant записи: всі записи tenant на AI-School
-
Усі записи: усі записи AI-School
Оскільки структура бази даних побудована так, що кожен tenant має власну базу даних, налаштування "Tenant records" вимкнено під час встановлення дозволів на бази даних tenants.