Wat is een serviceprovider (SP)?
In het domein van Identiteit en toegangsbeheer (Identity and access management, IAM) is een serviceprovider (SP) (of een relying party in de context van OpenID Connect (OIDC) ) een applicatie of dienst die vertrouwt op een Identiteitsprovider (Identity provider, IdP) voor authenticatie en autorisatie. Het is verantwoordelijk voor het leveren van diensten aan gebruikers en het handhaven van Toegangsbeheer (Access control) beleid op basis van de tokens uitgegeven door de identity provider.
Standaarden voor serviceproviders
Er is geen strikte standaard voor serviceproviders, aangezien ze elke soort applicatie of dienst kunnen zijn die identiteitsbeheer vereist. Serviceproviders volgen echter vaak de standaarden die zijn vastgesteld door de identity provider waarop ze vertrouwen. Bijvoorbeeld, als de identity provider OpenID Connect (OIDC) ondersteunt, zal de serviceprovider doorgaans OIDC gebruiken voor authenticatie en autorisatie.
Architectuur van serviceproviders
De term “serviceprovider” specificeert geen bepaalde architectuur of implementatie. Meestal moeten serviceproviders geregistreerd zijn bij de identity provider om vertrouwen te vestigen en beveiligde communicatie mogelijk te maken. Het registratieproces omvat doorgaans het uitwisselen van metadata en client credentials.
In de context van OpenID Connect omvat de serviceprovider metadata bijvoorbeeld:
- Client ID: Een unieke identificator voor de serviceprovider.
- Client secret: Een gedeeld geheim dat wordt gebruikt om de serviceprovider te authenticeren.
- Redirect URIs : De URI’s waar de identity provider gebruikers na authenticatie en autorisatie naar terug zal leiden.
Zodra geregistreerd, kan de serviceprovider het Authenticatie (Authentication) proces starten door gebruikers naar de door de identity provider opgegeven endpoint te sturen.
Wanneer serviceproviders gebouwd zijn voor niet-interactieve use cases, worden ze vaak aangeduid als clients die Machine-tot-machine (machine-to-machine) communicatie vereisen.