Thema-architectuur Werken met API's



Aanleiding[bewerken]

In 2017 zijn gemeenten, VNG en leveranciers onder de naam ‘Common Ground’ een nieuwe informatiekundige weg ingeslagen. Een belangrijk doel daarbij was om data niet meer op te slaan in 'silo-systemen' maar data voortaan op een gestandaardiseerde manier beschikbaar te stellen voor hergebruik. Ontsluiten van data uit registraties gebeurt via 'Application Programming Interfaces' (APIs): een soort software-interface voor andere stukjes software. Om te zorgen dat API's op dezelfde manier werken worden API-standaarden gebruikt.

Werken met API's biedt mogelijkheden om de informatievoorziening te verbeteren maar stelt ook nieuwe eisen aan de inrichting daarvan. Zaken zoals authenticatie, autorisatie en beveiliging moeten op een andere manier worden geregeld dan voorheen het geval was. Wanneer data die elders is vastgelegd via API's beschikbaar komt moet zijn gegarandeerd dit betrouwbaar en voldoende snel gebeurt.

Doel[bewerken]

De thema-architectuur 'Werken met API's' werkt vraagstukken uit die naar boven komen als (meer) wordt gewerkt met API's. Een eerste vraagstuk dat is opgepakt is hoe de informatievoorziening moet worden ingericht om te zorgen dat gebruik van API's verantwoord plaats vindt. Het gaat daarbij om vragen zoals 'Is duidelijk wie data wil gebruiken?', 'Is er voldoende doelbinding aanwezig om gebruik toe te staan?', 'is te verantwoorden waarom bepaalde data is gebruikt?'.

Architectuur[bewerken]

De GEMMA gebruikt service-oriëntatie als leidende architectuurstijl. In lijn daarmee wordt gestreefd naar een informatielandschap waar applicatiecomponenten via gestandaardiseerde API's van elkaars services gebruik maken. Een belangrijke stap daarbij is het bepalen van grenzen. Welke component moet bij gebruik van API's welke functionaliteit leveren? Kan die gestandaardiseerd worden geleverd? Wordt daarvoor wel of niet gebruik gemaakt van 1 centrale voorziening?

De ontkoppeling die werken met API's met zich meebrengt vereist een informatiearchitectuur die niet meer is gebaseerd op statische, netwerkgebaseerde grenzen (bijvoorbeeld op basis van locatie binnen of buiten het interne netwerk). Voordat toegang tot services of data wordt verleend moet op basis van het need-to-know principe altijd verificatie plaatsvinden. Dit type architectuur wordt aangeduid met de term 'Zero Trust architectuur'.

Een eerste aspect dat is uitgewerkt is de manier waarop autorisatie plaats moet vinden binnen een landschap waar veel met API's wordt gewerkt. Vaak gebruikte mechanismen voor toegang en informatiebeveiliging zoals Role- en Attribute- based Access ('RBAC' en 'ABAC') zijn dan niet meer voldoende. Ze zijn te grofmazig van aard en ongeschikt om te kunnen verantwoorden wie wanneer voor welk doel data heeft gebruikt. Omdat rollen en attributen op meerdere plaatsen worden gebruikt is er geen goed overzicht van en inzicht in autorisatieregels meer. De benodigde fundamentele verbetering op dit vlak is te bereiken door autorisatie op basis van verschillende soorten bedrijfsregels in te richten ('Policy Based Access'). Bepalen of en hoe een API mag worden gebruikt wordt daarbij afgeleid van op dat moment geldende bedrijfsregels. Daarmee is toegang en informatiebeveiliging fijnmazig in te richten en is te voldoen aan alle eisen. 'Autoriseren' is daarmee ook niet meer iets dat door applicatiebeheerders gebeurt, maar wordt van de hele organisatie.

Deze pagina is het laatst bewerkt op 7 apr 2023 om 02:01.