Принципы безопасности
betool спроектирован для регулируемых сред. Безопасность не является слоем, добавленным задним числом: это инвариант, определяющий каждую строку кода, каждую миграцию, каждый модуль.
1. Строгая мультитенантность
Каждая организация владеет своими собственными данными, pipeline, секретами, файлами и ключами LLM. Изоляция обеспечивается:
- На уровне базы данных — каждая бизнес-таблица содержит индексированный столбец
org_id, а серверные запросы всегда фильтруются по организации сессии. - На уровне файловой системы — у каждой организации есть собственный корень в
<data_root>/orgs/<org_id>/. Никаких общих путей. - На уровне кэша — кэши раздельны по организациям; ни одной общей записи без явного флага
is_shared = TRUE. - На уровне секретов — у каждой организации собственное хранилище, собственные ключи API, собственные токены. Никакого глобального запасного варианта.
2. Обязательный аудит межтенантного доступа
Некоторым ролям (как правило, учётным записям операторов платформы на стороне поставщика) может потребоваться доступ к контенту другой организации в целях поддержки. Такой доступ:
- Обусловлен согласием (opt-in) целевой организации — отзываемым в любой момент из панели администратора.
- Регистрируется при каждом обращении — выделенная таблица аудита с областью действия по целевой организации, доступная клиентам через маршрут
GET /api/admin/me/*-reads. - Отклоняется в случае сбоя записи аудита — никакого чтения без следа.
См. Аудит и GDPR.
3. Мотивированный отказ при деструктивных операциях
Любая операция, которая уничтожает или заменяет контент другой организации (REPLACE-IN-PLACE дочерних элементов, DELETE), отклоняется, если целевая организация не активировала согласие на чтение. Обоснование: без видимости оператор предложил бы полезную нагрузку, которая могла бы вслепую перезаписать существующий контент.
4. Суверенность модели LLM
- Нативная поддержка BYOK — ваши ключи OpenAI, Anthropic и Mistral управляются вашей организацией. Никакой межорганизационной утечки.
- Приватные модели в тарифе Enterprise — Ollama, vLLM, размещённые на вашем собственном оборудовании или в вашем частном облаке. Промпты и ответы никогда не покидают ваш периметр.
- Никакого скрытого общего пула — если организация использует общую модель, это явное решение с контролем доступа.
Инженерная позиция
Наш стандарт — точность: максимальная устойчивость, полная наблюдаемость, детерминизм, защита от галлюцинаций, защита от регрессий, тесты на каждом шагу.
Конкретно, при любом компромиссе на уровне архитектуры / кода / промпта:
| Выбор | Ожидаемый выбор | Почему |
|---|---|---|
| Задержка × 2 против сокращённого рассуждения | × 2 | Потерянная точность возвращается доверием пользователей |
| Детальная наблюдаемость против только основных логов | Детальная | Без видимости отладка слепа |
| Ускорение, ухудшающее поведение | Отказ | Поведенческий риск измеряется инцидентами у клиентов |
Мантра: «Если кто-то находит баг, это значит, что мы поставили недостаточно предохранителей, а не слишком много».