OAuth2.0 Client Credentials (private key JWT)

OAuth2.0 Client Credentials (private key JWT)

Authenticatie van een machine van datadienstgebruiker en datadienstaanbieders op datadienst niveau is mogelijk met een JSON Web Token getekend met een Electronic seal uitgegeven onder de eIDAS verordening.

Interactiemodel voor ophalen access token

In de onderstaande figuur staat het interactiemodel beschreven voor de variant waarbij een access token kan worden opgehaald met een getekende JWT. Dit interactiemodel bestaat uit drie kern-elementen om een access token te kunnen ophalen: het ophalen van de lijst van vertrouwde certificaat autoriteiten, het valideren van het certificaat, en het controle van de status van de partij. Dit interactiemodel is volledig in lijn met de authenticatie flow van iSHARE. Voor meer details over de werking van de specifieke endpoints en de implementatie hiervan zie API specifications.

Merk op, in dit voorbeeld interactiemodel haalt een datadienstgebruiker een access token op bij een datadienstaanbieder. De rollen kunnen ook anders ingevuld worden afhankelijk van de situatie, bijvoorbeeld als een datadienstaanbieder een token opvraagt bij een marktvoorziening.

/

Ophalen lijst van vertrouwde Certificaatautoriteit

Elk verzoek voor een access token in het DSGO moet altijd ondertekend zijn door een certificaat dat is uitgegeven door een certificaatautoriteit op de vertrouwde lijst van DSGO. Elke deelnemer kan de vertrouwde lijst opvragen bij de /trusted_list endpoint van de stelselcatalogus, zie /trusted_list voor meer details.

Certificaat validatie

Een verzoek voor een access token bevat een getekende Basis JWT om informatie over de identiteit van de aanvrager te communiceren. Wanneer een partij een verzoek ontvangt voor een access token, moet de ontvangende partij het certificaat waarmee deze is getekend valideren.

DSGO.Basis: Partijen MOETEN verifiëren dat het certificaat waarmee de Basis JWT is getekend uitgegeven en ondertekend is door een certificaatautoriteit op de vertrouwde lijst van DSGO

DSGO.Basis: Partijen MOETEN verifiëren dat het certificaat waarmee Basis JWT is getekend valide is

Controle status partij

Nadat het certificaat van de aanvrager is gecontroleerd, moet de identiteit van de partij en haar status binnen het DSGO gecontroleerd worden. De identiteit van de partij wordt geauthenticeerd door de identiteit vanuit het certificaat te vergelijken met die in het verzoek om een access token, voor meer informatie zie /token endpoint. De status van een partij binnen het DSGO kan worden gecontroleerd bij de /parties endpoint van de stelselcatalogus, zie /parties voor meer details.

DSGO.Basis: Partijen MOETEN bij een access token verzoek op basis van private key JWT Client Credentials de identiteit van de aanvrager authenticeren door de identiteit uit het certificaat te vergelijken met die uit het access token verzoek. Indien deze niet matchen met elkaar, MOET het verzoek worden afgewezen.

DSGO.Basis: Partijen MOETEN bij een access token verzoek op basis van private key JWT Client Credentials de status van een partij binnen het DSGO verifiëren bij de stelselcatalogus