Wie rotiere ich einen API-Schlüssel?

Zuletzt aktualisiert: vor 3 Monaten

Das regelmäßige Rotieren von API-Schlüsseln ist eine wichtige Sicherheitsmaßnahme. So können Sie Ihre Schlüssel sicher rotieren, ohne Ihren Dienst zu unterbrechen.

Warum API-Schlüssel rotieren?

  • Sicherheits-Best-Practice: Begrenzt die Gefährdung, falls ein Schlüssel jemals kompromittiert wurde

  • Wechsel im Team: Wenn Entwickler das Unternehmen verlassen oder Rollen wechseln

  • Verdacht auf Kompromittierung: Wenn Sie glauben, dass ein Schlüssel möglicherweise offengelegt wurde

  • Compliance: Einige Sicherheitsrichtlinien verlangen eine regelmäßige Rotation von Schlüsseln

  • Änderungen in der Umgebung: Wenn Sie Infrastruktur migrieren oder refactoring durchführen

Standard-Rotationsprozess (ohne Ausfallzeit)

Schritt 1: Erstellen Sie einen neuen Schlüssel

  1. Melden Sie sich bei Einstellungen → API an

  2. Klicken Sie auf "Neuen API-Schlüssel erstellen"

  3. Benennen Sie ihn aussagekräftig (z. B. "Production Web v2")

  4. Kopieren Sie den neuen Schlüssel sofort – er wird nur einmal angezeigt

  5. Speichern Sie ihn sicher

Schritt 2: Aktualisieren Sie Ihre Anwendung

  • Stellen Sie den neuen Schlüssel in Ihrer Anwendung bereit (Umgebungsvariablen, Secrets-Manager usw.)

  • Starten Sie Ihre Anwendung neu, um den neuen Schlüssel zu laden

  • Prüfen Sie, ob der neue Schlüssel korrekt funktioniert

  • Beobachten Sie auf mögliche Fehler

Schritt 3: Überwachen Sie die Umstellung

  • Behalten Sie beide Schlüssel vorübergehend aktiv

  • Prüfen Sie Einstellungen → API, um die Angaben zu "Last used" (zuletzt verwendet) zu sehen

  • Warten Sie, bis der alte Schlüssel keine aktuelle Aktivität mehr anzeigt

  • Stellen Sie sicher, dass alle Instanzen/Dienste auf den neuen Schlüssel umgestellt haben

Schritt 4: Löschen Sie den alten Schlüssel

  • Sobald bestätigt ist, dass der alte Schlüssel nicht mehr verwendet wird

  • Löschen oder deaktivieren Sie den alten Schlüssel in Einstellungen → API

  • Dokumentieren Sie die Rotation für Ihre Unterlagen

Schneller Rotationsprozess (falls kompromittiert)

Wenn ein Schlüssel eindeutig kompromittiert ist und Sie sofort handeln müssen:

  1. Löschen Sie zuerst den kompromittierten Schlüssel in Einstellungen → API

  2. Erstellen Sie einen neuen Ersatzschlüssel

  3. Stellen Sie den neuen Schlüssel schnell in allen Anwendungen bereit

  4. Nehmen Sie eine kurze Ausfallzeit in Kauf, um unbefugten Zugriff zu verhindern

  5. Überwachen Sie die Nutzungsprotokolle auf verdächtige Aktivitäten

  6. Kontaktieren Sie bei Bedarf den Support

Strategie für die Rotation in mehreren Umgebungen

Für Produktionssysteme verwenden Sie einen gestaffelten Ansatz:

Woche 1: Entwicklung

  • Erstellen und stellen Sie den neuen Schlüssel in der Dev-Umgebung bereit

  • Gründlich testen

Woche 2: Staging

  • Stellen Sie den neuen Schlüssel im Staging bereit

  • Führen Sie Integrationstests durch

  • Beobachten Sie auf Probleme

Woche 3: Produktion

  • Stellen Sie den neuen Schlüssel in der Produktion während einer Phase mit geringem Traffic bereit

  • Genau überwachen

  • Behalten Sie den alten Schlüssel 24–48 Stunden als Fallback aktiv

Woche 4: Aufräumen

  • Prüfen Sie, dass der alte Schlüssel keine Aktivität mehr anzeigt

  • Löschen Sie den alten Schlüssel

  • Aktualisieren Sie die Dokumentation

Beispiel für Automatisierung

Skript, um zu helfen zu überprüfen, ob die Schlüsselrotation abgeschlossen ist:

#!/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

  • Regelmäßig rotieren: Alle 90 Tage für Produktionsschlüssel

  • Rotationen dokumentieren: Führen Sie ein Protokoll darüber, wann Schlüssel rotiert wurden und warum

  • Vor dem Löschen testen: Verifizieren Sie immer, dass der neue Schlüssel funktioniert, bevor Sie den alten entfernen

  • Mehrere Schlüssel verwenden: Schlüssel pro Umgebung trennen, damit die Rotation einfacher wird

  • Wo möglich automatisieren: Nutzen Sie Secrets-Management-Tools, die eine automatische Rotation unterstützen

Checkliste nach der Rotation

Bestätigen Sie diese Punkte nach der Rotation:

  • ✅ Alle Produktionsinstanzen verwenden den neuen Schlüssel

  • ✅ Alle Staging-/Dev-Umgebungen aktualisiert (falls derselbe Schlüssel verwendet wird)

  • ✅ Umgebungsvariablen aktualisiert

  • ✅ CI/CD-Secrets aktualisiert

  • ✅ Dokumentation aktualisiert

  • ✅ Teammitglieder informiert

  • ✅ Alter Schlüssel gelöscht

  • ✅ Rotation für Audit-Zwecke protokolliert

War dieser Artikel hilfreich?