SPML (Service Provisioning Markup Language) Gewijzigd
| Soort standaard | Open standaard |
| Versie | 2.0(11-4-06) |
| Belang | Overige |
| Standaardenorganisatie | OASIS
|
| BelGif categorie | |
| Behoort tot de domeinen | Gebruikers en toegangsbeheer
|
Beschrijving
In een omgeving waar een gebruiker meerdere accounts heeft in disparate systemen kan een automatisch provisioneringsmechanisme veel soelaas brengen. De Service Provisioning Markup Language is een XML-gebaseerd mechanisme om met verschillende accountsystemen te communiceren omtrent de creatie, het beheer en de verwijdering van accountgegevens. Het bindingsmechanisme voor SPML is standaard via webservices (SOAP). SPML v2.0 is onder andere gebaseerd op WS-Provisioning.
Het principe van SPML wordt geïllustreerd aan de hand van volgende figuur, waar diverse systemen met elkaar communiceren in een provisioneringsproces.

In het provisioneringsproces zal een Requesting Authority (RA) communiceren met een Provisioning Service Provider (PSP). Deze PSP zal dan op zijn beurt verschillende Provisioning Service Targets (PST’s) aanroepen. Een PST is de software waarin een bepaalde actie dient ondernomen te worden. In het geval er een nieuwe werknemer wordt aangenomen door de personeelsdienst (in dit geval de RA), zal er automatisch een bericht gestuurd worden naar het accountsysteem in departement A (een PSP). Dit zal de nodige operaties uitvoeren in onderliggende bronnen (PST’s) zoals een LDAP-directory en een database. Het systeem van departement A kan zelf ook SPML-requests sturen naar verdere systemen, zoals dat van departement B.
SPML werkt volgens een request/response-mechanisme. Volgens de specificaties kan dit zowel synchroon, asynchroon als in batch. Er worden ondermeer volgende operaties ondersteund:
- Lijst van PSTs opvragen
- Toevoegen, wijzigen, verwijderen van objecten
- Lookup van één object
- Wachtwoord-operaties zoals wijzigen, reset en valideren
- Search-operaties
Een PSP kan ook bij een vraag van een RA antwoorden met een lijstje van de benodigde attributen voor de creatie van een account. Merk op dat er gesteund kan worden op het DSML-formaat voor het beheer van de gebruikersinformatie.
Alhoewel SPML wordt ontwikkeld binnen een standaardenorganisatie, is het gebruik ervan nog zeer beperkt. Provisioning systemen ondersteunen deze standaard, maar vooral de grote bedrijfspakketten dienen SPML te ondersteunen wil men tot een aanvaarde en gestandaardiseerde provisioningspecificatie komen. Er is ook concurrentie vanuit de wereld van de identiteitsfederatie (Liberty, WS-Federation) die ook een aantal provisioningproblemen probeert op te lossen met zijn eigen specificaties.
Waar ligt dan de link met andere standaarden zoals SAML en XACML? Als de accountsystemen geprovisioneerd zijn met behulp van SPML dan kan SAML gebruikt worden om authenticatie en autorisatiegegevens door te geven. XACML staat dan weer in voor de policies omtrent de autorisaties en het bepalen ervan.
Met de opkomst van SaaS (Software-as-a-Service) en Cloud computing wordt gefedereerd identiteitsbeheer met een provisioneringsproces meer en meer belangrijk. Hier ligt een mooie rol weggelegd voor SPML. In dat opzicht probeerde men in 2010 terug leven te blazen in deze standaard en toe te werken naar SPML v3.
Er is echter een concurrerend initiatief, namelijk SCIM (Simple Cloud Identity Management). Deze specificatie komt er omdat met SPML te complex vindt in eenvoudige Cloud-scenario's. Deze specificatie wordt gedreven door enkele grote spelers zoals Salesforce.com.
