Dokumentace
Centrum nápovědyBezpečnostThreat model
docs/cs/04-security/threat-model.md
Threat model
Tento dokument shrnuje klíčové bezpečnostní hrozby pro OPORA a očekávaný mitigations posture pro multi-tenant B2B SaaS.
Co chránit (assets)
- Tenant-owned business data (Projekty, výsledky, exporty, assets, blueprints).
- Uživatelské identity a session.
- Billing a subscription stav.
- Exportní artefakty (PDF/tabulky), které mohou obsahovat citlivé detaily projektu.
Primární kategorie hrozeb
1) Selhání multi-tenant izolace
Hrozby
- IDOR: přístup k projektu jiného tenanta hádáním identifikátorů.
- Leaky joins: dotazy bez
organizationIdfiltrů.
Mitigace
- Povinný aktivní org kontext pro
/app/*. - Ownership check pro každý přístup ke zdroji (org-scoped).
- Defense-in-depth přes DB omezení a volitelné row-level security politiky.
2) Útoky na autentizaci a session
Hrozby
- Session fixation, krádež tokenů, CSRF (pokud relevantní).
- Credential stuffing a brute-force.
Mitigace
- Secure cookies a server-side validace session.
- Rate limiting a postupné zavedení anomaly detection.
- Neexponovat secrets do client runtime.
Hrozby
- Uživatelé volají write/export akce bez oprávnění.
- UI-only omezení, která lze obejít.
Mitigace
- Server-side enforcement pro všechny akce a citlivá čtení.
- Centrální pořadí guard logiky: auth → org → ownership → RBAC → subscription.
4) Zneužití subscription/billing
Hrozby
- Volání gated funkcí bez entitlementu.
- Manipulace s indikátory plánu.
Mitigace
- Plan entitlements vynucované server-side.
- Billing stav odvozený z autoritativních eventů billing providera.
5) Rizika export pipeline
Hrozby
- Neautorizovaný přístup k exportu.
- Persistované artefakty dostupné cross-tenant.
- Injection do exportních šablon (pokud se templating používá).
Mitigace
- Exporty brát jako privilegované akce s RBAC + plan gating.
- Artefakty ukládat s tenant-scoped access controls.
- Sanitizovat a validovat exportní vstupy; neprovádět neověřený obsah.
6) Supply chain a závislosti
Hrozby
- Zranitelné závislosti, škodlivé balíčky.
Mitigace
- Dependency scanning a “update hygiene”.
- Locked dependencies a runtime s minimálními oprávněními.
Bezpečnostní roadmapa (nezávazná)
- Přidat audit logování pro privilegované akce (změny členů, exporty, billing změny).
- Přidat security review pro změny výpočetního enginu, které ovlivňují compliance výstupy.
- Přidat incident response runbooky pro typické failure módy.