Startseite Themen API-Schlüssel Was ist ein API-Schlüssel?
API-Schlüssellösung von IBM erkunden Für KI-Updates anmelden
Illustration mit Collage aus Piktogrammen von Ausrüstung, Roboterarm, Mobiltelefon

Veröffentlicht: 11. Juni 2024
Mitwirkende: Gita Jackson, Michael Goodwin

Was ist ein API-Schlüssel?

Ein API-Schlüssel ist eine eindeutige Kennung, die verwendet wird, um Software und Systeme zu authentifizieren, die versuchen, über eine Programmierschnittstelle oder API (Application Programming Interface) auf andere Software oder Systeme zuzugreifen.

Eine API oder Programmierschnittstelle besteht aus einer Reihe von Regeln oder Protokollen, die es Softwareanwendungen ermöglichen, miteinander zu kommunizieren, um Daten, Funktionen und Funktionalitäten auszutauschen. APIs bieten den Anwendungseigentümern eine einfache und sichere Möglichkeit, ihre Anwendungsdaten und -funktionen den Abteilungen innerhalb ihres Unternehmens zur Verfügung zu stellen. Die Anwendungseigentümer können Daten und Funktionen auch an Geschäftspartner oder Dritte weitergeben oder vermarkten. APIs ermöglichen es, nur die notwendigen Informationen auszutauschen, während andere interne Systemdetails verborgen bleiben, was zur Systemsicherheit beiträgt.

Da APIs Zugriff auf vertrauliche Daten gewähren können, ist es wichtig, dass die API überprüfen kann, ob die anfragende Anwendung dazu berechtigt ist. Mithilfe von API-Schlüsseln kann ein Anwendungsentwickler die Anwendungen authentifizieren, die das Backend einer API aufrufen, um sicherzustellen, dass diese dazu berechtigt sind.

API-Schlüssel können zwar ein Aspekt sein, um sicherzustellen, dass die APIs eines Unternehmens – und die Daten, die sie verarbeiten – sicher sind, aber sie sind keine endgültige API-Sicherheitslösung. Insbesondere sind API-Schlüssel nicht so sicher wie Authentifizierungstoken oder das OAuth-Protokoll (offene Autorisierung). Diese Maßnahmen eignen sich besser, um bestimmte menschliche Benutzer zu authentifizieren, geben Unternehmen eine detailliertere Kontrolle über den Zugriff auf die Funktionen einer bestimmten API und können mit einem Ablaufzeitpunkt versehen werden.

OAuth kann mit API-Schlüsseln oder alleine verwendet werden. Manchmal kann ein Unternehmen für einige Anwender einen API-Schlüssel einsetzen, während es für andere Anwender OAuth nutzt. Es gibt andere Methoden zur Authentifizierung von API-Aufrufen, wie z. B. JSON Web Tokens (JWT), aber diese werden nicht so häufig verwendet.

API-Schlüssel sind immer noch ein nützlicher Aspekt der API-Sicherheit, da sie Unternehmen helfen, API-Aufrufe zu überwachen und die API-Nutzung zu verwalten, die Sicherheit zu erhöhen und sicherzustellen, dass diese Programme über eine ausreichende Bandbreite verfügen.

Der Schlüssel zum vollen Potenzial Ihrer APIs: API-Management

Lesen Sie dieses SmartPaper, um Erkenntnisse über die wichtigsten Herausforderungen zu gewinnen, die den Bedarf an API-Management vorantreiben, und verstehen Sie die wichtigsten Funktionen einer effektiven API-Managementlösung.

Ähnliche Inhalte

IBM Newsletter abonnieren

Wie funktionieren API-Schlüssel?

Ein API-Schlüssel ist eine zufällig generierte, eindeutige alphanumerische Zeichenkette, die APIs zur Authentifizierung der Anwendungen verwenden, die Aufrufe an eine API senden. Jeder Schlüssel, den ein API-Anbieter ausgibt, ist mit einem bestimmten API-Client verknüpft, z. B. einem Softwaremodul. Mit API-Schlüsseln kann ein API-Server erkennen, welche Software und Anwendungen einen Aufruf an die API senden. Der generierte Schlüssel wird für jede Anforderung verwendet, die von dieser Anwendung oder diesem Projekt an die zugehörige API gesendet wird (bis der Schlüssel aktualisiert oder gelöscht wird).

Der Prozess funktioniert folgendermaßen:

Wenn eine Anwendung einen Aufruf an eine API sendet, um Funktionen oder Daten von einer anderen Anwendung anzufordern, verwendet der API-Server den API-Schlüssel, um die Authentizität der Anwendung zu überprüfen. Bei Webanwendungen und REST-APIs kann der Schlüssel als Header, in einer Abfragezeichenfolge oder als Cookie gesendet werden. Wenn der API-Schlüssel mit einem genehmigten Schlüssel übereinstimmt, sendet der Server die angeforderten Daten. Ist dies nicht der Fall, lehnt er die Abfrage ab und sendet eine entsprechende Nachricht.

Entwickler können bei Bedarf weitere Validierungen und Einschränkungen hinzufügen.

Sie können beispielsweise Zugriffsrechte für eine Anwendung oder ein Projekt konfigurieren, die nur den Zugriff auf bestimmte Arten von Daten oder Funktionen zulassen. Entwickler können auch Anwendungseinschränkungen festlegen, die angeben, welche Websites, IP-Adressen, Anwendungen (oder mobilen Apps) und Software Development Kits (SDKs) einen API-Schlüssel verwenden können.

API-Schlüssel und API-Sicherheit

API-Schlüssel sind zwar Teil der API-Sicherheit, sie sollten jedoch nicht die einzige Methode sein, mit der ein Unternehmen Aufrufe an eine API authentifiziert und validiert. Obwohl API-Schlüssel nützlich sind, stellen sie keine besonders sichere Methode zur Authentifizierung von Aufrufen dar. API-Schlüssel können eine bestimmte Anwendung oder ein bestimmtes Projekt identifizieren, aber sie können nicht den einzelnen Anwender validieren, der die aufrufende Anwendung nutzt. Dies macht API-Schlüssel zu einer schlechten Wahl für die Durchsetzung der API-Zugriffskontrolle. API-Schlüssel bieten nur eine Projektidentifikation und Projektautorisierung, keine Benutzeridentifikation oder Benutzerautorisierung.

Stellen Sie sich einen API-Schlüssel wie ein Passwort vor: Es handelt sich um eine Sicherheitsstufe aber auch um einen potenzieller Fehlerpunkt für eine Sicherheitsverletzung. Wie ein Passwort kann jeder den API-Schlüssel verwenden, der Zugriff darauf hat. Es gibt keine Möglichkeit zu überprüfen, wer den Schlüssel verwendet. Und Schlüssel laufen selten ab, es sei denn, sie werden ausdrücklich neu generiert.

API-Schlüssel, die mit Webanwendungen verwendet werden, gelten über HTTP (Plain Hypertext Transfer Protocol) nicht als sicher, da sie unverschlüsselte Anmeldeinformationen senden. Um als sicher zu gelten, müssen Webanwendungen über eine SSL-Zertifizierung (Secure Sockets Layer) verfügen, auch bekannt als HTTPS (Hypertext Transfer Protocol Secure).

Zu den anderen Validierungsmethoden für API-Aufrufe gehören:

Authentifizierungs-Token

Authentifizierungstoken, die auch als API-Token bezeichnet werden, fügen eine zusätzliche API-Sicherheitsstufe hinzu, da sie einen bestimmten Anwender und nicht nur die Anwendung, die die Anforderung stellt, identifizieren können. Diese Token sind Codefragmente, die einen Anwender gegenüber der API, von der er Daten anfordert, identifizieren. Da es sich um mehrere Codezeilen und nicht um eine einzelne alphanumerische Zeichenfolge handelt, liefern sie der API mehr Informationen darüber, wer oder welches Projekt eine Anfrage stellt. API-Token können auch mit begrenztem Umfang generiert werden, so dass sie nur für einen begrenzten Zeitraum Zugriff auf bestimmte Informationen gewähren. 

OAuth-Protokoll

Das OAuth-Protokoll (offene Autorisierung) ist Teil der Branchenstandardmethode zur Autorisierung und Authentifizierung von Aufrufen an eine API bei Verwendung mit OpenID Connect (OIDC). Das OAuth-Protokoll ist der Aspekt, der Anwendern Zugriff auf die angeforderten Informationen gewährt und im breiteren Prozess der Nutzerauthentifizierung verwendet wird.

OAuth verwendet eine Art API-Token, ein sogenanntes Zugriffstoken. Zugriffstoken werden den Benutzern von den APIs ausgestellt, auf die sie zugreifen wollen. Diese Token gewähren durch eine Reihe von Kommunikationen zwischen einer API und dem Anwender Zugriff auf die spezifischen Informationen, die der Anwender angefordert hat, ohne dass Anmeldeinformationen oder andere sichere Informationen mit der API geteilt werden müssen.

OpenID Connect ist ein auf OAuth aufbauendes Authentifizierungsprotokoll, das es OAuth ermöglicht, Anwender durch die Ausgabe von Identitäts- und Zugriffstoken zu authentifizieren. Diese Identitätstoken enthalten nicht nur Informationen über das Projekt sondern auch über das spezifische Konto, von dem die Anfrage kommt. OpenID Connect nimmt geringfügige Anpassungen am Autorisierungsfluss von OAuth vor, indem es sowohl ein Zugriffstoken als auch ein Identitätstoken anfordert, bevor der Zugriff auf eine API gewährt wird.

API-Schlüssel können mit anderen Formen der Authentifizierung für API-Aufrufe oder separat verwendet werden. Innerhalb eines Unternehmens kann eine API unterschiedliche Arten der Authentifizierung und Autorisierung verwenden, je nachdem, wer den Zugriff anfordert. Einige Teile eines Unternehmens, z. B. Entwickler, benötigen möglicherweise uneingeschränkten Zugriff auf eine API, während andere Abteilungen einen strenger kontrollierten Zugriff benötigen.

Welche Arten von API-Schlüsseln gibt es?

Es gibt zwei Haupttypen von API-Schlüsseln, die beide bei der Authentifizierung von API-Aufrufen eine Rolle spielen. Manchmal werden sie sogar zusammen verwendet.

Öffentliche Schlüssel

Dabei handelt es sich um Schlüssel, die den Zugriff auf nicht sensible Daten oder Funktionen ermöglichen, die keine Benutzerauthentifizierung erfordern. Sie können offen zwischen Entwicklern und anderen Stakeholdern, die mit einer API arbeiten, geteilt werden.

Private Schlüssel

Private Schlüssel werden für den Zugriff auf sensible Daten verwendet und können dem Schlüsselnutzer auch Schreibzugriff gewähren. Private API-Schlüssel können zusammen mit einem öffentlichen Schlüssel verwendet werden, um eine zusätzliche Sicherheitsebene zu schaffen.

Obwohl API-Schlüssel nicht die einzige Methode zur Authentifizierung von API-Aufrufen sein sollten, kann die paarweise Verwendung von öffentlichem und privatem Schlüssel eine zusätzliche Sicherheitsebene darstellen. Wenn eine API aufgerufen wird, kann ein privater Schlüssel als eine Art digitale Signatur für bestimmte Clients verwendet werden, die Zugriff auf bestimmte Funktionen einer API benötigen. Anschließend kann der öffentliche Schlüssel die Signatur verifizieren und erneut bestätigen, dass der Aufruf der API legitim ist.

Was sind andere Anwendungsfälle für API-Schlüssel? 

API-Schlüssel bieten nützliche Funktionen innerhalb eines Unternehmens, die über die einfache Authentifizierung hinausgehen. Da diese Schlüssel dabei helfen, den API-Zugriff zu bestimmen, können sie auch verwendet werden, um Anwendungen am Laufen zu halten und nützliche Daten über ihre Nutzung bereitzustellen.

Blockieren Sie anonymen Datenverkehr
API-Schlüssel sind ein wichtiger Aspekt der Zugriffsverwaltung, mit dem ein Unternehmen kontrollieren kann, welche Benutzer auf ihre APIs zugreifen können. Anonymer Datenverkehr zu einer API kann ein Hinweis auf böswillige Aktivitäten sein. Die Verwendung von API-Schlüsseln ermöglicht es einem Unternehmen, unbefugten Zugriff auf APIs zu blockieren, wie z. B. anonyme API-Aufrufe, was den Umfang eines potenziellen Cyberangriffs einschränken kann. Auf diese Weise den API-Service einzuschränken, trägt auch dazu bei zu verhindern, dass APIs mit Anfragen bombardiert werden, und minimiert so die Wahrscheinlichkeit von Ausfallzeiten für wichtige Anwendungen.

Steuern der Anzahl der Aufrufe von APIs
API-Schlüssel können verwendet werden, um den Datenverkehr einer API einzuschränken – eine Maßnahme, die als Ratenbegrenzung bezeichnet wird. Mit der Ratenbegrenzung kann ein Unternehmen kontrollieren, wie viele Anfragen von einem Client in einem bestimmten Zeitraum an eine API gestellt werden. Der API-Zugriff wird verweigert, nachdem der Datenverkehr den definierten Schwellenwert erreicht hat.

Indem das Unternehmen nur Anwendungsverkehr innerhalb der definierten Parameter zulässt, kann es die Nutzung von API-Ressourcen und Bandbreite optimieren. Diese Einstellungen können in der API-Dokumentation eines Unternehmens festgelegt werden.

Überwachen der API-Nutzungstrends
Da es sich bei API-Schlüsseln um eindeutige Identifikatoren handelt, kann ein Unternehmen API-Schlüssel verwenden, um den Datenverkehr und die Aufrufe von APIs zu verfolgen. Mithilfe von API-Schlüsseln können Unternehmen jeden Aufruf einer API bis zu einer bestimmten Anwendung zurückverfolgen. Sie können auch die Anzahl der getätigten Aufrufe, die Art der Aufrufe, den IP-Adressbereich des Anwenders und sogar die Verwendung von iOS oder Android bestimmen.

Durch die Analyse von Nutzungsmustern kann ein Unternehmen besser verstehen, welche Bereiche eines Unternehmens am häufigsten auf bestimmte Endgeräte zugreifen. Die Überwachung des Datenverkehrs und das Filtern von Protokollen sind auch für die API-Sicherheit nützlich. Im Falle eines Cyberangriffs kann die Überprüfung der Aktivitäten auf einem API-Server mit bestimmten API-Schlüsseln einem Unternehmen einen besseren Einblick in den Angriff geben und zeigen, welche Schlüssel möglicherweise kompromittiert wurden.

So sichern Sie einen API-Schlüssel

API-Schlüssel können zum Schutz von APIs, Daten und Netzwerken beitragen, aber nur, wenn sie auf sichere Weise verwendet werden. Viele Unternehmen setzen diese Methoden ein, um sicherzustellen, dass ihre API-Schlüssel sicher sind, und um zu verhindern, dass APIs zu Vektoren für Cyberangriffe werden.

Kombination mehrerer Authentifizierungsmethoden
API-Schlüssel sind nicht sicher genug, um die einzige Möglichkeit für die Authentifizierung von API-Aufrufen zu sein. Sie können keine einzelnen Benutzer validieren und können leicht kompromittiert werden. API-Schlüssel können eine zusätzliche Sicherheitsbarriere für das API-Ökosystem eines Unternehmens darstellen, wenn sie zusammen mit einer anderen Authentifizierungsmethode, wie OAuth, JSON Web Token (JWT) oder Authentifizierungstoken, verwendet werden.

Es ist nicht ungewöhnlich, dass Unternehmen mehr als eine Authentifizierungsmethode verwenden. Beispielsweise können Entwickler intern API-Schlüssel verwenden, um während der Entwicklung uneingeschränkten Zugriff auf APIs zu ermöglichen, dann aber für externe Clients OAuth verwenden, da dieses Token bereitstellt, die ablaufen und so eingerichtet werden können, dass nur der Zugriff auf bestimmte Daten erlaubt ist.

Sichere Schlüsselspeicherung
Wenn Schlüssel generiert werden, werden sie oft im Klartext erzeugt. Genau wie bei einem Passwort hängt die Sicherheit dieses Schlüssels davon ab, wie und wo er gespeichert wird. Sicherheitsexperten empfehlen, diese Schlüssel als Hashwerte in einer Datenbank zu speichern, damit sie nicht gestohlen werden können.

Das Einbetten von API-Schlüsseln in den Quellcode oder das Repository macht sie auch anfällig für böswillige Akteure: Wenn die Anwendung veröffentlicht wird, können die Schlüssel auch der Öffentlichkeit zugänglich gemacht werden. Verwenden Sie nach Möglichkeit einen sicheren und verschlüsselten Data Vault, um die generierten API-Schlüssel zu speichern.

Rotieren oder Ersetzen der Schlüssel
API-Schlüssel laufen nicht ab, es sei denn, die Entwickler legen ein Ablaufdatum fest oder der Schlüsselgenerator widerruft den Zugriff oder generiert den Schlüssel neu. Wenn ein nicht autorisierter Benutzer einen API-Schlüssel erhält, könnte er auf vertrauliche Daten zugreifen, ohne dass jemand im Unternehmen davon erfährt. Es wird schließlich der für die angeforderten Daten richtige Schlüssel verwendet.

Das Rotieren und Generieren neuer API-Schlüssel alle 90 bis 180 Tage kann dazu beitragen, die Sicherheit von APIs zu gewährleisten. Es ist auch sinnvoll, nicht mehr verwendeten API-Schlüssel zu löschen. Für zusätzlichen Schutz können Unternehmen den Umfang des Zugriffs auf API-Schlüssel, die mit Clients geteilt werden, durch die Durchsetzung von Zugriffsrechten einschränken. Mit diesen Rechten erhalten die Benutzer Zugriff auf die Endgeräte, die sie benötigen, und sonst nichts. Einige Unternehmen automatisieren die Generierung neuer Schlüssel, um sicherzustellen, dass diese regelmäßig rotieren.

Weiterführende Lösungen
IBM Cloud Pak for Integration

IBM® Cloud Pak for Integration ist eine hybride Integrationsplattform, die mithilfe von Closed-Loop KI-Automatisierung verschiedene Arten der Integration ermöglicht. Die Plattform bietet eine umfassende Palette von Integrationstools in einer einzigen, einheitlichen Umgebung, um Anwendungen und Daten in jeder Cloud- oder On-Premises-Umgebung zu verbinden.

IBM Cloud Pak for Integration erkunden

IBM API Connect

IBM App Connect ist eine der branchenführenden SaaS-Integrationslösungen, die alle Ihre Anwendungen und Daten miteinander verbindet, unabhängig davon, wo sie sich befinden.

IBM APP Connect ansehen Buchen Sie eine Live-Demo

IBM Event Automation

IBM® Event Automation ist eine vollständig modulare Lösung und ermöglicht es Unternehmen, ihre ereignisgesteuerten Aktivitäten zu beschleunigen – unabhängig davon, an welchem Punkt ihrer Journey sie stehen. Die Funktionen für Event Streams, Event Endpoint Management und Event Processing bilden die Grundlage für eine ereignisgesteuerte Architektur, mit der sich der Wert von Ereignissen erschließen lässt.

Erkunden Sie IBM Event Automation Buchen Sie eine Live-Demo
Ressourcen Was ist eine API?

Eine Programmierschnittstelle (API) ist eine Reihe von Regeln oder Protokollen, die es Softwareanwendungen ermöglichen, miteinander zu kommunizieren, um Daten, Funktionen und Funktionalitäten auszutauschen.

Hintergrundinformationen zu IBM API Connect

Verschaffen Sie sich einen technischen Überblick über IBM API Connect, seine API-Lebenszyklusphasen und seine wichtigsten Produktkomponenten.

Developer Portal: Eigene APIs teilen

Erfahren Sie, wie Sie Ihre APIs mit Anwendungsentwicklern im Developer Portal teilen.

Gartner Magic Quadrant™ 2023

Gartner nennt IBM im Gartner Magic Quadrant 2023 für Full Lifecycle API Management zum achten Mal in Folge als Marktführer.

Gartner Critical Capabilities Report 2023

Der Bericht „Critical Capabilities for API Management“ ist ein Begleitbericht zum Gartner Magic Quadrant und bietet einen tieferen Einblick in die Angebote der Anbieter. In diesem Bericht belegte IBM in 4 der 5 Anwendungsfälle den ersten Platz.

Was ist Cybersicherheit?

Cybersicherheit bezieht sich auf alle Technologien, Maßnahmen oder Praktiken zur Verhinderung von Cyberangriffen auf die Systeme, Anwendungen, Computergeräte, sensiblen Daten und finanziellen Assets von Einzelpersonen und Organisationen oder zur Milderung ihrer Auswirkungen.

Machen Sie den nächsten Schritt

Verwenden Sie IBM API Connect, um Unternehmens-APIs über ihre gesamten Lebenszyklen hinweg zu sichern und zu verwalten. Es hilft Ihnen und Ihren Kunden, Unternehmens-APIs konsistent zu erstellen, zu verwalten, zu sichern, zu sozialisieren und zu monetarisieren, und ist ebenfalls als hoch skalierbare API Management-Plattform auf IBM Marketplace und AWS verfügbar.

API Connect entdecken Buchen Sie eine Live-Demo