Hoe roteer ik een API-sleutel?

Laatst bijgewerkt: 3 maanden geleden

Het regelmatig roteren van API-sleutels is een belangrijke beveiligingspraktijk. Zo roteert u uw sleutels veilig zonder uw service te verstoren.

Waarom API-sleutels roteren?

  • Beveiligingsbest practice: Beperkt de blootstelling als een sleutel ooit gecompromitteerd is

  • Wijzigingen bij teamleden: Wanneer ontwikkelaars vertrekken of van rol veranderen

  • Vermoeden van compromis: Als u denkt dat een sleutel mogelijk is blootgesteld

  • Naleving (compliance): Sommige beveiligingsbeleid vereisen periodieke sleutelrotatie

  • Wijzigingen in de omgeving: Bij migratie van infrastructuur of refactoring

Standaardrotatieproces (zonder downtime)

Stap 1: Maak een nieuwe sleutel

  1. Log in op Instellingen → API

  2. Klik op "Nieuwe API-sleutel aanmaken"

  3. Geef een beschrijvende naam (bijv. "Production Web v2")

  4. Kopieer de nieuwe sleutel meteen — deze wordt slechts één keer getoond

  5. Sla deze veilig op

Stap 2: Werk uw applicatie bij

  • Implementeer de nieuwe sleutel in uw applicatie (omgevingsvariabelen, secrets manager, enz.)

  • Herstart uw applicatie om de nieuwe sleutel te laden

  • Controleer of de nieuwe sleutel correct werkt

  • Houd eventuele fouten in de gaten

Stap 3: Bewaak de overgang

  • Houd beide sleutels tijdelijk actief

  • Controleer Instellingen → API om de "Laatst gebruikt"-datums te zien

  • Wacht tot de oude sleutel geen recente activiteit meer toont

  • Zorg dat alle instanties/services zijn overgeschakeld naar de nieuwe sleutel

Stap 4: Verwijder de oude sleutel

  • Zodra is bevestigd dat de oude sleutel niet langer wordt gebruikt

  • Verwijder of deactiveer de oude sleutel in Instellingen → API

  • Documenteer de rotatie voor uw administratie

Snel rotatieproces (als er sprake is van compromis)

Als een sleutel zeker gecompromitteerd is en u direct moet handelen:

  1. Verwijder eerst de gecompromitteerde sleutel in Instellingen → API

  2. Maak een nieuwe vervangende sleutel

  3. Implementeer snel de nieuwe sleutel in alle applicaties

  4. Accepteer een korte downtime om ongeautoriseerde toegang te voorkomen

  5. Controleer gebruikslogs op verdachte activiteiten

  6. Neem contact op met support als dat nodig is

Strategie voor rotatie met meerdere omgevingen

Voor productiesystemen gebruikt u een gefaseerde aanpak:

Week 1: Development

  • Maak en implementeer een nieuwe sleutel naar de dev-omgeving

  • Test grondig

Week 2: Staging

  • Implementeer de nieuwe sleutel naar staging

  • Voer integratietests uit

  • Houd issues in de gaten

Week 3: Productie

  • Implementeer de nieuwe sleutel naar productie tijdens een periode met weinig verkeer

  • Houd het nauwlettend in de gaten

  • Houd de oude sleutel 24-48 uur actief als fallback

Week 4: Opruimen

  • Controleer of de oude sleutel geen activiteit meer toont

  • Verwijder de oude sleutel

  • Werk documentatie bij

Voorbeeld van automatisering

Script om te helpen verifiëren dat sleutelrotatie is voltooid:

#!/bin/bash
# check-api-key.sh
OLD_KEY="sk_live_OLD123..."
NEW_KEY="sk_live_NEW789..."
echo "Testing old key..."
OLD_RESPONSE=$(curl -s -w "%{http_code}" -X POST https://api.cathopic.com/resources \
  -H "x-api-key: $OLD_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"test","page":1,"page_size":1}')
echo "Testing new key..."
NEW_RESPONSE=$(curl -s -w "%{http_code}" -X POST https://api.cathopic.com/resources \
  -H "x-api-key: $NEW_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"test","page":1,"page_size":1}')
echo "Old key status: ${OLD_RESPONSE: -3}"
echo "New key status: ${NEW_RESPONSE: -3}"
if [ "${NEW_RESPONSE: -3}" == "200" ]; then
  echo "✅ New key is working!"
else
  echo "❌ New key failed!"
fi

Best practices

  • Roteer regelmatig: Elke 90 dagen voor productsleutels

  • Documenteer rotaties: Houd bij wanneer sleutels zijn geroteerd en waarom

  • Test voordat u verwijdert: Controleer altijd eerst of de nieuwe sleutel werkt voordat u de oude verwijdert

  • Gebruik meerdere sleutels: Scheid sleutels per omgeving om rotatie eenvoudiger te maken

  • Automatiseer waar mogelijk: Gebruik tools voor secretsbeheer die automatische rotatie ondersteunen

Checklist na sleutelrotatie

Bevestig deze punten na het roteren:

  • ✅ Alle productie-instanties gebruiken de nieuwe sleutel

  • ✅ Alle staging/dev-omgevingen zijn bijgewerkt (als u dezelfde sleutel gebruikt)

  • ✅ Omgevingsvariabelen bijgewerkt

  • ✅ CI/CD-secrets bijgewerkt

  • ✅ Documentatie bijgewerkt

  • ✅ Teamleden op de hoogte gebracht

  • ✅ Oude sleutel verwijderd

  • ✅ Rotatie vastgelegd voor auditdoeleinden

Was dit artikel nuttig?