Documentatie/Functies

ABAC en attributen

Wat Attribute-Based Access Control is, hoe ServiceChanger attributen aan groepen koppelt, en hoe je je eerste regels schrijft.

Concept

ABAC staat voor Attribute-Based Access Control. Toegang wordt bepaald door attributen van de user (functie, afdeling, locatie), niet door handmatig toegewezen groepen.

In ServiceChanger leg je vast welk attribuut welke groep oplevert. Die koppeling is de regel. Heeft een user het attribuut, dan zet ServiceChanger hem in de gekoppelde groep. Verandert het attribuut, dan past het lidmaatschap zich aan.

ServiceChanger leest de attributen uit Entra ID. Het schrijft attributen niet terug en wijzigt ze niet. Hoe attributen in Entra terechtkomen (handmatig, via een script of via je eigen sync), blijft jouw keuze.

Attributen, en HR als maatwerk

Standaard reageert ServiceChanger op wat al in Entra staat. Wil je dat een rolwissel automatisch toegang aanpast, dan zorg je dat het bijbehorende attribuut in Entra wordt bijgewerkt. ServiceChanger doet de rest. Wil je je HR-systeem koppelen voor onboarding en offboarding, dan bouwen we dat als maatwerk met automation accounts en runbooks in Azure.

Hoe een regel is opgebouwd

Een regel koppelt een attribuut aan een doelgroep:

  1. Attribuut: de waarde waarop je matcht, bijvoorbeeld functie of afdeling.
  2. Doelgroep: de Entra- of AD-groep die gevuld wordt.
  3. Niveau: attributen hebben een niveau (level1 tot level4) waarmee je breed of smal kunt sturen.
Een eenvoudige conditie ziet er zo uit:

Attribuut: jobTitle contains "Sales"
Doelgroep: Sales-Amsterdam

Samengestelde attributen

Een attribuut kan samengesteld zijn uit twee waarden. Zo koppel je bijvoorbeeld "Sales" en "Amsterdam" tot één attribuut dat alleen de Sales-mensen in Amsterdam pakt. In ServiceChanger heet dat een composed attribute, met een primaire en een secundaire waarde.

Attributen die je kunt gebruiken

Alle standaard Entra ID user attributes, onder meer:

  • jobTitle, department, officeLocation, companyName
  • city, country, state
  • employeeId, employeeType, employeeHireDate
  • extensionAttribute1 tot en met extensionAttribute15 (custom attributen)
  • userType (Member of Guest)
Let op: displayName en mobilePhone kunnen medewerkers vaak zelf wijzigen. Gebruik die niet als basis voor toegang.

Niveaus

Attributen hebben een niveau. Je gebruikt een laag niveau voor brede toegang (iedereen in een land) en een hoger niveau voor specifiekere toegang (een team binnen een afdeling). Group mining gebruikt deze niveaus ook om consolidatie voor te stellen, bijvoorbeeld twee smalle koppelingen vervangen door één breder attribuut.

Begin met een kleine testgroep

Voor een regel breed gaat, test je hem eerst op een kleine testgroep van een paar users. Zo zie je op een beperkte groep of de juiste mensen worden toegevoegd of verwijderd. Klopt het beeld? Pas aan waar nodig en rol de regel daarna breder uit.

Cloud en on-prem

Wijst de regel naar een cloud-only Entra-groep, dan past ServiceChanger de membership aan via Microsoft Graph. Wijst hij naar een on-prem gesynchroniseerde groep, dan loopt de wijziging via het PowerShell-runbook op je hybrid worker en schrijft die terug via Entra Connect. Zie Hybride en on-prem AD.

ServiceChanger herkent of een groep of user on-prem gesynchroniseerd is. Een cloud-only user toevoegen aan een on-prem gemasterde groep kan Microsoft niet, dus die combinatie wordt overgeslagen en gerapporteerd.

Troubleshooting

Users die zouden moeten matchen, matchen niet. Check of het attribuut voor die user gevuld is. Lege attributen leveren geen match.

Regel matcht maar de groep is niet bijgewerkt. Check de status van de groep in Entra ID. On-prem gemasterde of mail-enabled security-groepen accepteren geen membership-writes via Graph.

Te veel users gematcht. De conditie is te breed. Gebruik een specifieker attribuut of een samengesteld attribuut.

Gerelateerd