CodeGuard

API-Keys verwalten

Wie du API-Keys erzeugst, rotierst und revoct, und was sie können.

API-Keys verwalten

API-Keys sind die Bearer-Tokens mit denen eure CI und der GitHub-Action-Wrapper gegen das Portal authentifizieren. Jeder Key gehört zu einem User, gilt unabhängig vom Login-Cookie und kann unabhängig revoct werden.

Key erzeugen

Auf /api-keys:

  1. Name vergeben, frei wählbar. Empfehlung: was der Key tut bzw. wo er liegt, z.B. acme-web-ci. Du siehst den Namen später in der Übersicht und beim Audit.
  2. Lifetime wählen. 30 Tage, 90 Tage, 1 Jahr oder unbegrenzt. Kurze Lifetimes sind sicherer, brauchen aber regelmäßige Rotation.
  3. Create klicken.

Den Klartext-Wert kopieren

Direkt nach der Erzeugung zeigt das Portal einmal den vollen Klartext des Keys. Kopier ihn sofort, wir speichern nur einen Hash, der Klartext ist nach dem Schließen der Box weg.

Wenn du den Wert vergessen hast: einfach neuen Key erzeugen, alten revoken. Wir können dir den Wert nachträglich nicht zeigen.

Key in eurer CI hinterlegen

Den kopierten Wert als Secret in eurem CI-System speichern. Details pro CI-System unter API-Keys in Secrets.

GitHub Actions Schnellanleitung:

Repo → Settings → Secrets and variables → Actions → New repository secret
  Name:   CODEGUARD_API_KEY
  Value:  <der Klartext-Wert>

Im Workflow:

- uses: bochmann-software/codeguard@v1
  with:
    api-key: ${{ secrets.CODEGUARD_API_KEY }}

Key revoken

Im Portal in der API-Key-Liste neben dem Eintrag "Revoke" klicken. Ab dem nächsten CI-Aufruf bekommt der Key 401 Unauthorized.

Es gibt keinen "Un-Revoke", wenn du dich versehentlich vertippt hast, einfach neuen Key erzeugen.

Rotation

Empfehlung: alle 6 Monate rotieren, plus immer wenn jemand das Team verlässt der den Klartext gesehen haben könnte.

Sauberer Rotations-Ablauf ohne Downtime:

  1. Neuen Key erzeugen (alter bleibt aktiv).
  2. Im CI-System den neuen Wert in eine zweite Secret-Variable schreiben, z.B. CODEGUARD_API_KEY_NEW.
  3. Workflow umstellen auf die neue Variable, einen CI-Run abwarten um zu prüfen dass es funktioniert.
  4. Alten Key revoken.
  5. Aufräumen: CODEGUARD_API_KEY_NEW zurück auf CODEGUARD_API_KEY umbenennen, optionaler Schritt.

Es dürfen mehrere Keys gleichzeitig aktiv sein.

Was ein Key kann

Ein Key autorisiert den Lese-Zugriff auf alle Release-Assets, die zu eurer Subscription gehören. Damit pullen CI-Workflows Installer, CLI-Binaries pro Plattform und die VSIX.

Was passiert beim Trial-Ende

Wenn deine Subscription expired ist, geben alle Keys ab dem nächsten Aufruf 403 zurück. Der Key bleibt aktiv aber unbrauchbar. Sobald die Subscription wieder läuft, funktioniert der Key wieder ohne Änderung.

Audit

In der API-Keys-Liste siehst du pro Key:

  • Wann erzeugt
  • Wann zuletzt benutzt
  • Wie viele Pulls in den letzten 30 Tagen
  • Aktueller Status (aktiv / revoked / expired)

Wenn ein Key auffällig viel oder gar nicht benutzt wird, ist das ein Signal: entweder ihn revoken weil unbenutzt, oder genauer hinschauen warum so viele Pulls.

Mehrere Keys parallel

Sinnvoll wenn ihr unterschiedliche CI-Setups habt, z.B. einen Key für das Haupt-CI und einen separaten für einen Build-Server in einer isolierten Umgebung. So könnt ihr einen revoken ohne den anderen zu treffen.

Es gibt heute kein hartes Limit für Keys pro Account, aber wir behalten uns vor das einzuführen wenn jemand Schindluder treibt.