Разделы
Начало работы
Быстрый стартCLI-флаги и конфиг
SQL
Диалект FileDB SQLDDLDMLSELECTФункции и выраженияТранзакции
Клиенты
HTTP APIНативные драйверыPostgreSQL / MySQL wire-протоколБинарный RPC
Возможности
RBAC (multi-user)Эмбеддинги (семантический поиск)Импорт файловБэкапыДемо-режим-витрина и управление .fdb
Эксплуатация
ДеплойАрхитектураFileDB на Windows: трей и автозагрузка
Справка
Сравнение с PostgreSQL / MySQL
AI
AI-функции: обзорAI-чат и AI-агентУмный экспорт и AI-маппинг импортаЭмбеддинги и гибридный поискНастройка AI: провайдеры и пресеты
Дашборды
Дашборды: обзорДатасеты и чартыNo-Code конструктор запросовAI-ассистент дашбордовВиджеты, сетка и фильтрыПубличные ссылки и экспортРаскладка, текстовые карточки и KPI-сравнение

RBAC (multi-user)

FileDB поддерживает два режима аутентификации:

  1. Single-password (по умолчанию) — один пароль через флаг -password, полный доступ.
  2. RBAC — multi-user, включается наличием файла data/users.json.

Модель действует единообразно для HTTP API, Web UI и wire-протоколов PostgreSQL/MySQL — одни и те же учётки, роли и доступ к БД везде.

Создание пользователей

./filedb -data ./data -add-user alice -add-user-password "secret" -add-user-role admin
./filedb -data ./data -add-user bob   -add-user-password "secret" -add-user-role read
./filedb -data ./data -add-user carol -add-user-password "secret" -add-user-role write -add-user-dbs shop,logs

Роли

  • admin — полный доступ ко всем БД, управление пользователями.
  • write — SELECT/INSERT/UPDATE/DELETE на разрешённых БД, без DDL.
  • read — только SELECT/SHOW/EXPLAIN на разрешённых БД.

databases: ["*"] — доступ ко всем базам; список имён — только к перечисленным.

Управление пользователями через API

# список (без хешей паролей)
curl $URL/api/rbac/users -H "X-Token: $TOKEN"

# создать
curl -X POST $URL/api/rbac/users -H "X-Token: $TOKEN" -H "Content-Type: application/json" 
  -d '{"username":"frank","password":"x","role":"write","databases":["db1.fdb"]}'

# изменить роль/пароль/базы
curl -X PUT $URL/api/rbac/users/frank -H "X-Token: $TOKEN" -d '{"role":"read"}'

# удалить
curl -X DELETE $URL/api/rbac/users/frank -H "X-Token: $TOKEN"

Web UI для управления — /rbac (только admin).

Защитные ограничения

Нельзя удалить свой аккаунт; нельзя удалить или понизить в правах последнего admin'а; в RBAC-режиме single-password игнорируется; после нескольких неудачных попыток входа учётка блокируется на время — и через HTTP, и через wire-протоколы.

Похожие страницы
← Назад
Бинарный RPC
Далее →
Эмбеддинги (семантический поиск)