De API-tsunami; Een survival guide
“Daar is een API voor” is de standaardreactie van veel applicatieleveranciers of bronhouders van gegevens als gebruikers om data vragen. Omdat organisaties afhankelijk zijn van tientallen tot honderden applicaties én van steeds meer “waardeketens” lijkt dit op het eerste gezicht een ideale oplossing. Totdat zaken heel erg complex worden.

Iedereen kent het: een nieuwe cloudapplicatie die een contractnummer nodig heeft uit een legacy-systeem, een API die door tientallen applicaties wordt gebruikt om een specifieke controle uit te voeren, of gegevens van leveranciers die opgehaald worden om levertijden te accuraat te berekenen. Maar ook het ERP-systeem, de HR-applicatie, het zaaksysteem of de CRM-oplossing die allemaal gegevens uitwisselen met diverse andere systemen. Binnen informatietechnologie is eigenlijk niets ingewikkeld, totdat de wet van de grote getallen toeslaat en de complexiteit plotseling exponentieel toeneemt.
Het onschuldige begin
Wanneer organisaties voor het eerst nieuwe technologie implementeren, is beheer vaak een bijzaak. Omdat vrijwel iedere nieuwe ontwikkeling binnen IT klein en overzichtelijk begint, lijkt het overdreven om direct na te denken over standaarden, procedures, eigenaarschap, security en onderhoud. Zolang de technologie maar werkt en het initiële probleem oplost, lijkt iedereen tevreden.
Als die technologie echter goed blijkt te werken en inderdaad steeds meer problemen oplost, neemt de adoptie snel toe. Nieuwe gebruikers, nieuwe toepassingen en het gebrek aan restrictieve procedures versnelt de groei. Totdat zich een probleem voordoet en het pijnlijk duidelijk wordt dat procedures, beheer en standaarden onontbeerlijk zijn.
Complexiteit; het kantelpunt
API-technologie is exemplarisch voor deze dynamiek. Juist omdat API’s eenvoudig lijken en snel inzetbaar zijn, groeit het gebruik vaak explosief. Ineens blijkt echter dat simpele veiligheidsmaatregelen ontbreken, er generieke gebruikersaccounts worden ingezet in plaats van specifieke API-credentials, of dat er diverse API’s zijn die dezelfde functionaliteit bieden, maar met een andere naam en architectuur. Een simpele upgrade van één systeem kan leiden tot een domino-effect waarbij niemand exact weet welke API’s hierdoor geraakt worden. De API-infrastructuur blijkt ineens onsamenhangend, onoverzichtelijk en kwetsbaar.
Als je al honderden API’s hebt: hoe nu verder?
Als jouw organisatie al honderden API's heeft en de infrastructuur niet onder controle is, vereist dit een grondige aanpak. Begin met het maken van een uitgebreide inventarisatie: welke API's zijn er, wat doen ze precies en welke systemen maken er gebruik van? Voer vervolgens een risicoanalyse uit om kwetsbaarheden en kritieke afhankelijkheden te identificeren. Hierna volgt het vaststellen van een nieuw governance-beleid waarin standaarden, eigenaarschap en lifecycle management centraal staan. Implementeer geleidelijk verbeteringen en migreer oude API's naar de nieuwe standaarden. Standaardiseer op één krachtige API Gateway die een hybride architectuur ondersteund (zie ook tip 7). Ondersteun deze transitie met uitgebreide monitoring en analytics om snel problemen te signaleren en op te lossen.
API Survival Guide: 8 tips om complexiteit te beheersen
- API-strategie en API-governance
Ontwikkel een uitgebreid beleid waarin standaarden, beveiligingsrichtlijnen, versiebeheer, eigenaarschap en gebruiksafspraken expliciet worden vastgelegd. Een gedegen strategie helpt voorkomen dat API's ongecontroleerd ontstaan, wat leidt tot een gefragmenteerd landschap waar gedegen beheer vrijwel onmogelijk wordt. Bijvoorbeeld: bij een middelgrote financiële organisatie bleek na een audit dat diverse afdelingen dezelfde klantgegevens via verschillende API’s uitwisselden, elk met eigen veiligheidsmaatregelen. Dit veroorzaakte niet alleen chaos in beheer maar zorgde ook voor aanzienlijke compliance-risico’s en inefficiëntie. Door helder governance-beleid voorkom je wildgroei van API's en zorg je voor duidelijkheid binnen je organisatie over wat wel en niet mag. Dit biedt structuur en een kader waaraan iedereen zich kan houden, wat bijdraagt aan een beheersbare en veilige API-omgeving.
- Zorg voor duidelijk eigenaarschap
Wijs expliciet eigenaren aan voor specifieke API’s of groepen van API’s. Deze eigenaren hebben de verantwoordelijkheid voor onderhoud, beveiliging en ondersteuning. Duidelijk eigenaarschap zorgt voor transparantie en voorkomt discussies over wie er verantwoordelijk zijn bij incidenten of benodigde wijzigingen. Dit draagt bij aan snellere probleemoplossing en verhoogt de betrouwbaarheid van de API-infrastructuur. Bij audits blijkt regelmatig dat niet alleen onduidelijk is wie de de eigenaar is van een API of groep van API’s maar ook dat vragen over de veiligheid, welke gegevens er uitgewisseld worden tussen applicaties en wat de risico’s zijn als er een upgrade wordt uitgevoerd van één van de applicaties niet duidelijk is, onbeantwoord blijven.
- Gebruik consistente naamgeving en uitgebreide documentatie
Een duidelijke, consistente naamgeving en uitgebreide documentatie zorgen ervoor dat API’s eenvoudig te vinden en te begrijpen zijn. Dit voorkomt duplicatie en vermindert risico's. Vooral wanneer het aantal API’s snel toeneemt en de naamgeving niet altijd even logisch is duurt het vinden van de juiste API soms langer dan het opnieuw schrijven van zo’n API. Het resultaat is vaak dat de geteste, veilige, beheerde en stabiele API niet gebruikt wordt en de API die “even snel” aan de praat geholpen werd tot in lengte van dagen in productie voor de nodige uitdagingen zorgt.
- Introduceer lifecycle management
De implementatie van expliciet lifecycle management helpt bij het gestructureerd beheer van API's van creatie tot uitfasering. Hierdoor worden onnodige kosten en risico’s voorkomen. Zeker nu er steeds vaker met containers gewerkt wordt en er, binnen mesh omgevingen, soms wel duizenden API’s in kleine containers draaien is het van groot belang dat op iedere willekeurig moment duidelijk is welke API’s “current” zijn, wat er in de ontwikkel, test, QA en productieomgevingen draait en welke afhankelijkheden er allemaal zijn. Juist omdat API’s steeds vaker de “life-line” van de organisatie zijn moete alle risico’s, die nu eenmaal horen bij het gebruik van API’s, beheersbaar blijven. Iedereen kent de voorbeelden van de upgrade van applicatie A die zorgde voor een waterval aan problemen in andere applicaties omdat één API niet (meer) functioneerde. Niemand zit te wachten op de hoge operationele kosten en beveiligingsrisico’s die met ondermaats lifecycle-management gepaard gaan.
- Implementeren van monitoring en analytics
Gebruik geavanceerde monitoring- en analytics-oplossingen om inzicht te krijgen in gebruik, prestaties en potentiële problemen van API’s. Hiermee kun je proactief reageren op incidenten en de gebruikerservaring verbeteren. Bijvoorbeeld: tijdens de laatste pandemie leidden nieuwe mededelingen en geruchten vaak tot een intensivering van het web-verkeer naar de websites van verschillende (overheids) instanties. Alleen de organisaties die hun analytics op orde hadden waren in staan om op tijd bij de schalen om de enorme pieken in het API verkeer op te vangen. Hierdoor konden zij voorkomen dat gebruikers last ondervonden van het vele verkeer.
- Security first: standaardiseer je beveiliging
Hanteer een uniforme en gestandaardiseerde aanpak voor API-beveiliging, bijvoorbeeld via OAuth of OpenID Connect of JSON Web Tokens (JWT). Dit minimaliseert risico’s zoals ongeautoriseerde toegang en datalekken. Zorg ervoor dat er op de top 10 van dreigingen van OWASP in ieder geval standaard wordt gecontroleerd. Gebruik alleen user-id en wachtwoord combinaties die specifiek zijn aangemaakt voor API verkeer en bezuinig niet op de eventuele extra licentiekosten die daarmee gepaard gaan. Bijvoorbeeld: in een aantal recente gevallen bleek dat cybercriminelen heel simpel van API spoofing gebruik konden maken omdat oudere API’s slecht beveiligd waren of dat beveiligingsstandaarden niet consequent waren toegepast. Gestandaardiseerde security-praktijken zorgen voor duidelijke richtlijnen en verminderen de kans op fouten.
- Gebruik een krachtige API Gateway
Een robuuste API Gateway, zoals de gateway van de Layer7 APIM oplossing van Broadcom, fungeert als centrale toegangspoort tot al je API’s en biedt uitgebreide mogelijkheden voor authenticatie, autorisatie, beveiliging, throttling, logging en analytics. Dit maakt het eenvoudiger om grip te houden op API-verkeer, verhoogt de veiligheid en biedt schaalbaarheid en flexibiliteit bij groeiende complexiteit. Natuurlijk bent u met deze API-gateway zo onafhankelijk mogelijk. Het laatste dat u wilt is dat de stabiliteit van uw IT Infrastructuur afhankelijk is van de API-gateway van één van uw applicatieleveranciers! Daarnaast heeft de Layer7 APIM gateway een naadloze integratie met de AI-oplossing van Salt Security waarmee API specifieke cyberaanvallen al in een vroeg stadium herkend kunnen worden zodat de API Gateway automatisch risico-mitigerende acties kan ondernemen.
- Als het toch te complex wordt: Managed Integrations
Wanneer integraties te complex worden voor eigen beheer, zijn Managed Integrations een betrouwbare oplossing. Managed Integrations zijn een uiterst efficiënte en betrouwbare oplossing voor ieder integratieprobleem in zelfs de meest complexe, hybride omgevingen. Het beheer, de beveiliging en het onderhoud wordt overgelaten aan specialisten, waardoor je eigen organisatie zich volledig kan focussen op de kerntaken. Bijvoorbeeld: steeds meer gemeenten kampen met complexe integraties tussen verschillende systemen en externe aanbiedere (en consumenten) van data. Door te kiezen voor managed integrations worden integratieproblemen proactief opgelost, word downtime drastisch verminderd en kunnen medewerkers zich concentreren op hun dienstverleningstaken en innovatie.
Door de exponentiële adoptie van API’s ontstaat er snel een ingewikkelde infrastructuur. Begin op tijd met een duidelijk beleid, het implementeren van standaarden en monitoring en overweeg, indien nodig, externe hulp. Zo voorkom je dat je organisatie wordt overspoeld door de API-tsunami en blijf je voorbereid op toekomstige groei.
Meer weten over de Layer7 API Gateway en API Management? Schrijf u dan in voor de Layer7 Graphman workshop op 3 april!
Door: Marcel den Hartog, Trend & Development Expert bij Enable U