Ga naar inhoud

Account & authenticatie — overzicht en rolmatrix

Deze sectie beschrijft de volledige account- en authenticatie-omgeving van gereformeerdebond.nl zoals die vandaag functioneert: inloggen, wachtwoordbeheer, registratie, de accountpagina's, de predikant-omgeving en de afscherming van de digitale uitgaven. Elke pagina bevat acceptatiecriteria die als testkader dienen voor de headless Next.js-rebuild.

Frontend-relevante rollen

Rol (slug) Naam Betekenis op de site
— (anoniem) Bezoeker zonder login
subscriber Subscriber Kan inloggen, maar heeft géén WV-abonnee-rechten (bv. GB-lid met account)
wv-subscriber WV Abonnee Digitale abonnee De Waarheidsvriend: toegang tot /uitgaven/*, paywall open
pastor Predikant Toegang tot /predikant-gegevens/; staat in de publieke predikantenlijst
administrator, gb-admin, wv-admin, tr-admin, cgc-admin Beheerrollen Backend-rollen; frontend alleen relevant voor de admin bar

Rollen zijn combineerbaar: een predikant met digitaal abonnement heeft pastor én wv-subscriber en krijgt de vereniging van beide gedragingen.

Roltoekenning wv-subscriber is import-gestuurd

De rol wv-subscriber wordt toegekend en ingetrokken door de periodieke WP All Import van het abonneebestand (matching op relatienummer of e-mail). Wie niet in de laatste import zit, verliest de rol automatisch. Geseede testaccounts zijn hiervan uitgezonderd (zie Testaccounts).

Rolmatrix: wie ziet wat

Pagina / feature Anoniem subscriber wv-subscriber pastor Beheerrollen*
/inloggen/ (loginformulier) formulier ingelogd-status ingelogd-status ingelogd-status ingelogd-status
/registreren/ (formulier 17) formulier formulier formulier formulier formulier
/account/ (formulier 18) 200 + melding "U moet ingelogd zijn…" formulier formulier formulier + link naar predikant-gegevens formulier
/wachtwoord-wijzigen/ (formulier 25) 200 + melding formulier formulier formulier formulier
/predikant-gegevens/ (formulier 24) 403 403 403 formulier 403
/uitgaven/ en /uitgaven/{slug}/ 403 403 toegang 403 403
WV-artikel mét paywall-marker afgekapt afgekapt volledig afgekapt afgekapt
Nieuwsbrief-editie (single) 404 preview preview preview preview
Admin bar zichtbaar verborgen verborgen zichtbaar
Accountdropdown in topbar "Inloggen"-link dropdown dropdown dropdown dropdown

* Beheerrollen krijgen geen impliciete toegang tot /uitgaven/* of /predikant-gegevens/: de checks zijn zuiver op de rollen wv-subscriber resp. pastor, niet op capabilities. Dit is bewust huidig gedrag; voor de rebuild is dit een beslispunt.

Accountnavigatie

De accountnavigatie verschijnt op drie plekken met identieke logica: de topbar-dropdown ("Ingelogd als: {voornaam achternaam}"), de sidenav op de account-templates en de uitgaven-pagina. Kop: "Ingelogd: {aanhef} {voornaam} {achternaam}" (alleen als voor- of achternaam bekend is).

Item Link Zichtbaar wanneer
Waarheidsvriend digitaal /uitgaven rol wv-subscriber
Mijn account /account rol wv-subscriber óf pastor
Predikant gegevens /predikant-gegevens rol pastor
Wachtwoord wijzigen /wachtwoord-wijzigen altijd (ingelogd)
Uitloggen logout, terug naar /inloggen altijd (ingelogd)

Uitgelogd tonen topbar én header een "Inloggen"-link naar /inloggen/.

Redirects na inloggen

Situatie Doel
Login via /inloggen/ (widget), rol wv-subscriber /uitgaven/ (filter overschrijft de shortcode-redirect)
Login via /inloggen/ (widget), overige rollen /account/
Login via wp-login.php, rol wv-subscriber /uitgaven/
Uitloggen (topbar/sidenav) /inloggen
Uitloggen (loginwidget) /

Pagina's in deze sectie

  1. Inloggen/inloggen/, loginwidget, foutmeldingen, redirects
  2. Wachtwoord vergeten — WordPress-lostpassword-flow
  3. Registreren/registreren/, formulier 17 met known_user-mechanisme
  4. Mijn account/account/, formulier 18
  5. Wachtwoord wijzigen/wachtwoord-wijzigen/, formulier 25
  6. Predikant-gegevens/predikant-gegevens/, formulier 24 + opt-out
  7. Uitgaven-toegang — afscherming digitale uitgaven
  8. App-authenticatie (gb-app/v1) — token-mechanisme voor de app
  9. Testaccounts — seeder en benodigde testrollen

Bekende afwijkingen (sectie-breed)

Niet nabouwen in Next.js, wel vermelden in het testrapport

  • Ingelogde gebruikers met alléén rol subscriber zien in de dropdown geen "Mijn account"-item, maar /account/ werkt wél als ze de URL kennen (template checkt alleen op ingelogd-zijn). Inconsistent; voor de rebuild één consistente regel kiezen.
  • De 2FA-plugin two-factor-authentication is op productie actief, maar de configuratie (welke rollen) is niet geïnventariseerd. Vóór het schrijven van definitieve login-testscripts verifiëren of site-gebruikers hiermee te maken krijgen.
  • De V2-template (in ontwikkeling) heeft in de account-dropdown nog placeholder-links (#) voor alle items behalve Uitloggen.