Ga naar inhoud

Gebruikers provisioneren met SCIM

Gebruik deze gids als je de levenscyclus wilt beheersen — bij offboarding moet de toegang automatisch worden ingetrokken, niet alleen moeten toekomstige aanmeldingen worden geblokkeerd. SCIM is het pushprotocol dat IdP’s (Okta, Entra ID en andere) precies daarvoor gebruiken.

  • SSO werkt al (de SSO-zelfstudie of de OIDC-gids),
  • een server die de IdP via HTTPS kan bereiken — SCIM-aanroepen komen van de IdP, niet uit de browser van de gebruiker. Gebruik de ingebouwde tunnel (Instellingen → Server → Verbinding en status → Deze server delen → Cloudflared/ngrok/Tailscale) of een openbare URL. Een server die alleen via de WebSocket-relay bereikbaar is, kan geen SCIM-pushes ontvangen; JIT-provisionering werkt daar nog wel, deze gids niet.
  1. Open Instellingen → Server → Single sign-on → de kaart Gebruikersvoorziening (SCIM). De kaart toont het endpoint, bijvoorbeeld https://<your-server>/scim/v2/Users.
  2. Kies Token genereren (of Token opnieuw genereren als er al een bestaat) — het bearer-token verschijnt één keer in een dialoogvenster en wordt naar het klembord gekopieerd. Bewaar het in je wachtwoordmanager; de server bewaart alleen een kopie die in constante tijd te controleren is.
  3. Zet SCIM aan in de provisioneringsinstellingen van je IdP met:
    • Basis-URL: het endpoint hierboven
    • Authenticatie: Authorization: Bearer <token>
    • Gebruikers-id: userName (e-mail) of externalId — beide komen overeen
  4. Test met één gebruiker: push die vanuit de IdP en controleer of die verschijnt (een SCIM-create zet de externalId van de provider vast op het account, dezelfde vastzetting die een eerste SSO-aanmelding doet).

Als de IdP active: false (of DELETE) stuurt, weigert SCIM eerst wanneer het account eigenaar van een werkruimte is (draag eerst het eigenaarschap over). Anders:

  1. elk apparaatinloggegeven wordt eerst ingetrokken — lopende sessies vallen binnen enkele seconden weg,
  2. elk werkruimtelidmaatschap wordt verwijderd,
  3. het account wordt als gedeactiveerd gestempeld (het kan niet meer inloggen, wat de IdP later ook beweert, totdat het expliciet opnieuw wordt geactiveerd).

De gebruikersrij zelf blijft bestaan — toeschrijving op tickets, berichten en commits is permanent. Reactivering (SCIM active: true) herstelt de aanmelding maar niet de lidmaatschappen: daarvoor is een nieuwe uitnodiging nodig of het auto-member-beleid bij het aanmelden.

  • 401 bij elke aanroep — het token is gewijzigd; genereer een nieuw token en werk de IdP bij.
  • Het endpoint is niet bereikbaar — de tunnel ligt eruit, of de server is alleen via de relay bereikbaar. SCIM heeft direct HTTPS nodig; JIT blijft hoe dan ook werken.
  • Fouten bij het pushen van groepen (501) — opzettelijk: de toewijzing groep→rol gebeurt bij het aanmelden op basis van de SAML-/OIDC-groepsattributen, niet vanuit gepushte groepen.