Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Algemeen 

System for Cross-domain Identity Management (SCIM) is een open standaard voor het uitwisselen van identiteitsgegevens tussen IT-systemen via RESTful webservices.   
WebIDM implementeert

  • SCIM 2.0 protocol RFC 7644
  • SCIM

    Algemeen 

    System for Cross-domain Identity Management (SCIM) is een open standaard voor het uitwisselen van identiteitsgegevens tussen IT-systemen via RESTful webservices.   
    WebIDM implementeert

    Dit document dient enkel ter verduidelijking van de SCIM implementatie door WebIDM. Het gedrag van de web service wordt uitgebreid beschreven in RFC 7644. 

    Aandachtspunten bij de SCIM implementatie van WebIDM:    

    • Er wordt geen gebruik gemaakt van het PATCH verb om resources te wijzigen, enkel PUT wordt gebruikt waarmee de resource volledig wordt vervangen door de nieuwe waarde. 

    • Enkel het User schema werd geïmplementeerd. Er wordt geen gebruik gemaakt van het Group schema. Meer informatie: RFC 7642.

    WebIDM is in de context van bovenstaande RFC de Enterprise Cloud Subscriber (ECS).    
    De applicatie die informatie ontvangt van WebIDM neemt hier de rol van Cloud Service Provider (CSP) op, verder Service Provider genoemd. 

    Business proces proces 

    Aanmaak van een gebruiker gebruiker 

    Een gebruiker wordt aangemaakt wanneer deze minstens één werkrelatie heeft met een toegekend recht in WEBIDM.

    Volgende informatie wordt minstens doorgegeven: 

    Categorie 

    WebIDM attribuut

    Beschrijving

    Verplicht

    SCIM property

    Medewerker

    info 

    info 

     

     

     

    VO-id/ 

    VirtualIdentity

    UUID 

    UUID 

    Unieke id binnen een doelgroep (GID, Economische actoren, Lokale Besturen, Onderwijs) 

    •   

    externalId

    Voornaam 

    Voornaam 

     

    •   

    name.givenName

    Achternaam 

    Achternaam 

     

    •   

    name.familyName

    Status

     

    •   
    active 

    active 

    Link medewerker – organisatie info (werkrelatie) 

     

    Organisatiecode   

    Organisatiecode   

    Unieke sleutel van de organisatie (zoals OVO, KBO nummer,…).

    Wordt toegevoegd aan e-mailadressen, rechten of contexten. 

    *Verplicht wanneer e-mailadres, recht of context geprovisioneerd wordt.

    •  *
    Gebruikersrechten 


    Gebruikersrechten 

    Het recht voor een bepaalde organisatie (werkrelatie).

    Formaat: 


    Formaat

    Categorie 

    WebIMD attribuut

    Beschrijving

    Verplicht

    SCIM property

    Medewerker info 

    Login 

    Unieke gegenereerde gebruikersnaam

    Heeft geen vast formaat

    •   

    userName 

    INSZ-nummerRijksregister- of BISnummer 
    •   
    urn:ietf:params:scim:schemas:extension:idm:2.0:User.socialSecurityNumberDoelgroepcodeDe code van de doelgroep waar de gebruiker en zijn werkrelatie onder zijn aangemaakt.

    Fully Qualified of Simple 

    Fully Qualified[Organisatiecode]-[Categorie key]:[Categorie waarde],[Account type key:Account type waarde,…]-[Recht] 

    • Categorie key: afhankelijk van doelgroep van de werkrelatie. Bv doelgroep GID: Categorie

    • Categorie waarde: afhankelijk van doelgroep van de werkrelatie en geselecteerde waarde. Bv doelgroep GID: Vlaamse Overheid Ambtenaar

    • Type acccount key: afhankelijk van doelgroep van de werkrelatie. Bv doelgroep GID: Gebruikerstype

    • Account type waarde: afhankelijk van doelgroep van de werkrelatie en geselecteerde waarde(s) op de werkrelatie. Bv doelgroep GID: Normale accounts

    •   

    entitlements (lijst) 

    Volgende informatie kan optioneel worden doorgegeven: 

    Expand
    titleVoorbeeld


    OVO001827-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts,Gebruikerstype:Geprivilegieerde accounts-DKB_Traject_GID_CompEnt_Gebruiker 
    2165906862-Categorie:Werknemer,Type:Standaard-LV_eLoket_LB_CompEnt_Gebruiker
    0207500123-Categorie:Werknemer,Type:Standaard-LV_eLoket_LB_CompEnt_Gebruiker



    Simple: [Recht] 

    Opgelet: dit formaat is onnauwkeurig en verliest cruciale informatie. Dit formaat kan enkel gebruikt worden indien de werkrelatie-informatie niet relevant is.

    Expand
    titleVoorbeeld

    AgO_VlimpersLeren_GID_CompEnt_Gebruiker 


    •   

    entitlements (lijst) 

    Volgende informatie kan optioneel worden doorgegeven: 

    Categorie 

    WebIMD attribuut

    Beschrijving

    Verplicht

    SCIM property

    Medewerker info 

    Login 

    Unieke gegenereerde gebruikersnaam

    Heeft geen vast formaat

    Expand
    titleVoorbeeld

    lastnafi (met als formaat 6 letters lastname +  2 letters firstname) 


    •   

    userName 

    INSZ-nummer

    Rijksregister- of BISnummer 

    •   

    urn:ietf:params:scim:schemas:extension:idm:2.0:User.

    closedUserGroupCodeurn:

    socialSecurityNumber

    en/of

    De context (zoals Rol, Maatregel,

    Doelgroepcode

    De code van de doelgroep waar de gebruiker en zijn werkrelatie onder zijn aangemaakt.

    •   

    urn:ietf:params:scim:schemas:extension:idm:2.0:User.closedUserGroupCode

    en/of

    urn:ietf:params:scim:schemas:extension:idm:2.0:Cug.code

    Doelgroepnaam

    De naam van de doelgroep waar de gebruiker en zijn werkrelatie onder zijn aangemaakt.

    •   

    urn:ietf:params:scim:schemas:extension:idm:2.0:Cug.name

    Link medewerker – organisatie info (werkrelatie) 





    E-mailadressen

    Het e-mailadres wordt opgeslagen op niveau van de werkrelatie, maar is niet noodzakelijk verschillend per werkrelatie.  
    Kan ook leeg zijn. 
    Wordt samen met organisatiecode opgeslagen waardoor de link werkrelatie-email gemaakt wordt. 


    Opgelet: WebIDM heeft geen notie van een primair e-mail adres, alle adressen hebben als waarde voor attribuut primary false.

    •   

    emails (lijst) 

    Telefoonnummers 

    Is niet noodzakelijk verschillend per werkrelatie. 

    Wordt samen met organisatiecode opgeslagen waardoor de link werkrelatie-email gemaakt wordt en bevat een typering (vast nummer, mobiel nummer,…) 

    •   

    phoneNumbers (lijst) 

    Contexten 

    Expand
    titleVoorbeeld


    Code Block
    {
      "value": "webidm@vlaanderen.be",
      "type": "OVO000089"
    }



    •   

    emails (lijst) 

    Telefoonnummers 

    Is niet noodzakelijk verschillend per werkrelatie. 

    Wordt samen met organisatiecode opgeslagen waardoor de link werkrelatie-telefoonnummer gemaakt wordt.

    Expand
    titleVoorbeeld


    Code Block
    {
      "value": "+32000000",
      "type": "OVO000089"
    }



    •   

    phoneNumbers (lijst) 

    Contexten 

    De context (zoals Rol, Maatregel, Domein,..) binnen een bepaald recht.

    Formaat:

     Fully Type acccount key: afhankelijk van doelgroep van de

     Fully Qualified

    Fully Qualified: [Organisatiecode]-[Categorie key]:[Categorie waarde],[Account type key:Account type waarde,…]-[Recht]:[Contextwaarde] 

    • Categorie key: afhankelijk van doelgroep van de werkrelatie. Bv doelgroep GID: Categorie

    • Categorie waarde: afhankelijk van doelgroep van de werkrelatie en geselecteerde waarde. Bv doelgroep GID: Vlaamse Overheid Ambtenaar

    • Type acccount key: afhankelijk van doelgroep van de werkrelatie. Bv doelgroep GID: Gebruikerstype

    • Account type waarde: afhankelijk van doelgroep van de werkrelatie en geselecteerde waarde(s) op de werkrelatie. Bv doelgroep GID: Normale accounts

    •   

    roles (lijst) 

    Contexten 

    De context (zoals Rol, Maatregel, Domein,...) binnen een bepaald recht.

    Formaat: Fully Qualified of Simple

    Fully Qualified: [Organisatiecode]-[Categorie key]:[Categorie waarde],[Account type key:Account type waarde,…]-[Recht]:[Contextwaarde] 

  • Categorie key: afhankelijk van doelgroep van de werkrelatie. Bv doelgroep GID: Categorie
  • Categorie waarde: afhankelijk van doelgroep van de werkrelatie en geselecteerde waarde. Bv doelgroep GID: Vlaamse Overheid Ambtenaar
  • Expand
    titleVoorbeeld


    OVO001827-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts,Gebruikerstype:Geprivilegieerde accounts-DKB_Traject_GID_CompEnt_Gebruiker:normale gebruiker 
    2165906862-Categorie:Werknemer,Type:Standaard-LV_eLoket_LB_CompEnt_Gebruiker:BetalingRaadpleger
    0207500123-Categorie:Werknemer,Type:Standaard-LV_eLoket_LB_CompEnt_Gebruiker:BetalingBeheerder




    •   

    roles (lijst) 

    Contexten 

    De context (zoals Rol, Maatregel, Domein,...) binnen een bepaald recht.

    Formaat: Fully Qualified of Simple

    Fully Qualified: [Organisatiecode]-[Categorie key]:[Categorie waarde],[Account type key:Account type waarde,…]-[Recht]:[Contextwaarde] 

    • Categorie key: afhankelijk van doelgroep van de werkrelatie. Bv doelgroep GID:

    Gebruikerstype
    • Categorie

    Account type
    • Categorie waarde: afhankelijk van doelgroep van de werkrelatie en geselecteerde waarde

    (s) op
    • . Bv doelgroep GID: Vlaamse Overheid Ambtenaar

    • Type acccount key: afhankelijk van doelgroep van de werkrelatie. Bv doelgroep GID:

    Normale accounts

    Simple: [Contextwaarde] 

    Opgelet dit formaat is onnauwkeurig en verliest cruciale informatie. Dit formaat kan enkel gebruikt worden indien de werkrelatie - of recht informatie niet belangrijk is.

    •   

    groups (lijst) 

    Wijzigen van een gebruiker 

    Een update actie wordt uitgevoerd: 

    • Als de informatie van de gebruiker of van een bestaande werkrelatie wijzigt. 
      Vb: nieuw emailadres, nieuwe login, naamswijziging,…​ 
    • Als er werkrelaties worden toegevoegd of verwijderd. 
      Vb: gebruiker werkt niet langer bij een organisatie of een gebruiker gaat bij een extra organisatie werken.  
      Opmerking: Er moet wel altijd minstens 1 actieve werkrelatie overblijven, anders is het een delete en geen update.  

    Verwijderen van een gebruiker 

    Een delete
    • Gebruikerstype

    • Account type waarde: afhankelijk van doelgroep van de werkrelatie en geselecteerde waarde(s) op de werkrelatie. Bv doelgroep GID: Normale accounts

    Expand
    titleVoorbeeld


    OVO001827-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts,Gebruikerstype:Geprivilegieerde accounts-DKB_Traject_GID_CompEnt_Gebruiker:normale gebruiker
    OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker:BetalingRaadpleger
    0207500123-Categorie:Werknemer,Type:Standaard-LV_eLoket_LB_CompEnt_Gebruiker:BetalingBeheerder




    Simple: [Contextwaarde] 

    Opgelet: dit formaat is onnauwkeurig en verliest cruciale informatie. Dit formaat kan enkel gebruikt worden indien de werkrelatie - of recht informatie niet belangrijk is.

    Expand
    titleVoorbeeld


    normale gebruiker 
    BetalingRaadpleger
    BetalingBeheerder



    •   

    groups (lijst) 

    Wijzigen van een gebruiker 

    Een update actie wordt uitgevoerd: 

    • Als de gebruiker

      zijn laatste actieve werkrelatie verliest en niet langer verbonden is met een organisatie.

    De Service Provider moet gebruikers op zijn minst inactief maken bij een delete en alle gekende rechten verwijderen. 

    Pauzeren 

    WebIDM heeft een pauzeer-knop op niveau van de gebruiker, werkrelatie en recht. Dit laat de lokale beheerder toe om delen van een gebruiker tijdelijk te inactiveren, bv bij langdurige ziekte.​ 

    Pauzeren zal lijken op toekenningen die verdwijnen in WebIDM: 

    • Updates met daarin minder werkrelaties of rechten dan de Service Provider op dat moment kent. 

    Actief/niet-actief vlag 

    Op niveau van een gebruiker bestaat een vlag die enkel systeembeheerders kunnen aan- of uitzetten om gebruikers in uitzonderlijke gevallen dringend te deactiveren zonder deze helemaal te moeten verwijderen. 
    Ook bij de Service Provider moeten a.d.h.v. deze vlag gebruikers ge-activeerd of gedeactiveerd worden. 
    Dit zijn update acties, geen delete acties. 

    Technisch implementatie 

    SCIM Endpoint 

    De targetapplicatie waar WebIDM naar provisioneert, moet minstens volgende functionaliteit in zijn SCIM endpoints implementeren: 

    • Find User
    • Create User
    • Update User
    • Delete User

    Find User 

    GET v2/Users?filter=externalId Eq "{externalId}"

    externalId
    string4ad4896c-2f09-4906-ba25-32d5543bd71bResponsesCodeDescriptionExample200OK
    (one result)200OK
    (No results)

    Create User 

    Het aanmaken van de User gebeurt d.m.v. een POST request om de User aan te maken. Deze POST bevat naast persoonsgegevens ook de rechten en indien geconfigureerd optionele attributen als e-mailadressen of rollen. 

    POST v2/Users

    BodyResponsesCodeDescriptionExample201Created

    De body bevat een volledige weergave van de aangemaakte resource. 

    409ConflictAls de service provider vaststelt dat de creatie van de User conflicteert met een bestaande User moet er een status 409 teruggegeven worden met een "scimType" error code van "uniqueness", as per Section 3.12.

    Update User 

    PUT v2
    • een nieuwe actieve toekenning van het recht krijgt onder een werkrelatie.
      Actief wilt hier zeggen:
      De start tijd van de werkrelatie is kleiner dan of gelijk aan vandaag.
      De eind tijd van de werkrelatie is groter dan of gelijk aan vandaag.
      De start tijd van de toekenning van het recht is kleiner dan of gelijk aan vandaag.
      De eind tijd van de toekenning van het recht is groter dan of gelijk aan vandaag.
      De werkrelatie is actief, niet gepauzeerd.
      De toekenning van het recht is actief, niet gepauzeerd.

    • Als de gegevens van een actieve toekenning van het recht wijzigt.
      Vb: Context (rol) wordt toegevoegd, verwijderd of aangepast

    • Als een actieve toekenning van het recht verwijderd wordt.

    • Als de eind tijd van de toekenning van het recht kleiner is dan vandaag. Ofwel: de actieve toekenning van het recht verloopt.

    • Als de informatie van de gebruiker of van een bestaande werkrelatie (met actieve toekenning van het recht) wijzigt. 
      Vb: nieuw emailadres, nieuwe login, naamswijziging,…​ 

    • Als de toekenning van het recht gepauzeerd wordt.

    • Als de werkrelatie met actieve toekenning van het recht gepauzeerd wordt.

    Verwijderen van een gebruiker 

    Een delete actie wordt uitgevoerd: 

    • Als de gebruiker zijn laatste actieve toekenning van het recht verliest.

    De Service Provider moet gebruikers op zijn minst inactief maken bij een delete en alle gekende rechten verwijderen. 

    Pauzeren 

    WebIDM heeft een pauzeer-knop op niveau van de werkrelatie en recht. Dit laat de lokale beheerder toe om delen van een gebruiker tijdelijk te inactiveren, bv bij langdurige ziekte.​ 

    Pauzeren zal lijken op toekenningen die verdwijnen in WebIDM: 

    • Updates met daarin minder werkrelaties of rechten dan de Service Provider op dat moment kent. 

    Actief/niet-actief vlag 

    Op niveau van een gebruiker bestaat een vlag die enkel systeembeheerders kunnen aan- of uitzetten om gebruikers in uitzonderlijke gevallen dringend te deactiveren zonder deze helemaal te moeten verwijderen. 
    Het pauzeren van een volledige gebruiker zal een update uitvoeren met de SCIM active property op false. 
    Ook bij de Service Provider moeten a.d.h.v. deze vlag gebruikers ge-activeerd of gedeactiveerd worden. 
    Dit zijn update acties, geen delete acties. 

    Technisch implementatie 

    SCIM Endpoint 

    De targetapplicatie waar WebIDM naar provisioneert, moet minstens volgende functionaliteit in zijn SCIM endpoints implementeren: 

    • Find User

    • Create User

    • Update User

    • Delete User

    OpenAPI specificatie

    scim.yaml

    Deze kan bekeken worden op https://editor.swagger.io/

    Find User 

    GET v2/Users?filter=externalId Eq "{externalId}"


    externalId
    string

    4ad4896c-2f09-4906-ba25-32d5543bd71b

    Responses

    Code

    Description

    Example

    200

    OK
    (one result)


    Expand
    titleFind User one result response



    Code Block
    {
      "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
      ],
      "totalResults": 1,
      "resources": [
        {
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:User",
            "urn:ietf:params:scim:schemas:extension:idm:2.0:User",
            "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug"
          ],
          "id": "e65adc36-cb15-4b4d-b8df-cb6cba347f8c",
          "externalId": "4ad4896c-2f09-4906-ba25-32d5543bd71b",
          "userName": null,
          "name": {
            "formatted": null,
            "familyName": "B",
            "givenName": "Tim",
            "middleName": null,
            "honorificPrefix": null,
            "honorificSuffix": null
          },
          "displayName": null,
          "nickName": null,
          "profileUrl": null,
          "title": null,
          "userType": null,
          "preferredLanguage": null,
          "locale": null,
          "timezone": null,
          "active": true,
          "emails": [
            {
              "type": "OVO000089",
              "primary": false,
              "display": null,
              "value": "webidm@vlaanderen.be"
            }
          ],
          "entitlements": [
            {
              "type": null,
              "primary": false,
              "display": null,
              "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker"
            }
          ],
          "roles": [
            {
              "type": null,
              "primary": false,
              "display": null,
              "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker:BetalingBeheerder"
            },
            {
              "type": null,
              "primary": false,
              "display": null,
              "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker:BetalingRaadpleger"
            }
          ],
          "groups": [],
          "x509Certificates": [],
          "phoneNumbers": [],
          "ims": [],
          "photos": [],
          "addresses": [],
          "urn:ietf:params:scim:schemas:extension:idm:2.0:User": {
            "closedUserGroupCode": "GID",
            "socialSecurityNumber": "1234567890"
          },
          "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug": {
            "code": "GID",
            "name": "VO-medewerkers"
          },
          "meta": {
            "resourceType": "User",
            "created": "2021-09-17T05:07:11.517Z",
            "lastModified": "2021-09-17T05:07:11.517Z",
            "location": "http://scim/wslenv/v2/users/e65adc36-cb15-4b4d-b8df-cb6cba347f8c",
            "version": null
          }
        }
      ],
      "startIndex": 1,
      "itemsPerPage": 200
    }





    200

    OK
    (No results)


    Expand
    titleFind User no result response


    Code Block
    {
      "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
      ],
      "totalResults": 0
    }



    Create User 

    Het aanmaken van de User gebeurt d.m.v. een POST request om de User aan te maken. Deze POST bevat naast persoonsgegevens ook de rechten en indien geconfigureerd optionele attributen als e-mailadressen of rollen. 

    POST v2/Users



    Body




    Expand
    titleCreate User request


    Code Block
    {
      "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User",
        "urn:ietf:params:scim:schemas:extension:idm:2.0:User",
        "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug"
      ],
      "externalId": "4ad4896c-2f09-4906-ba25-32d5543bd71b",
      "name": {
        "familyName": "B",
        "givenName": "Tim"
      },
      "active": true,
      "emails": [
        {
          "value": "webidm@vlaanderen.be",
          "type": "OVO000089"
        }
      ],
      "entitlements": [
        {
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker"
        }
      ],
      "roles": [
        {
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker:BetalingBeheerder"
        },
        {
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker:BetalingRaadpleger"
        }
      ],
      "groups": [],
      "addresses": [],
      "phoneNumbers": [],
      "ims": [],
      "photos": [],
      "x509Certificates": [],
      "urn:ietf:params:scim:schemas:extension:idm:2.0:User": {
        "closedUserGroupCode": "GID",
        "socialSecurityNumber": "1234567890"
      },
      "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug": {
        "code": "GID",
        "name": "VO-medewerkers"
      }
    }



    Responses

    Code

    Description

    Example

    201

    Created

    De body bevat een volledige weergave van de aangemaakte resource. 

    Expand
    titleCreate User response


    Code Block
    {
      "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User",
        "urn:ietf:params:scim:schemas:extension:idm:2.0:User",
        "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug"
      ],
      "id": "e65adc36-cb15-4b4d-b8df-cb6cba347f8c",
      "externalId": "4ad4896c-2f09-4906-ba25-32d5543bd71b",
      "userName": null,
      "name": {
        "formatted": null,
        "familyName": "B",
        "givenName": "Tim",
        "middleName": null,
        "honorificPrefix": null,
        "honorificSuffix": null
      },
      "displayName": null,
      "nickName": null,
      "profileUrl": null,
      "title": null,
      "userType": null,
      "preferredLanguage": null,
      "locale": null,
      "timezone": null,
      "active": true,
      "emails": [
        {
          "type": "OVO000089",
          "primary": false,
          "display": null,
          "value": "webidm@vlaanderen.be"
        }
      ],
      "entitlements": [
        {
          "type": null,
          "primary": false,
          "display": null,
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker"
        }
      ],
      "roles": [
        {
          "type": null,
          "primary": false,
          "display": null,
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker:BetalingBeheerder"
        },
        {
          "type": null,
          "primary": false,
          "display": null,
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker:BetalingRaadpleger"
        }
      ],
      "phoneNumbers": [],
      "ims": [],
      "photos": [],
      "addresses": [],
      "groups": [],
      "x509Certificates": [],
      "urn:ietf:params:scim:schemas:extension:idm:2.0:User": {
        "closedUserGroupCode": "GID",
        "socialSecurityNumber": "1234567890"
      },
      "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug": {
        "code": "GID",
        "name": "VO-medewerkers"
      },
      "meta": {
        "resourceType": "User",
        "created": "2021-09-17T05:07:11.517760498Z",
        "lastModified": "2021-09-17T05:07:11.517760498Z",
        "location": "http://scim/wstest/v2/users/e65adc36-cb15-4b4d-b8df-cb6cba347f8c",
        "version": null
      }
    }



    409

    Conflict

    Als de service provider vaststelt dat de creatie van de User conflicteert met een bestaande User moet er een status 409 teruggegeven worden met een "scimType" error code van "uniqueness", as per Section 3.12.

    Update User 

    PUT v2/Users/{id}


    id
    String

    e65adc36-cb15-4b4d-b8df-cb6cba347f8c



    Body




    Expand
    titleUpdate User request

    Volgende gewijzigd ten opzichte van Create User : familyName en emails aangepast, roles BetalingBeheerder verwijderd.

    Code Block
    {
      "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User",
        "urn:ietf:params:scim:schemas:extension:idm:2.0:User",
        "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug"
      ],
      "id": "e65adc36-cb15-4b4d-b8df-cb6cba347f8c",
      "externalId": "4ad4896c-2f09-4906-ba25-32d5543bd71b",
      "name": {
        "familyName": "C",
        "givenName": "Tim"
      },
      "active": true,
      "emails": [
        {
          "value": "new-webidm@vlaanderen.be",
          "type": "OVO000089"
        }
      ],
      "entitlements": [
        {
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker"
        }
      ],
      "roles": [
        {
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker:BetalingRaadpleger"
        }
      ],
      "groups": [],
      "addresses": [],
      "phoneNumbers": [],
      "ims": [],
      "photos": [],
      "x509Certificates": [],
      "urn:ietf:params:scim:schemas:extension:idm:2.0:User": {
        "closedUserGroupCode": "GID",
        "socialSecurityNumber": "1234567890"
      },
      "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug": {
        "code": "GID",
        "name": "VO-medewerkers"
      }
    }




    Responses

    Code

    Description

    Example

    200

    OK

    De body bevat een volledige weergave van de resource.

    Expand
    titleUpdate User response


    Code Block
    {
      "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User",
        "urn:ietf:params:scim:schemas:extension:idm:2.0:User",
        "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug"
      ],
      "id": "e65adc36-cb15-4b4d-b8df-cb6cba347f8c",
      "externalId": "4ad4896c-2f09-4906-ba25-32d5543bd71b",
      "userName": null,
      "name": {
        "formatted": null,
        "familyName": "C",
        "givenName": "Tim",
        "middleName": null,
        "honorificPrefix": null,
        "honorificSuffix": null
      },
      "displayName": null,
      "nickName": null,
      "profileUrl": null,
      "title": null,
      "userType": null,
      "preferredLanguage": null,
      "locale": null,
      "timezone": null,
      "active": true,
      "emails": [
        {
          "type": "OVO000089",
          "primary": false,
          "display": null,
          "value": "new-webidm@vlaanderen.be"
        }
      ],
      "entitlements": [
        {
          "type": null,
          "primary": false,
          "display": null,
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker"
        }
      ],
      "roles": [
        {
          "type": null,
          "primary": false,
          "display": null,
          "value": "OVO000089-Categorie:Vlaamse Overheid Ambtenaar,Gebruikerstype:Normale accounts-LV_eLoket_GID_CompEnt_Gebruiker:BetalingRaadpleger"
        }
      ],
      "phoneNumbers": [],
      "ims": [],
      "photos": [],
      "addresses": [],
      "groups": [],
      "x509Certificates": [],
      "urn:ietf:params:scim:schemas:extension:idm:2.0:User": {
        "closedUserGroupCode": "GID",
        "socialSecurityNumber": "1234567890"
      },
      "urn:ietf:params:scim:schemas:extension:idm:2.0:Cug": {
        "code": "GID",
        "name": "VO-medewerkers"
      },
      "meta": {
        "resourceType": "User",
        "created": "2021-09-17T05:07:11.517760498Z",
        "lastModified": "2021-09-17T05:07:11.517760498Z",
        "location": "http://scim/wstest/v2/users/e65adc36-cb15-4b4d-b8df-cb6cba347f8c",
        "version": null
      }
    }
    
    



    Delete User 

    DELETE v2/Users/{id}


    id
    String

    e65adc36-cb15-4b4d-b8df-cb6cba347f8c

    Body

    Responses

    Code

    Description

    Example

    200

    204

    OK

    De body bevat een volledige weergave van de resource.

    201Created

    No content

    De Service Provider zet de User minstens op inactief als er voor gekozen wordt om de resource niet definitief te verwijderen.

    404

    Not found

    User was voorheen deleted/op inactief gezet

    of nog niet gecreëerd. De body bevat een volledige weergave van de resource.

    Delete User 

    DELETE v2/Users/{id}

    id
    Stringe65adc36-cb15-4b4d-b8df-cb6cba347f8cResponsesCodeDescriptionExample204No content

    De Service Provider zet de User minstens op inactief als er voor gekozen wordt om de resource niet definitief te verwijderen.

    404Not found

    User was voorheen deleted/op inactief gezet.

    Health check 

    .

    Expand
    titleDelete onbestaande user response


    Code Block
    {
      "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:Error"
      ],
      "detail": "Resource e65adc36-cb15-4b4d-b8df-cb6cba347f8c not found",
      "status": "404"
    }



    Health check 

    Een health check service moet geïmplementeerd worden door de Service Provider. WebIDM beslist aan de hand van de respons of er een provisionering kan gestart worden.  

    GET https

      

    GET https://[yourScimEndpoint]/statuscheck

    Responses

    Code

    Description

    Result

    200

    OK

    provisionering kan starten

    4xx
    5xx


    provisionering on hold,

     er

     er worden door WebIDM geen gegevens uitgeleverd aan de Service Provider

    Beveiliging Beveiliging 

    Voor het beveiligen van de communicatie tussen WebIDM en de SCIM Service Provider ondersteunen we enkel MutualTLS (mTLS) authenticatie. 
    Naast deze beveiligingsmaatregelen, moeten mogelijks ook de nodige datastromen voorzien worden tussen WebIDM en de Service Provider.    

    MutualTLS

    Voor een veilige verbinding, zowel over het lokaal netwerk binnen VO als over het internet, moeten WebIDM en de SCIM Service Provider MutualTLS authenticatie implementeren, waarbij beide partijen zich authenticeren tegenover elkaar d.m.v. X509 certificaten. 
    De SCIM Service Provider moet het client certificaat van WebIDM vertrouwen. Daarnaast moet de SCIM Service Provider een GlobalSign of VO PKI SSL server certificaat voorzien dat WebIDM kan vertrouwen. 

    Verschillen tegenover vorige versie

    • WebIDM houdt de ID die wordt gecreëerd door de Service Provider bij. De Service Provider ondersteunt de Find User by externalId. Als WebIDM en de Service Provicer out of sync geraken wordt de Find User gebruikt om de Service Provider ID op te halen.

    • WebIDM doet enkel calls naar de Service Provider indien er wijzigingen zijn. In de vorige versie kon het gebeuren dat er calls gemaakt werden naar de Service Provider ook al was er voor die specifieke User resource niets gewijzigd, maar wel in andere rechten van die Gebruiker.

    • Het aanmaken van een gebruiker gebeurt aan de hand van één enkele Create User call. In de vorige versie was dit 1 Create User call gevolgd door 1 of meedere Update User calls.

    • De SCIM User property Groups wordt ondersteund. De waarde hiervan kan Fully Qualified of Simple zijn.

    Op deze pagina: 

    Table of Contents

    Relevante pagina's

    FAQ

    Attributen IDM

    EAWS Web service 

    Het Rechtenmodel van het Gebruikersbeheer

    Volledig informatiemodel

    Live Search
    spaceKeyGAEP
    placeholderStel je vraag?
    labelsidm, gebruikersbeheer


    Info

    Vragen of suggesties, contacteer ons via: integraties@vlaanderen.be 

    Heb je nood aan ondersteuning bij het gebruik van de toepassing, contacteer de 1700.