API-sleutel

Een API-sleutel is een unieke identificatie die wordt gebruikt om verbinding te maken met, of om een API-oproep uit te voeren. API staat voor application programming interface. API's worden gebruikt voor softwaretoepassingen om gegevens te verzenden en te ontvangen. API's kunnen ook het ene programma met het andere verbinden, om functionaliteit te delen. Om verbinding te maken of te communiceren met een andere API, is een API-sleutel nodig. API-sleutels vormen een eerste stap in de beveiliging van cloud-API's.

Het API-sleutelproces is vergelijkbaar met de gebruikersverificatie voor webtoepassingen en mobiele apparaten -- de API-aanroep begint met een API die een andere aanroept, en vervolgens de API-sleutel doorgeeft om toegang te krijgen.

De API-sleutel geeft aan dat de verbindende API een "wachtwoord" of sleutel heeft en een gedefinieerde set toegangsrechten. Bijvoorbeeld, een applicatie die medische formulieren naar patiënten stuurt, zou zijn eigen API moeten verbinden met die van een applicatie die medische formulieren opslaat. De eigenaar van de API voor medische formulieren wijst een API-sleutel toe, waarmee de eerste applicatie toegang krijgt tot medische formulieren en verder niets.

Wanneer API-sleutels gebruiken

API-sleutels worden gebruikt voor het authenticeren van een oproepend programma naar een andere API -- meestal om te bevestigen dat een project gemachtigd is om verbinding te maken. Project autorisatie regels worden gemaakt en beheerd door de API eigenaar of bron. API sleutels kunnen dienen als een eerste authenticatie of beveiligingsstap door het passeren van een veilige authenticatie token.

Een API sleutel kan ook worden ingebed in de software van bijna elk type van de codering taal - zoals JavaScript, of Python. Welke codeertaal wordt gebruikt, hangt af van de API waarmee de gebruiker verbinding wil maken. Bijvoorbeeld, als een gebruiker een applicatie wil verbinden om Google Maps te gebruiken, zal de gebruiker een API sleutel van Google moeten krijgen om toegang te krijgen tot hun maps API, met behulp van JavaScript. Het aanmaken van API-sleutels hangt af van de host waarmee de gebruiker verbinding maakt: Google Cloud Platform, Amazon Web Services (AWS), Microsoft Azure, of een willekeurig aantal andere API-makers of -eigenaren.

API-sleutels worden niet gebruikt om toegang te krijgen tot privégegevens. API-sleutels worden meestal gebruikt voor web- en mobiele toepassingen die geen gekoppelde back-end server hebben. Wanneer er geen back-end server bestaat, moeten de mobiele of webtoepassingen hun gegevens verkrijgen door verbinding te maken met API's. De API-sleutel brengt de verbinding tot stand en kan toegangstarieven bijhouden voor factureringsdoeleinden, afhankelijk van de regels van de API-eigenaar.

Halen en gebruiken van een API-sleutel

Het gebruik van een API-sleutel is afhankelijk van de API waarmee verbinding wordt gemaakt. De regels rond het ontvangen van een specifieke API sleutel zijn aan de ontwikkelaar of uitgever van de API. De onderstaande stappen zijn algemene stappen die voor de meeste API-providers gelden:

  • Toegang tot de cloud-gebaseerde console van de provider die eigenaar is van de gewenste API. Als een gebruiker bijvoorbeeld Google Maps wil gebruiken, moet hij verbinding maken met de Google Cloud Platform Console.
  • Selecteer een reeds aangeboden project of maak een nieuw project om de API-sleutel aan te vragen.
  • De gebruiker moet de gewenste API aanwijzen waarmee hij verbinding wil maken en definiëren hoe hij van plan is deze te gebruiken. Dit bepaalt de specifieke toegangsrechten van de sleutel waartoe toegang moet worden verkregen.
  • De gebruiker moet het gebruik van zijn API-sleutel beperken om ervoor te zorgen dat deze veilig blijft. Er zijn over het algemeen twee soorten beperkingen: Toepassing en API.
    • Applicatiebeperking betekent dat alleen een website (HTTP), een webserver met een IP-adres of een mobiele app (Android of iOS) verbinding mag maken met de sleutel.
    • API-beperking beperkt het gebruik van de API-sleutel tot alleen een gedefinieerde set API's of SDK's. Verzoeken om verbinding te maken mislukken als ongedefinieerde API's of SDK's proberen verbinding te maken met de sleutel.

Hoe gebruiken verschillende platforms API-sleutels?

API-sleutels zijn nuttig wanneer applicaties met elkaar worden verbonden om gegevens te delen, of om verbinding te maken met andere systemen die de benodigde gegevens leveren zonder dat daarvoor codering nodig is.

Om bijvoorbeeld Amazon Web Services te gebruiken om back-end servers te beheren, is er een reeks API's waarmee gebruikers in de cloud verbinding kunnen maken om die functies uit te voeren. Zoals bij veel providers zijn eenvoudige API-verbindingen gratis of vereisen ze een overeenkomst en een vergoeding.

API-gebruik is wijdverbreid en neemt toe, vooral omdat de connectiviteit van apparaten en toepassingen groeit. Google Maps is bijvoorbeeld overal. Bijna elke mobiele of webapplicatie maakt gebruik van Google Maps om adres- en locatiegegevens te verstrekken. Waar zouden voedselbezorgers zijn zonder Google Maps?

API-verbindingen bestaan tussen overheidsinstanties, gezondheidszorgsystemen en providers -- eigenlijk overal waar gegevensbronnen veilig kunnen worden gedeeld.  Gezondheidszorgsystemen zijn momenteel in staat om patiëntgegevens te delen en uit te wisselen dankzij API-verbindingen. Bijna elk softwareontwikkelingsbedrijf heeft een bibliotheek van API's beschikbaar, sommige gratis en andere die overeenkomsten en vergoedingen vereisen. API-sleutels bevorderen de verbindingen die levens, apparaten en gegevens met elkaar verbonden houden.