Rolgebaseerde toegang in een klantportaal: veiligheid op elk niveau
Geef elke gebruiker precies de juiste rechten in je klantportaal met rolgebaseerde toegangscontrole. Veilig en schaalbaar.

Organisaties die een klantportaal aanbieden, bedienen vaak meerdere contactpersonen per klantaccount: van de directeur die financiele overzichten wil zien tot de projectmanager die alleen projectvoortgang volgt. Zonder granulaire toegangscontrole krijgt iedereen dezelfde informatie te zien, wat zowel een beveiligingsrisico als een bruikbaarheidsprobleem oplevert. Rolgebaseerde toegangscontrole (RBAC) zorgt ervoor dat elke gebruiker exact die modules, documenten en acties ziet die bij zijn of haar verantwoordelijkheid passen. Dit vermindert de kans op onbedoelde datalekken, vereenvoudigt de interface per gebruiker en maakt het portaal geschikt voor complexe organisatiestructuren met meerdere afdelingen en vestigingen.
Hoe werkt het?
De RBAC-implementatie is gelaagd opgebouwd. Op het hoogste niveau definieer je rollen, zoals Beheerder, Financieel Contactpersoon, Projectmanager en Alleen-lezen. Elke rol bevat een set permissions die bepalen welke API-endpoints en UI-componenten toegankelijk zijn. De permissies worden opgeslagen in een relationeel model met drie tabellen: users, roles en permissions, gekoppeld via een role_permissions-tussentabel. Bij authenticatie ontvangt de gebruiker een JWT-token dat zijn rollen bevat. De API-middleware valideert bij elk verzoek of de gebruiker de benodigde permissie heeft voor het aangevraagde endpoint. Op de frontend worden UI-elementen conditioneel gerenderd op basis van dezelfde roldata, zodat knoppen, menuopties en pagina's die niet toegankelijk zijn, ook niet zichtbaar zijn. Voor klantorganisaties met meerdere vestigingen ondersteunen we ook scope-based access: een vestigingsmanager ziet alleen data van zijn eigen locatie. Het rollenbeheer is beschikbaar via een admin-paneel waar klantenorganisaties zelf rollen kunnen aanmaken, bewerken en toewijzen.
Mogelijkheden
Flexibel rollenmodel
Onbeperkt aantal aangepaste rollen met granulaire permissies per module, actie en dataScope.
Scope-based access
Beperk datazichtbaarheid per vestiging, afdeling of projectgroep voor multi-locatie organisaties.
Self-service rollenbeheer
Klantbeheerders wijzen zelf rollen toe en beheren gebruikers binnen hun organisatie via het portaal.
Audit logging
Elke rolwijziging en toegangspoging wordt gelogd met tijdstempel, gebruiker en IP-adres voor compliance.
Integratiemogelijkheden
Azure Active Directory
Single Sign-On en automatische rolsynchronisatie via SAML of OpenID Connect met Azure AD.
Supabase Auth
Gebruikersbeheer met Row Level Security policies die direct aansluiten op het RBAC-model.
Implementatiestappen
- 1
Rollenanalyse
Workshop met de klant om gebruikersprofielen, verantwoordelijkheden en benodigde permissies in kaart te brengen.
- 2
Datamodel ontwerp
Opzetten van users, roles en permissions tabellen met Row Level Security policies op databaseniveau.
- 3
API-middleware
Implementatie van permissie-checks op elke API-route met gestandaardiseerde middleware-functies.
- 4
Frontend conditionale rendering
React-componenten die UI-elementen tonen of verbergen op basis van de actieve gebruikersrol.
- 5
Admin-paneel
Bouw van het beheerderspaneel waar klantorganisaties rollen aanmaken, bewerken en toewijzen.
- 6
SSO-integratie
Optionele koppeling met Azure AD of Google Workspace voor Single Sign-On en automatische provisioning.
Gebruikerservaring
Gebruikers zien een opgeruimde interface die alleen de voor hen relevante onderdelen toont. Er zijn geen grayed-out knoppen of foutmeldingen bij ongeautoriseerde acties; het portaal voelt voor iedere rol als een op maat gemaakte applicatie.
Technische stack
Beveiliging
Permissies worden zowel server-side als client-side afgedwongen. De JWT bevat alleen rol-ID's, niet de volledige permissieset, om token-grootte te beperken. Kritieke acties vereisen herbevestiging via wachtwoord of 2FA.
Onderhoud
Regulier onderhoud omvat het bijwerken van roldefinities bij nieuwe modules, security-audits van permissielogica en updates van SSO-certificaten. Geschatte kosten: €250-500 per maand.
Veelgestelde vragen
Kunnen klanten zelf rollen beheren zonder onze tussenkomst?
Ja. Het admin-paneel stelt klantbeheerders in staat om zelf rollen aan te maken, permissies toe te wijzen en gebruikers te beheren. Superadmin-rollen blijven altijd onder jullie controle.
Ondersteunen jullie Single Sign-On met ons bestaande identiteitssysteem?
We ondersteunen SAML 2.0 en OpenID Connect, waardoor integratie met Azure AD, Google Workspace, Okta en andere identity providers mogelijk is.
Wat gebeurt er als iemand probeert toegang te krijgen tot een pagina waarvoor hij geen rechten heeft?
De pagina is simpelweg niet zichtbaar in de navigatie. Bij een directe URL-poging wordt de gebruiker teruggeleid naar het dashboard met een korte melding dat de pagina niet beschikbaar is.
Deze functionaliteit nodig in uw product?
Wij bouwen het precies zoals uw business het nodig heeft, zonder onnodige complexiteit.
