Files
itworx-knowledge-hub-Public/docs/guides/eerste-installatie-en-aanmelden.md
T

78 lines
3.7 KiB
Markdown

# Eerste installatie, aanmelden en wachtwoordherstel
Deze gids beschrijft de M1-functionaliteit: de eenmalige eerste installatie, aanmelden
en afmelden, rolbeheer en operator-herstel van een vergeten wachtwoord. Geschreven voor
de beheerder die de installatie uitvoert.
## Eerste installatie (eenmalig)
Wanneer de toepassing voor het eerst opstart, bestaat er nog geen beheerdersaccount.
Elke bezoeker ziet dan het installatiescherm.
1. **Vul het installatieformulier in:** een naam voor de werkruimte, uw naam,
e-mailadres en een wachtwoord van minimaal 12 tekens.
2. Na een geslaagde installatie bent u automatisch aangemeld als beheerder en kan het
installatiescherm nooit meer opnieuw gebruikt worden.
Er is geen "installatie ongedaan maken"-knop in de toepassing. Dat is opzettelijk: een
volledige nieuwe installatie vereist een operator die de database opnieuw opzet volgens
`docs/18-backup-restore.md` (M7).
## Aanmelden en afmelden
- Meld aan met e-mailadres en wachtwoord op het aanmeldscherm.
- Na 5 mislukte pogingen wordt het account tijdelijk vergrendeld (15 minuten). De
toepassing geeft dezelfde generieke foutmelding voor een onbekend account, een
verkeerd wachtwoord én een vergrendeld account, zodat een aanvaller niet kan afleiden
welk geval van toepassing is — behalve bij een vergrendeling, die wel expliciet als
"te veel pogingen" wordt gemeld zodat een legitieme gebruiker weet dat hij moet
wachten.
- Een sessie duurt maximaal 12 uur, ongeacht activiteit.
- "Afmelden" beëindigt de sessie onmiddellijk.
## Gebruikers en rollen beheren
Alleen een beheerder kan andere gebruikers aanmaken via `POST /api/v1/admin/users` (de
webinterface hiervoor volgt in een latere milestone; de API is al volledig functioneel
en getest). Beschikbare rollen:
| Rol | Rechten |
|---|---|
| Lezer | Bekijken en zoeken van toegestane inhoud. |
| Redacteur | Lezer-rechten plus inhoud aanmaken en bewerken. |
| Beheerder | Redacteur-rechten plus gebruikers, herstelcodes, imports en systeeminstellingen. |
Er moet altijd minstens één ingeschakelde beheerder overblijven: de toepassing weigert
een wijziging die dat zou doorbreken (bijvoorbeeld de laatste beheerder degraderen of
uitschakelen).
Een gebruiker uitschakelen (`enabled: false`) maakt **bestaande** aanmeldsessies van die
gebruiker onmiddellijk ongeldig — niet pas bij een volgende aanmeldpoging.
## Wachtwoord vergeten (operator-herstel)
Er is geen e-mailprovider nodig. Een beheerder geeft een eenmalige herstelcode uit:
1. Beheerder roept `POST /api/v1/admin/users/{userId}/recovery-tokens` aan (via de
webinterface in een latere milestone, of rechtstreeks via de API met een geldige
beheerderssessie).
2. De ruwe herstelcode wordt **precies één keer** getoond, in het antwoord van die
aanroep. Ze wordt nergens anders opgeslagen — alleen een niet-omkeerbare
verificatiewaarde blijft bewaard.
3. Geef de code veilig door aan de gebruiker (bijvoorbeeld persoonlijk of via een
bestaand vertrouwd kanaal — nooit via een onbeveiligd kanaal).
4. De gebruiker dient de code en een nieuw wachtwoord in bij
`POST /api/v1/auth/recovery/redeem`.
5. De code werkt maar één keer en verloopt na 1 uur. Na een geslaagd herstel worden alle
bestaande sessies van die gebruiker ongeldig — de gebruiker moet opnieuw aanmelden
met het nieuwe wachtwoord.
## Wat een gewone gebruiker nooit kan zien
- Of een bepaald e-mailadres al dan niet een account heeft (aanmeldfoutmeldingen zijn
altijd generiek).
- Of de installatie al dan niet is voltooid, verder dan het installatiescherm tonen of
verbergen.
- Inhoud, gebruikers of instellingen van een andere werkruimte (de eerste uitgave
gebruikt één werkruimte, maar de autorisatie is daar al op voorbereid).