name: data-security-storage description: Prisma migrations, file storage, SSRF protection, and secrets handling rules. metadata: short-description: Data safety rules (Prisma/files/SSRF/encryption/idempotency)
Data + Security + Storage — Prisma, файлы, SSRF, secrets
Prisma / миграции
- по умолчанию только additive изменения (новые таблицы/nullable колонки/индексы)
- NOT NULL делать двухфазно (nullable → backfill → not null)
Idempotency
- mobile/lifestyle write: обязателен
Idempotency-Key - повтор ключа → вернуть тот же результат
- reuse ключа для другого payload → 409
Файловые хранилища (volumes)
- BACKUP_DIR (/data/backups)
- AUTOTUNE_DIR (/data/autotune)
- MEALS_DIR (/data/meals)
- HEALTH_DIR (/data/health)
- UI_ASSETS_DIR (/data/ui-assets)
Файлы:
- ограничение типа и размера
- отдача файлов через backend (auth/ACL)
- soft delete для документов (Health Vault)
Secrets & encryption
- в БД: AES-256-GCM, ключ ENCRYPTION_KEY_BASE64
- никогда не логировать и не отдавать в браузер
SSRF
- запрет localhost/private IP
- запрет creds в URL
- редиректы: только безопасные правила