docs: update security status in technical documentation for backend and Flutter frontend
Test Suite / test (24.15.0) (push) Has been cancelled

- Added detailed security status section in backend documentation, outlining implemented security features and remaining risks as of 2026-05-07.
- Included security features implemented in Flutter, emphasizing auth-gating, token storage, and limitations regarding web security.
This commit is contained in:
Nils-Johan Gynther
2026-05-07 10:48:35 +02:00
parent 5b1aec6449
commit 943e449c97
3 changed files with 357 additions and 635 deletions
+25
View File
@@ -44,6 +44,31 @@ Bygg och drift sker pa Linux/Ubuntu i containeriserad miljo.
- Auth-gate i router med redirect logik
- `guardedApiCall()` hanterar logout vid 401
## Sakerhetsstatus (2026-05-07)
Denna sektion sammanfattar sakerhetsfunktioner som ar implementerade i Flutter-klienten och hur de fungerar tekniskt.
### Implementerat i Flutter
- Auth-gating i routing:
- Router-lagret stoppar navigation till skyddade vyer utan token/session.
- Om backend returnerar 401 i ett skyddat API-flode hanterar `guardedApiCall()` detta och triggar logout/omdirigering.
- Token-lagring via plattformsabstraktion:
- `ITokenStorage` definierar kontraktet (`getToken/saveToken/deleteToken`).
- Web-implementation (`WebTokenStorage`) lagrar token i `SharedPreferences` (web: localStorage).
- Arkitekturen gor att mobil implementation kan bytas till `flutter_secure_storage` utan att ovrig appkod andras.
- Minimerad klientside-auktorisering:
- Flutter forlitar sig pa backend som auktoritetskalla for access-kontroll.
- Klienten skickar bearer-token men gor inte egen resurstagarskapslogik som kan divergera fran serverregler.
- Kontraktsstyrd API-hantering:
- API-lagret accepterar 2xx pa importanrop och centraliserar felhantering.
- Minskar risken for ad-hoc felhantering i UI och inkonsekvent beteende vid auth-fel.
### Viktig begransning (web)
- Flutter Web kan inte anvanda `httpOnly` cookies enbart pa klientsidan.
- Nuvarande lagring i localStorage ar en praktisk kompromiss for web och innebar att XSS-hardening pa frontend och strict backend-headers/CSP ar fortsatt viktiga.
## API- och kontraktsprinciper
- Flutter foljer backend-kontrakt, ingen lokal speciallogik for matchning.