Achtergrond

NLX is ontstaan vanuit de behoefte van gemeenten om eenvoudiger en sneller te kunnen samenwerken. Bij gebrek aan een gemeenschappelijke infrastructuur om data uit te wisselen, is in der loop der jaren een onbeheersbare en onontwarbare kluwen ontstaan van duizenden koppelingen tussen ICT-systemen, soms zelfs binnen een enkele organisatie. De software van NLX lost dit probleem op. Door applicaties en databronnen (services) van elkaar te scheiden, kunnen applicaties data voortaan direct bij de bron raadplegen via een gemeenschappelijke servicelaag. Niet alleen gemeenten, maar ook andere overheden en particuliere organisaties kunnen de servicelaag van NLX gebruiken.

NLX maakt deel uit van Common Ground, een bredere beweging die voortkomt uit initiatieven van de Vereniging van Nederlandse Gemeenten (VNG). Common Ground richt zich op de hervorming van de informatievoorziening van gemeenten op zowel technisch, organisatorisch als juridisch vlak. Een van de uitgangspunten van deze beweging is het ontwikkelen van kleine bouwstenen in doorlopende trajecten via een agile methodiek.

De X-Road van Estland heeft mede als inspiratiebron gediend voor NLX. Deze gemeenschappelijke infrastructuur van de Estse overheid is al zo’n tien jaar succesvol en is inmiddels ook geïmplementeerd in andere landen, waaronder Namibië en Finland.

Wat is NLX

NLX is een open source systeem om peer-to-peer gegevens uit te wisselen op basis van federatieve autenticatie, beveiligde connectiviteit en protocollen die faciliteren in een grootschalig API landschap met meerdere organisaties.

NLX richt zich op de vervanging van de huidige monolitische informatie systemen bij de lokale en andere overheden. NLX faciliteert een modern, API-first software landschap en ecosysteem wat kan voldoen aan de vraag naar digitalisering, transparantie en privacy.

Iedereen moet in staat zijn om eenvoudig API’s van andere organisaties te gebruiken net alsof het eigen API’s zijn. Uiteraard mag alleen de de bronhouder zijn gegevens via de API’s aanpassen maar zijn gelijktijdig de gegevens voor alle andere geauthenticeerde organisaties en personen in te zien. Op deze manier faciliteert NLX een ecosysteem van API’s en worden gegevens en metagegevens gelijk voor iedereen beschikbaar gemaakt. NLX maakt dit niet alleen technisch mogelijk, het maakt het ook beheersbaar.

NLX voorziet in een laagdrempelige omgeving voor developers zodat zij gestandaardiseerde gegevensbronnen van andere organisaties kunnen gebruiken. Het NLX systeem bestaat uit meerdere bouwstenen die een gateway bieden aan applicaties om services te bevragen en een gateway bieden aan bronhouders om hun brongegevens via een API beschikbaar te stellen aan het NLX landschap. NLX ondersteunt daarbij API’s op basis van verschillende technieken zoals REST/JSON en SOAP/XML. Ondersteuning voor HTTP/2 (gRPC) is in ontwikkeling.

Organisaties willen hun diensten veilig, efficiënt, flexibel en rechtmatig aanbieden aan burgers en bedrijven. Daarvoor moeten zij gegevens op een generieke en gecontroleerde manier met elkaar kunnen uitwisselen. Ook moet bij iedere verwerking het doel en de grondslag van de gegevensverwerking worden aangegeven (de zogenaamde doelbinding).

NLX voorziet hierin door de afspraken voor deze uitwisseling te definiëren én bouwstenen beschikbaar te stellen die deze uitwisseling mogelijk maken. Met deze bouwstenen bevordert NLX de interoperabiliteit tussen organisaties. NLX richt zich op de 'logistiek' van het bericht, niet op de inhoud. Daardoor kan iedere organisatie die NLX gebruikt, zich beperken tot uitwerking van de inhoud van de bericht uitwisseling. De centrale NLX bouwstenen ondersteunen de implementatie van NLX: ze zijn bedoeld om vast te leggen welke services beschikbaar zijn, bij te houden welke typen verwerkingen worden toegepast (inclusief de doelbinding) en te monitoren welke voorzieningen operationeel zijn. NLX is primair bedoeld voor gegevensuitwisseling tussen systemen van organisaties, in het bijzonder de landelijke en lokale gegevensdiensten. De NLX-software is open source beschikbaar onder European Union Public Licence (EUPL v 1.2) voor elke organisatie die veilig en betrouwbaar gegevens wil uitwisselen met andere organisaties.

NLX sluit aan bij de servicegerichte architectuur die GEMMA, NORA en EIF voorschrijven. NLX richt zich op de communicatie tussen ICT-systemen binnen één organisatie en tussen verschillende organisaties. Om digitale berichten uit te wisselen moeten voorzieningen en organisaties op drie niveaus afspraken maken:

  • Over de inhoud en betekenis van berichten (payload en eventuele bijlagen): de structuur, semantiek, waardebereiken enzovoort.
  • Over de logistiek: transportprotocollen, adressering, toepassing van certificaten, beveiliging (authenticatie en encryptie) en betrouwbaarheid.
  • Over het transport (netwerk): de protocollen van de TCP/IP stack (TCP voor Transport, IP voor Netwerk) en de infrastructuur, bijvoorbeeld lokale, besloten of publieke netwerken (Internet).

NLX richt zich op afspraken over de logistiek en het transport niveau van de berichtuitwisseling in de publieke sector.

Product visie

Ondanks dat het NLX landschap vrij complex zal worden en veel gedetaileerde requirements kent is het mogelijk de essentie van NLX te beschrijven aan de hand van drie kernfunctionaliteiten:

  • Faciliteren van federatieve authenticatie en authorisatie
  • Geautomatiseerde opzet van beveiligde connectiviteit en verbindingen
  • Logging van alle gegevensuitwisseling

Zie voor meer informatie het functioneel ontwerp

NLX wordt geoptimaliseerd voor doorvoersnelheid, veiligheid, schaalbaarheid en betrouwbaarheid. Alle afzonderlijke bouwstenen zijn gebaseerd op open source code, gedistribueerd te deployen en secure 'by design'. Ook alle onderlinge communicatie is beveiligd en zowel de communicatie als de boustenen zijn in staat zichzelf te herstellen na verstoring. Daarnaast is NLX uitermate developer friendly en is er een nadrukkelijke focus op beheersbaarheid van het gehele gedistribueerde landschap.

Status

NLX is momenteel in PoC-fase. Hoe meer organisaties onderdeel uit gaan maken van de PoC hoe meer ervaring er opgedaan wordt, dit zal een positief effect hebben op de eerste productie versie. De huidige versie van de NLX software componenten dient als 'Proof of Concept' en is daarom niet geschikt voor gebruik in productie.

Waarom nu aansluiten op NLX

Door het gebruik van open software en open standaarden binnen het NLX landschap kunnen alle applicaties en services, die op NLX aansluiten, eenvoudiger en veiliger met elkaar communiceren op basis van moderne technieken. Dit verkleint voor overheden het risico op leveranciersafhankelijkheid en biedt kleine en middelgrote leveranciers nieuwe kansen om opdrachten te verwerven. Door de gestandaardiseerde manier van het aanbieden van data in het API-first software landscape is het voor developers vanuit verschillende organisaties en leveranciers eenvoudig om data tussen organisaties uit te wisselen.

Door gegevensverbindingen via NLX op te zetten ontstaan er de volgende voordelen voor de organisatie:

  • Een enorme hoeveelheid gegevens uit verschillende organisaties/afdelingen wordt veilig via API’s beschikbaar.
  • Data dupliceren is niet meer nodig (zelfs onwenselijk) en behoort met NLX tot het verleden.
  • Autorisatie tot de gegevens is geregeld op organisatieniveau.
  • Eenvoudig en veilig communiceren tussen organisaties. De eenvoud waarmee gegevens via NLX ontsloten kunnen worden stimuleert de markt om nieuwe innovatieve applicaties te ontwikkelen die gegevens geautomatiseerd bij elkaar kunnen brengen.
  • Moderne technieken zorgen voor goede performance en schaalbaarheid bij het ontsluiten van gegevens.
  • Kwaliteitsverbetering; logs geven inzicht in de kwaliteit en kwantiteit van het gebruik van gegevens en geven daarmee input voor kwaliteitsverbetering.
  • Beheersbaarheid; Alerts naar beheerders bij het optreden van verschillende calamiteiten geven inzicht en kansen om direct of proactief actie te ondernemen.
  • Minimalisatie van beheer; Tussen organisaties is alles geautomatiseerd en de uitwisseling van gegevens is altijd peer-to-peer. De aanbieder van een API configureert hoe de API bereikbaar is voor anderen en autoriseert organisaties via profielen. De enorme beheerlast van de huidige koppelingen wordt hiermee vermeden en de schaalbaarheid vergroot.

Met name de vier laatste punten zijn een uitdaging om zelf te organiseren bij de ontwikkeling van applicaties en services. Door aan te sluiten bij NLX kan de eigen organisatie zich focussen op het bieden van functionaliteit aan gebruikers zonder zich zorgen te hoeven maken over de technische aspecten van de gegevensuitwisseling die NLX reeds oplost. Daarnaast biedt NLX ook continuiteit en beheersbaarheid van de gebruikte gegevensuitwisseling wat vaak op lange termijn uitdagend is om zelf te blijven waarborgen.

Werking van NLX

In het NLX landschap verbinden we twee concepten: Applicaties en Services. Applicaties zijn alleen beschikbaar binnen een organisatie en voorzien hoofdzakelijk gebruikers van een client interface om gegevens te bevragen en muteren. Services bieden API’s aan de Applicaties om de gegevens te ontsluiten en te persisteren. De Services zijn toegankelijk voor Applicaties binnen een organisatie en Applicaties van andere organisaties.

Voor de veilige verbinding tussen de applicaties en de services worden gateways gebruikt. NLX voorziet in twee verschillende types gateways: een Inway en een Outway. Met een Inway kunnen organisaties hun Services aanbieden op het NLX ecosysteem en met een Outway kunnen organisaties Services bevragen op het NLX ecosysteem. Gateways worden vaak centraal geïmplementeerd binnen organisaties maar het is met NLX ook mogelijk om meerdere implementaties van Inways en Outways op meerdere locaties te doen en deze toch centraal te beheren.

In het onderstaande schema staan een volledige NLX request-response flow. Een applicatie doet een request en de Outway van dezelfde organisatie routeert het request naar de Inway van de organisatie die de Service aanbiedt. De inway routeert vervolgens het request naar de API van de Service. De API van de Service creëert de response en deze wordt via de inway aan de outway en daarna aan de Applicatie teruggegeven. De Inway en Outway componenten zorgen voor logging van alle request / response berichten en het beveiligen van de onderlinge verbinding.

ClientAPIOutwayInwayRequesting applicationProviding service

Leveranciers

Leveranciers worden uitgenodigd om applicaties en services te ontwikkelen die aansluiten op NLX. Door het gebruik van open software en open standaarden kunnen alle applicaties en services die op NLX aangesloten zijn eenvoudiger met elkaar communiceren, ongeacht de leverancier. Dit verkleint voor overheden het risico op leveranciersafhankelijkheid en biedt kleine en middelgrote leveranciers nieuwe kansen om opdrachten te verwerven.

NLX schept veel kansen om innovatieve applicaties te ontwikkelen, waaronder applicaties voor eindgebruikers. Denk bijvoorbeeld aan applicaties waarmee gebruikers eenvoudig gegevens bij verschillende organisaties kunnen opvragen. Dan hoeven gebruikers niet meer op verschillende websites in te loggen om bijvoorbeeld op meerdere plekken gegevens te wijzigen of aanvragen te doen.

Privacy (by-design)

NLX helpt overheden om te voldoen aan de Algemene Verordening Gegevensbescherming (AVG). Hiervoor zijn een aantal handige functionaliteiten ingebouwd:

  • Logging
    Op alle niveaus en bij alle organisaties wordt bijgehouden welke informatie wanneer en door (of namens) wie wordt geraadpleegd. Hiermee kunnen overheden snel overzicht krijgen over welke organisaties persoonsgegevens raadplegen, doorgeven en ontvangen. Dit kan overheden helpen om te voldoen aan onder andere de informatieverplichting ten aanzien van burgers van artikel 15 lid 1 sub c AVG.
  • Autorisatie
    NLX gebruikt een nieuwe autorisatiemodel om te zorgen dat alleen bevoegde organisaties toegang krijgen tot gegevens. Hiermee kunnen overheden bescherming bieden tegen ongeoorloofde verstrekking van of ongeoorloofde toegang tot gegevens, waar artikel 32 lid 2 AVG hen toe verplicht.
  • Doelbinding
    Elk verzoek om data via NLX dient van een reden te worden voorzien. Dit helpt overheden om te voldoen aan artikel 15 lid 1 sub a AVG, op grond waarvan overheden moeten kunnen aantonen voor welke doeleinden zij persoonsgegevens van burgers verwerken.
In bredere zin helpt NLX organisaties om te voldoen aan het transparantiebeginsel, zoals vastgelegd in onder meer de AVG.

Interoperabiliteit

Voor een efficiënte overheid is het essentieel dat organisaties en informatiesystemen kunnen samenwerken, oftewel interoperabel zijn. NLX biedt mogelijkheden om de interoperabiliteit binnen en tussen organisaties te vergroten. De infrastructuur is zo ontworpen dat (toekomstige) applicaties en services die op NLX worden aangesloten, eenvoudig met elkaar kunnen communiceren.

Door het implementeren van NLX sluiten organisaties zich aan bij het gemeenschappelijke ecosysteem en profiteren ze direct van de voordelen op het gebied van interoperabiliteit. Zo kunnen ze niet alleen eenvoudiger data uitwisselen met andere organisaties, maar ook hun eigen applicaties en services beter interoperabel maken.

Beheersbaarheid

NLX wordt beheerd in een single repository (GitLab). NLX wordt conform de methode Continuous Delivery / Continuous Integration ontwikkeld. Dit betekent dat dat op ieder moment van de dag er updates kunnen verschijnen van de NLX software. Het is aan de organisatie zelf om te bepalen met welke frequentie de updates geïnstalleerd worden. Het wordt sterk aangeraden om in ieder geval eenmaal dagelijks de software bij te werken. Dit kan het best worden ingepland via een automatische update. Voor eventueel handmatige configuratie en beheeracties op de NLX modules moeten organisaties zelf een beheerteam benoemen. Organisaties zijn altijd zelf verantwoordelijk voor beheer van de componenten, NLX voorziet echter de beheerders wel van alle benodigde functies en kennis om beheerstaken en configuratie wijzigingen gecontroleerd uit te voeren. Ook is het voor organisaties mogelijk om te participeren in de doorontwikkeling van NLX indien ze dit wensen.

Beveiliging (by-design)

NLX maakt ICT minder complex, wat de veiligheid van ICT bij overheden ten goede komt. Doordat er minder schakels tussen verschillende ICT-systemen nodig zijn en de techniek eenvoudiger wordt, zijn er minder plekken waar een datalek of (technische) fout zou kunnen optreden.

Verder wordt alle communicatie via NLX versleuteld met moderne encryptiemethodes. We werken eraan om te voldoen aan de nieuwste standaarden en laatste eisen op het gebied van informatiebeveiliging, waaronder ISO 27001:2013. Uitgebreide informatie over onze beveiligingsmaatregelen vind je in onze Docs.

Implementatie en ontwikkeling

NLX wordt naast de bestaande ICT van organisaties gebouwd en vereist dus geen onmiddellijke aanpassingen aan ICT-systemen. Hierdoor kunnen verouderde (legacy) systemen zonder grote risico’s stapje voor stapje vervangen worden.

De ontwikkeling van NLX is open source en is te volgen via GitLab. Wil je meewerken aan NLX of doorontwikkelen op onze software? Of wil je meer technische of juridische informatie? Kijk dan in onze Docs.