API-Key
Was ist API-Key?
API-KeyStatischer geheimer String, den ein Dienst ausstellt, um einen Aufrufer zu identifizieren und zu authentifizieren - meist im Header oder Query-Parameter jeder API-Anfrage.
API-Keys sind lange, zufällig generierte Strings, die ein Projekt, einen Service-Account oder einen Entwickler gegenüber einer Backend-API ausweisen. Sie lassen sich einfach ausstellen und verwenden, bieten aber nur schwache Garantien: Sie identifizieren den Aufrufer, nicht den Benutzer, laufen standardmäßig nicht ab und gewähren genau die Rechte, die ihnen zugeordnet sind. Da es sich um statische Bearer-Secrets handelt, kann jeder, der an den String gelangt, den legitimen Aufrufer imitieren, bis der Key widerrufen wird.
Der häufigste Fehlerfall ist das Leaken über die Versionsverwaltung. GitHub meldete, dass 2024 über 39 Millionen Secrets auf der Plattform offengelegt wurden, und GitGuardians Untersuchung State of Secrets Sprawl fand AWS-IAM-Keys in rund 8 % der gescannten privaten Repositories. Ein Beispiel aus 2025 war das öffentliche Repository "Private-CISA", in dem der GitGuardian-Forscher Guillaume Valadon offengelegte AWS-GovCloud-Zugangsdaten, Klartext-Passwörter und SAML-Zertifikate fand, die mit US-Regierungssystemen verknüpft waren. Keys lecken auch über mobile Apps (dekompilierte APKs), Frontend-JavaScript-Bundles, CI-Logs und Screenshots.
Schutzmaßnahmen: Keys in einem Secrets-Manager statt im Code ablegen, anbieterseitiges Secret-Scanning und Push-Protection aktivieren, jeden Key auf die minimal nötigen Endpoints scopen, per IP oder HTTP-Referer einschränken, Ablauf setzen und planmäßig rotieren sowie bei Offenlegung sofort widerrufen. Für Endnutzer-Autorisierung oder kritische Operationen besser OAuth 2.0, mTLS oder HMAC-signierte Requests verwenden, die das Credential an Benutzer, Audience und eine kurze Lebenszeit binden.
flowchart LR
A[Entwickler stellt API-Key aus] --> B[Key in App/Config eingebettet]
B --> C{Sicher gespeichert?}
C -->|Secrets-Manager + Scanning| D[Aufrufer -> API-Anfrage<br/>Authorization-Header]
C -->|In Repo / APK / Logs committet| E[Secret-Scanner + Angreifer<br/>greifen den Key ab]
E --> F[Imitation & Missbrauch<br/>bis zum Widerruf]
D --> G[Scope + IP-Allowlist + Rotation<br/>begrenzen den Schaden]● Beispiele
- 01
Authorization: ApiKey sk_live_abc123...
- 02
Stripe-, Google-Maps- und Twilio-APIs, die über projektspezifische API-Keys angesprochen werden.
● Häufige Fragen
Was ist API-Key?
Statischer geheimer String, den ein Dienst ausstellt, um einen Aufrufer zu identifizieren und zu authentifizieren - meist im Header oder Query-Parameter jeder API-Anfrage. Es gehört zur Kategorie Identität und Zugriff der Cybersicherheit.
Was bedeutet API-Key?
Statischer geheimer String, den ein Dienst ausstellt, um einen Aufrufer zu identifizieren und zu authentifizieren - meist im Header oder Query-Parameter jeder API-Anfrage.
Wie schützt man sich gegen API-Key?
Schutzmaßnahmen gegen API-Key kombinieren typischerweise technische Kontrollen und operative Praktiken, wie in der Definition oben beschrieben.