Blogs | InSpark

API Management: Key Concepts

Geschreven door InSpark | Jul 16, 2024 8:43:57 AM

Ben jij met jouw bedrijf op zoek naar een manier om het potentieel van je API/services enorm te vergroten? Dan is Azure API Management iets voor jou!

Maar wat is nu eigenlijk een API?

API’s worden gebruikt voor het verbinden van apps, gegevens en services. API’s stellen ontwikkelaars in staat om tijd te besparen door gebruik te maken van de implementatie van een platform, om het repeterende werk te doen. Dit helpt het aantal ontwikkelaars te verminderen en zorgt ook voor meer samenhang tussen API’s voor hetzelfde platform. In het groter geheel gezien zijn API’s verantwoordelijk voor digitale transformatie in organisaties.

In dit blog zullen de basisonderdelen besproken worden, waarna er in separate blogs nader ingegaan wordt op verschillende API management items.

Wat is Azure API Management

Azure API Management (APIM) is het Microsoft platform die organisaties in staat stelt om hun API’s te publiceren naar intern en externe afnemers, of partners. Denk hierbij aan bijvoorbeeld 9292 OV reis informatie. Zij krijgen hun informatie van de verschillende OV bedrijven zoals de NS, Arriva etc.

Het hergebruik van API’s wordt op deze manier ook eenvoudiger. API Management fungeert als tussenlaag tussen de afnemers en de API’s op het gebied van beveiliging, monitoring en documentatie.

API Management componenten

Azure API Management bestaat uit diverse componenten welke samen het complete API Management platform vormen:

Developer Portal

De Developer Portal fungeert als de belangrijkste informatiebron over gepubliceerde API’s voor ontwikkelaars. Zij kunnen hier het volgende doen:

  • API-documentatie lezen.
  • Een API uitproberen via de interactieve console.
  • Een account maken en zich abonneren om API-sleutels op te halen.

API Gateway

De API Gateway is het endpoint die de afnemer aanroept om een API call te doen. Hier worden onder andere de volgende acties toegepast:

  • Valide API-aanroepen worden geaccepteerd en naar de API’s doorgestuurd.
  • API-sleutels, JWT-tokens, certificaten en andere referenties worden geverifieerd.
  • Quota’s voor gebruik en frequentielimieten worden afgedwongen.

Publisher Portal

De Publisher Portal is de beheerinterface waar u uw API instelt. Gebruik deze voor het volgende:

  • API-schema definiëren of importeren van bestaande API’s (onder andere Swagger/WSDL)
  • Koppelen van API’s aan Producten
  • Policies instellen zoals quota of transformaties voor de API’s.
  • Inzicht krijgen van analytische gegevens gebaseerd op API, Sleutel of Product.
  • Gebruiker & Groep Management

Hieronder worden deze componenten nog eens weergegeven.

API Management uitdagingen

Bij het inrichten van een API Management platform moet er onder andere rekening gehouden worden met de volgende zaken:

  • Governance
    • Welke API’s gaan er worden ontsloten.
    • Wie mag welke API’s aanroepen.
    • Hoe vaak mag een API worden aangeroepen
      • Dit is in te stellen per afnemer
  • Security
    • Hoe een API te beveiligen
      • API sleutel, Client certificaat, IP whitelist
    • Welke security methoden te gebruiken
      • Cyphers, TLS levels, etc
  • Analytics
    • Inzage verkrijgen in het gebruik van API Management:
      • Hoe vaak is een API aangeroepen.
      • Welke specifieke Operatie wordt gebruikt.
      • Wie roept een (specifieke) API aan.

Samen vormen de drie bovenstaande onderdelen voor een goede API management inrichting, waarbij duidelijk is welke API door wie op een veilige aangeroepen kan worden. zodat misbruik kan worden tegengegaan.

API Management primaire onderdelen

API management bestaat uit meerdere basis onderdelen. Hieronder worden de vier belangrijkste besproken.

  • API & Operations
    • API’s zijn de basis van APIM. Elke API bevat een set Operations welke beschikbaar zijn voor afnemers. Elke API in APIM bevat een referentie naar een back-end service. API’s en Operations zijn op zeer veel vlakken te configureren en met behulp van policies kunnen er zaken als aanroep limiet, quota’s en IP restricties worden afgedwongen.
  • Producten
    • Met behulp van Producten kunnen API’s beschikbaar worden gesteld aan afnemers. Een Product kan een of meerdere API’s bevatten. Producten kunnen zowel open als beveiligd worden aangeboden. Om een beveiligd product te kunnen gebruiken zal de afnemer eerst een abonnement moeten afnemen om een API key te ontvangen.
  • Groepen
    • Door het gebruik van Groepen kan er worden bepaald wie welke Producten mag zien. APIM heeft een aantal standaard groepen (Administrators, Developers, Guests) maar er kunnen ook eigen groepen worden gemaakt. Ook is het mogelijk om gebruik te maken van al bestaande Azure Active Directory groepen. Afnemers kunnen lid zijn van meerdere groepen.
  • Policies
    • Met Policies kan het gedrag van een API doormiddel van configuratie worden aangepast. Een policy is gebaseerd op xml en bevat een reeks aan acties die sequentieel worden afgegaan. Populaire policy acties zijn: het omzetten van XML/SOAP naar JSON, het beperken van het maximaal aantal keer dat een afnemer een API mag aanroepen en het verwijderen van bepaalde headers.

Conclusie

Met een juist ingerichte API Management omgeving kan je als bedrijf het potentieel van zowel je interne als externe API’s enorm vergroten. API Management biedt hier de tools voor.

Vanuit InSpark kunnen wij jou helpen om tot een juiste API Management inrichting te komen.

SHARE