Ga naar inhoud
SCIM-provisioning

SCIM-provisioning

Met SCIM-provisioning beheert je identity provider (IdP) — bijvoorbeeld Microsoft Entra ID — mTime-gebruikers automatisch. Wanneer iemand in je directory wordt aangenomen, gewijzigd of uit dienst gaat, roept de IdP het SCIM 2.0-endpoint van mTime aan en wordt de gebruiker aangemaakt, bijgewerkt of gedeactiveerd zonder dat iemand mTime aanraakt.

Groepslidmaatschappen in de IdP komen overeen met mTime-rollen: iemand toevoegen aan een gekoppelde groep kent de rol toe, verwijderen trekt hem in.

SCIM-provisioning en automatisch inrichten sluiten elkaar uit — één systeem beheert de gebruikerslijst tegelijk. Het inschakelen van de SCIM-provisioning-integratie schakelt Gebruikers automatisch inrichten uit, en die instelling blijft vergrendeld totdat de integratie weer wordt uitgeschakeld.

Wie is eigenaar van wat

SysteemEigenaar van
Je IdPWelke gebruikers bestaan en wie lid is van welke groep (= welke rol heeft)
mTime-beheerdersWat elke rol mag (machtigingen)
Je HR-systeemMedewerkers, dienstverbanden en de organisatiestructuur — ook de namen van medewerkers, tenzij je de IdP medewerkers laat benoemen

De IdP kan nooit de machtigingen van een rol wijzigen — alleen het bestaan en de leden ervan. Gebruikers en groepen zelf beheer je in je IdP: zodra SCIM-provisioning draait, maak, wijzig en verwijder je ze daar, niet in mTime.

Hoe gebruikers worden geprovisioned

  1. De IdP stuurt een nieuwe gebruiker — altijd met zijn e-mailadres, en optioneel een stabiel personeelsnummer (het SCIM-veld externalId, dat nooit gevuld hoeft te worden).
  2. mTime zoekt de bijbehorende medewerker, in deze volgorde:
    • Op personeelsnummer — alleen wanneer de instelling Koppel externalId aan een medewerkerattribuut van de integratie naar een medewerkerattribuut wijst en de IdP een externalId heeft gestuurd: de medewerker die dat nummer in het gekoppelde attribuut draagt, wint.
    • Op e-mailadres — anders (of wanneer het nummer bij niemand paste) wordt de medewerker met hetzelfde e-mailadres gebruikt, ongeacht hoofd- of kleine letters.
    • Geen van beide gevonden? Er wordt nog geen medewerker aangemaakt — de gebruiker wordt een concept.
  3. Met een gevonden medewerker wordt de gebruiker aangemaakt als uitgenodigd met de rol employee (plus manager als hij leidinggeeft aan iemand) en ontvangt de gebruikelijke uitnodigingsmail. Na activering meldt hij zich gewoon aan (bijv. “Aanmelden met Microsoft”).

Gebruikers zonder medewerker (concepten)

Niet iedereen die je IdP aanmaakt is medewerker — een IT-beheerder of een externe auditor heeft misschien alleen een rol als workspace-admin of read-only nodig. Daarom maakt mTime alleen een medewerker aan als een rol dat vereist:

  • Zonder gevonden medewerker wordt de gebruiker aangemaakt als concept: geen medewerker, geen rol en geen uitnodigingsmail. Een concept kan zich niet aanmelden.
  • Wanneer de IdP de gebruiker aan een groep toevoegt, krijgt hij de rol van die groep. Vereist die rol een medewerker (employee, manager of een aangepaste rol met Vereist een gekoppelde werknemer ), dan koppelt mTime eerst de gevonden medewerker — of maakt een minimaal record aan (naam, e-mail — plus het nummer, wanneer gekoppeld), dat je HR-integratie later aanvult.
  • De eerste rol van een concept verstuurt de uitnodigingsmail.
  • Wordt een gebruiker uit zijn laatste groep verwijderd, dan heeft hij geen rol meer en kan hij zich niet aanmelden tot een groep hem weer een rol geeft. Een eventuele medewerker blijft gekoppeld.

Waar het personeelsnummer wordt opgeslagen

Een externalId sturen is optioneel, en het gebruik ervan staat standaard uit. Stuurt je IdP er wél een, dan onthoudt mTime het op de gebruiker — hiermee herkent de IdP de gebruiker bij latere synchronisaties. Wil je dat het nummer ook de medewerkerkoppeling stuurt, kies dan een medewerkerattribuut in de instelling Koppel externalId aan een medewerkerattribuut van de integratie: gekoppelde en nieuw aangemaakte medewerkers dragen het nummer dan in dat attribuut (zichtbaar in de attributensectie van de medewerkerpagina), en zo houdt ook je HR-integratie de records verbonden. Standaard is er niets gekoppeld en werkt de koppeling alleen op het e-mailadres.

De naam uit de identiteitsprovider voor medewerkers gebruiken

Standaard blijft de naam die je IdP stuurt op de gebruiker: de gekoppelde medewerker houdt de naam die in mTime of door je HR-integratie wordt bijgehouden, en die zie je in roosters, rapporten en salarisexports. Een naamswijziging in de IdP (een huwelijk, een correctie, een roepnaam) verandert dus de login, niet de medewerker. Moet je IdP de namen overal bepalen, zet dan de instelling Namen van de identiteitsprovider gebruiken als medewerkernamen van de integratie aan: bij het aanmaken of bijwerken van een gebruiker wordt de naam uit de IdP dan ook op de gekoppelde medewerker gezet, en elke naamswijziging wordt met de vervangen naam vastgelegd in Beheer › Integratielogboek.

  • Het werkt vanaf de volgende SCIM-update van elke gebruiker; aanzetten hernoemt bestaande medewerkers niet. Wil je een naam meteen doorvoeren, voer dan vanuit de IdP provisioning op aanvraag uit voor die gebruiker.
  • De naam uit de IdP gaat dan voor een naam die in mTime of door een HR-integratie wordt bijgehouden. Synchroniseert ook een HR-integratie namen, dan overschrijven ze elkaar steeds — laat de instelling uit als HR de namen beheert.

Deactiveren en verwijderen

  • Wanneer de IdP een gebruiker uitschakelt, wordt deze in mTime geschorst en direct uitgelogd. Opnieuw inschakelen heractiveert de gebruiker.
  • Wanneer de IdP een gebruiker verwijdert, voert mTime de normale zachte verwijdering uit — het account wordt verwijderd, maar de geschiedenis (tijdregistraties, goedkeuringen, de medewerkerrecord) blijft bewaard.
Uitnodigingslinks verlopen na 7 dagen. Gebruikers die niet op tijd hebben geactiveerd, kunnen opnieuw worden uitgenodigd vanaf de gebruikerspagina (“Uitnodiging opnieuw verzenden”, per gebruiker of voor alle wachtenden).

Hoe groepen rollen worden

  • Een nieuwe IdP-groep maakt een lege aangepaste rol (zonder machtigingen) met de naam van de groep. Deze verschijnt op de rollenpagina, waar een beheerder bepaalt wat de rol mag.
  • Een groep waarvan de naam exact overeenkomt met een bestaande rol wordt aan die rol gekoppeld — geen duplicaten.
  • Groepsleden hebben de gekoppelde rol; lidmaatschapswijzigingen in de IdP kennen deze automatisch toe en trekken hem in. Rollen die zo worden beheerd, dragen de badge “Beheerd door IdP-groep”, en handmatige lidmaatschapswijzigingen worden bij de volgende synchronisatie van de IdP teruggezet.
Een rol gekoppeld aan een IdP-groep op de rollenpagina
Een rol gekoppeld aan een IdP-groep op de rollenpagina
  • De rol owner kan nooit via SCIM worden beheerd.
  • Voor een bestaande rol (inclusief ingebouwde zoals hr-admin of workspace-admin) mag de IdP het lidmaatschap pas beheren nadat een workspace-eigenaar de rol heeft vrijgegeven: open de rol op de rollenpagina en voeg provisioning toe onder Kan worden toegewezen door. Het opslaan van een rol wijzigt deze lijst nooit vanzelf.
  • Het verwijderen van een groep in de IdP ontkoppelt de leden. De rol zelf wordt alleen verwijderd als het nog de ongeconfigureerde lege rol was — een door een beheerder geconfigureerde rol blijft bestaan.

Wat synchroniseert wanneer

Je IdP praat op twee manieren met mTime, en die gedragen zich niet hetzelfde:

Geplande provisioningcyclusOn-demand provisioning
Wanneer draait hetAutomatisch — eerst een volledige synchronisatie, daarna incrementele cycli (in Entra ongeveer elke 40 minuten)Wanneer je het handmatig start voor één gebruiker of groep
Aanmaken en bijwerkenJaJa
Uitschakelen en verwijderenJaNee — deactiveringen en verwijderingen worden alleen toegepast door de geplande cyclus

On-demand provisioning is ideaal om de verbinding en de toewijzingen te testen, maar wees niet verrast als een gebruiker die je in de IdP hebt uitgeschakeld of verwijderd nog actief is in mTime — die wijziging komt mee met de volgende geplande cyclus, niet on demand.

Instellen

Volg de stapsgewijze handleiding: SCIM instellen met Microsoft Entra ID. Die behandelt alles — de mTime-instellingen, de provisioning-servicegebruiker en zijn API-sleutel, de Entra enterprise-applicatie, de attribuuttoewijzingen en hoe je test voordat je live gaat.

Beveiligingsnotities

  • De API-sleutel is gebonden aan je workspace, werkt alleen op de SCIM-endpoints en kan op elk moment worden ingetrokken vanuit de sleutellijst van de servicegebruiker — intrekken sluit de IdP direct buiten.
  • Er kan maar één provisioning-servicegebruiker per workspace bestaan; roteer inloggegevens op sleutelniveau (maak een nieuwe sleutel, werk de IdP bij, trek de oude in).
  • Elke wijziging via SCIM wordt vastgelegd in de wijzigingsgeschiedenis, toegeschreven aan de provisioning-servicegebruiker.