Rollen per gebruiker:
- Drie rollen: beheerder (alles), operator (stacks, containers en backups) en
alleen lezen. Afgedwongen in de before_request-guard, niet alleen in de UI.
- Eigen wachtwoord wijzigen mag iedereen; de laatste beheerder kan niet
gedegradeerd of verwijderd worden.
- Proxy-gebruikers zonder eigen account krijgen AUTH.proxy_role; bestaat er wel
een lokaal account met die naam, dan wint dat account.
- Accounts van voor deze versie hebben geen rol en gelden als beheerder.
Rechtenescalatie verholpen:
- set_password verving het hele gebruikersrecord, waardoor het role-veld
wegviel. Een ontbrekende rol geldt als beheerder (nodig voor bestaande
accounts), dus elke operator of viewer kon zichzelf tot beheerder promoveren
door zijn eigen wachtwoord te wijzigen. Gevonden bij het naspelen van de
rollenflow tegen een draaiende instantie.
Geplande backups draaiden nooit:
- De scheduler stempelde ook taken af die zichzelf hadden overgeslagen. De
backup-taak bewaakt zelf het ingestelde uur, dus die werd afgestempeld op het
moment van de eerste tick; 24 uur later viel het volgende moment op precies
dat verkeerde tijdstip. Een taak stempelt nu alleen af bij True. De
backup-taak draait op een kort interval en beslist zelf, zodat een gewijzigde
planning meteen werkt. BACKUP_SCHEDULE_DAY toegevoegd voor wekelijks.
Verder:
- Zoekveld en tagfilters in de app store; repo's zonder treffers vallen weg.
- Opstartcontrole op de meegeleverde front-end-bestanden: mislukt het downloaden
tijdens de image-build, dan laadde de UI zonder opmaak terwijl de server prima
leek te draaien. Nu een duidelijke melding in het log.
- 227 tests (15 nieuwe voor rollen, 15 voor de scheduler).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C7oLCRYzY5ixJ5Sv8Y8EFb