SECURITY
Enterprise-grade изоляция
Данные клиентов не пересекаются. Ключи API с гранулярными правами. Fail-closed на термоданных в prod.
Контроли платформы
Tenant isolation
organizationId на каталоге, планах, ключах и ApiRequestLog.
RBAC
OWNER, ADMIN, OPERATOR, VIEWER. Invite-only signup.
API scopes
packing:compute, packing:read, catalog:read. Revoke по prefix.
Fail-closed thermal
В prod без mock: THERMAL_DATA_MISSING вместо выдуманных данных.
Custom domain verify
TXT _loadflow-verify перед выдачей трафика.
Sessions
better-auth, секрет ≥ 32 символов, TRUSTED_ORIGINS.
Audit
Действия platform admin и история планов.
Dedicated option
Изоляция железом для regulated клиентов.
Fail-closed по умолчанию
В production при LOGISTICS_USE_MOCK_THERMAL=0 отсутствие thermal map по сегменту маршрута - это THERMAL_DATA_MISSING, а не угадайка по средней температуре.
Данные организаций не пересекаются: organizationId на каталоге, планах, API-ключах и ApiRequestLog. Ключ с scope packing:compute не читает чужой каталог.
Custom domain выдаётся только после TXT _loadflow-verify. Сессии - better-auth с секретом ≥ 32 символов и TRUSTED_ORIGINS.
Нужен security review?
Пришлите чеклист ИБ - разберём RBAC, scopes, audit и вариант dedicated deployment.