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
Melden Sie sich bei Einstellungen → API an
Klicken Sie auf "Neuen API-Schlüssel erstellen"
Benennen Sie ihn aussagekräftig (z. B. "Production Web v2")
Kopieren Sie den neuen Schlüssel sofort – er wird nur einmal angezeigt
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:
Löschen Sie zuerst den kompromittierten Schlüssel in Einstellungen → API
Erstellen Sie einen neuen Ersatzschlüssel
Stellen Sie den neuen Schlüssel schnell in allen Anwendungen bereit
Nehmen Sie eine kurze Ausfallzeit in Kauf, um unbefugten Zugriff zu verhindern
Überwachen Sie die Nutzungsprotokolle auf verdächtige Aktivitäten
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