API-sleutel uitgelegd: veilig gebruiken en bewaren

Een API-sleutel is een geheime code waarmee een tool zich bij een systeem meldt. Zo gebruik, bewaar en trek je een API-sleutel veilig in.

Kort antwoord

Een API-sleutel is een lange, geheime code waarmee een programma bewijst dat het toegang mag krijgen tot jouw gegevens in een ander systeem, zonder dat je je wachtwoord deelt. Behandel hem als een wachtwoord: bewaar hem alleen op plekken die niemand anders ziet, maak er één per toepassing van en trek hem in zodra je hem niet meer nodig hebt. Lekt een sleutel, dan trek je hem in en maak je een nieuwe.

Een API-sleutel is een geheime code waarmee een programma zich meldt bij een ander systeem. Je komt hem tegen zodra je je boekhouding, urenregistratie of een dashboard wilt laten samenwerken met andere software. Hoe zo’n sleutel werkt en hoe je er veilig mee omgaat, is vooral een kwestie van gewoontes. Technische kennis heb je er niet voor nodig.

Wat een API-sleutel doet

Wanneer twee systemen gegevens uitwisselen via een API, moet het ene systeem weten wie er vraagt. De API-sleutel is dat bewijs. Bij elke aanvraag stuurt het programma de sleutel mee, en het systeem beslist op basis daarvan of de aanvraag mag doorgaan en welke gegevens er zichtbaar zijn.

Het voordeel ten opzichte van een wachtwoord is dat je geen inloggegevens hoeft te delen. De sleutel is bovendien los van je persoonlijke account in te trekken. Zo kun je één tool de toegang ontnemen zonder dat andere tools of jijzelf iets merken.

Waar je zo’n sleutel tegenkomt

Hoe je een bronsysteem koppelt, verschilt per systeem. Bij WeFact kopieer je de beveiligingscode uit Instellingen > API en plak je die in het veld API-sleutel van de koppeling. Bij TimeChimp genereer je zelf een sleutel onder Instellingen > API V2. Bij andere systemen, zoals Exact Online en Moneybird, log je in via een inlogvenster van het systeem zelf en geef je toestemming, zodat je zelf geen sleutel hoeft te beheren.

Daarnaast kun je een sleutel van APIboard zelf gebruiken om je gegevens op te halen in een eigen tool of in Power BI. Zo’n sleutel begint met apib_live_ en geeft alleen leestoegang tot de gegevens van je eigen organisatie.

Veilig omgaan met een sleutel

Een paar vaste afspraken voorkomen de meeste problemen:

  • Bewaar hem als een wachtwoord. Zet hem niet in een gedeeld document, een chatbericht of in code die je publiceert.
  • Eén sleutel per toepassing. Zo weet je bij een probleem precies welke je moet intrekken, zonder andere tools te raken.
  • Kies een korte geldigheid. Een sleutel die vanzelf verloopt, kan niet eindeloos misbruikt worden.
  • Geef niet meer rechten dan nodig. Een sleutel met alleen leesrechten kan niets wijzigen als hij in verkeerde handen valt.
  • Trek hem in als je hem niet meer gebruikt. Denk aan een medewerker die vertrekt of een tool die je niet meer inzet.

Maak ook onderscheid tussen de sleutel en de plek waar hij staat. Een sleutel in een bestand dat je deelt, is net zo onveilig als een briefje met je pincode.

Hoe APIboard met sleutels omgaat

Als je een API-sleutel in APIboard aanmaakt, zie je hem maar één keer. Daarna kan niemand hem meer inzien, ook geen Admin. APIboard bewaart alleen een afgeleide waarde (een SHA-256-hash) en geen leesbare sleutel, dus een kwijtgeraakte sleutel is niet terug te halen en vervang je door een nieuwe. Je kunt maximaal 10 actieve sleutels per organisatie hebben en Admins en Members kunnen ze op elk moment intrekken.

De sleutels en toegangstokens van je bronsystemen, zoals die van WeFact of TimeChimp, staan versleuteld in een kluis en niet in gewone databasetabellen. Verwijder je een koppeling, dan verdwijnt het bijbehorende token automatisch uit die kluis. Meer over de maatregelen lees je in de verwerkersovereenkomst. De stappen voor het aanmaken en intrekken van sleutels staan in de API-documentatie.

Onze tip: noteer bij elke sleutel waarvoor hij dient, bijvoorbeeld in de naam (“Power BI-koppeling”). Dan weet je bij het intrekken meteen welke tool het raakt, en vergeet je geen sleutels die al lang niet meer worden gebruikt.

Veelgestelde vragen

Is een API-sleutel hetzelfde als een wachtwoord?

Niet precies, maar je behandelt hem wel zo. Een wachtwoord is bedoeld voor een mens die inlogt, een API-sleutel voor een programma. Een sleutel kan vaak beperkt worden tot bepaalde rechten, zoals alleen lezen, en je kunt hem los intrekken zonder je wachtwoord te wijzigen. Wie de sleutel heeft, heeft wel dezelfde toegang als de sleutel toestaat, dus de zorgvuldigheid is gelijk.

Wat doe ik als mijn API-sleutel is gelekt?

Trek de sleutel direct in bij het systeem waar je hem hebt gemaakt en maak een nieuwe aan. Werk daarna de tool bij die de oude sleutel gebruikte. Kijk, als het systeem dat toont, in het gebruiksoverzicht of er aanroepen zijn gedaan die je niet herkent. Een ingetrokken sleutel werkt meteen niet meer, dus de schade stopt op het moment van intrekken.

Hoe lang moet een API-sleutel geldig blijven?

Zo kort als praktisch is. Een korte geldigheid beperkt de schade als een sleutel toch lekt, maar vraagt wel dat je hem op tijd vervangt. In APIboard kies je bij het aanmaken voor 30 dagen, 90 dagen (de standaard), 180 dagen of 1 jaar. Gebruik een kortere termijn voor sleutels die in meer tools of bij meer mensen terechtkomen.

Moet ik elke koppeling met een API-sleutel maken?

Nee. Bij sommige systemen log je in via een inlogvenster en geef je toestemming, zoals bij Exact Online of Moneybird. Dan zie je de sleutel zelf niet. Bij andere systemen, zoals WeFact en TimeChimp, maak je zelf een sleutel of beveiligingscode in de instellingen en geef je die door aan de koppeling.

Hier meer over weten?

Koppel binnen minuten met je software, zonder zelf te hoeven knutselen. Wij maken het eenvoudig voor je.