Dataverse security roles uitgelegd
Beveiliging is een van de belangrijkste aspecten van elke Dataverse-implementatie. Een goed ontworpen beveiligingsmodel zorgt ervoor dat gebruikers precies die data zien die ze nodig hebben, niet meer en niet minder. In dit artikel nemen we je mee van de basisbegrippen tot geavanceerde configuraties die je nodig hebt voor enterprise-implementaties.
Het beveiligingsmodel van Dataverse
Dataverse hanteert een gelaagd beveiligingsmodel dat uit meerdere componenten bestaat. De kern wordt gevormd door security roles die bepalen welke rechten een gebruiker heeft op tabel- en veldniveau. Deze rollen worden toegekend via business units, teams of direct aan individuele gebruikers. Het model werkt volgens het principe van least privilege: gebruikers krijgen standaard geen toegang en je voegt expliciet rechten toe.
Business units en teams
Business units als structuur
Business units vormen de organisatiestructuur binnen Dataverse. Elke omgeving heeft een root business unit waaronder je afdelingen, regio's of divisies kunt aanmaken. Een gebruiker behoort altijd tot precies één business unit. Records die een gebruiker aanmaakt, worden automatisch gekoppeld aan diens business unit. Dit is fundamenteel voor hoe security roles de zichtbaarheid van data bepalen.
Teams voor flexibiliteit
Waar business units rigide zijn, bieden teams flexibiliteit. Een gebruiker kan lid zijn van meerdere teams, elk met eigen security roles. Dataverse kent owner teams (die records kunnen bezitten), access teams (dynamisch samengesteld op basis van templates) en Azure AD-groepsteams (gesynchroniseerd met Entra ID-groepen). Vooral groepsteams zijn krachtig omdat ze automatisch synchroniseren met je identity provider, wat het beheer aanzienlijk vereenvoudigt.
Security roles configureren
Een security role definieert rechten op vier niveaus: Create, Read, Write, Delete, Append, Append To, Assign en Share. Elk recht kan worden ingesteld op vijf bereiken: User (alleen eigen records), Business Unit, Parent-Child Business Units, Organization (alle records) en None (geen toegang). Bij het ontwerpen van rollen is het belangrijk om te beginnen met de minimale rechten die een gebruiker nodig heeft en alleen uit te breiden waar nodig.
Voor Dynamics 365 Sales zijn er voorgedefinieerde rollen zoals Salesperson en Sales Manager die een goed startpunt bieden. Het is echter sterk aan te raden om nooit de standaardrollen direct te bewerken. Maak altijd kopieën en pas die aan, zodat updates van Microsoft je aanpassingen niet overschrijven.
Begin altijd met het principe van least privilege. Het is makkelijker om rechten toe te voegen dan om achteraf te ontdekken dat gebruikers toegang hadden tot data die ze niet hadden mogen zien.
Field-level security en hiërarchie
Field-level security
Soms is tabelniveau-beveiliging niet genoeg. Field-level security stelt je in staat om individuele kolommen te beveiligen. Een verkoper mag bijvoorbeeld wel klantrecords zien, maar niet het veld met jaaromzet. Je configureert dit via field security profiles die je aan gebruikers of teams toewijst. Houd er rekening mee dat field-level security een prestatie-impact kan hebben bij grote datasets, dus gebruik het doordacht.
Hiërarchische beveiliging
Dataverse ondersteunt twee typen hiërarchie: managerhiërarchie en positiehiërarchie. Met managerhiërarchie krijgt een manager automatisch leestoegang tot records van directe en indirecte rapporteurs. Positiehiërarchie biedt meer flexibiliteit doordat het losstaat van de organisatiestructuur. Dit is bijzonder nuttig voor matrixorganisaties waar rapportagelijnen niet altijd de werkelijke samenwerkingsstructuur weerspiegelen.
Best practices en veelgemaakte fouten
De meest voorkomende fout die we bij Breathbase tegenkomen is het toekennen van de System Administrator-rol aan te veel gebruikers. Deze rol geeft volledige toegang tot alles en zou strikt beperkt moeten blijven tot daadwerkelijke beheerders. Een andere veelgemaakte fout is het niet testen van security roles met realistische testdata. Neem de tijd om elk scenario door te lopen en verifieer dat gebruikers precies de juiste toegang hebben. Een gedegen beveiligingsmodel is de basis van elke succesvolle Dynamics 365-implementatie.
