Was ist ein API-Schlüssel?
Ein API-Schlüssel ist eine alphanumerische Zeichenfolge, mit der API-Entwickler den Zugriff auf ihre APIs steuern. Eine API ist ein Kommunikationsmechanismus, der den Datenaustausch zwischen zwei Softwaremodulen ermöglicht. Sobald Sie eine API für Ihr Modul erstellt haben, können andere Anwendungsentwickler Ihre API aufrufen, um Ihre Funktionalität in ihren Code zu integrieren. Sie könnten beispielsweise ein Modul entwickeln, das eine Artikelliste als Eingabe verwendet und eine Liste von Geschäften zurückgibt, in denen Sie die Artikel zum niedrigsten Preis kaufen können. Eine E-Commerce-Anwendung könnte dann Ihre API verwenden, um eine Liste mit täglichen Lebensmittelangebote für ihre Kunden zu erstellen. Als API-Ersteller verwenden Sie API-Schlüssel, um Ihren API-Zugriff einzuschränken und zu überwachen. Der API-Schlüssel identifiziert die autorisierte API-Nutzung, so dass Sie Ihre APIs effizienter warten, verwalten und gewinnbringend nutzen können.
Was sind die Anwendungsfälle für API-Schlüssel?
Softwareentwickler verwenden API-Schlüssel, um zu verwalten, wie auf die von ihnen erstellten APIs zugegriffen wird. API-Schlüssel tragen in mehrfacher Hinsicht zur Entwicklung moderner Cloud-Anwendungen bei.
API-Nutzung überwachen
API-Anbieter verwenden API-Schlüssel, um die Nutzung zu verfolgen und den API-Verbrauch zu verwalten, insbesondere für kommerzielle Anwendungen. Sie stellen den Benutzern die Rechenressourcen in Rechnung, die die API verbraucht.
Als API-Anbieter können Sie den Zugriff auf die API-Services mit eindeutigen API-Schlüsseln einschränken. Indem Sie nur legitimen Datenverkehr zulassen, können Sie die Ressourcennutzung und Bandbreitenkapazität Ihrer API optimieren. Sie können auch die Nutzungsstatistiken der einzelnen Schlüssel analysieren, um die Kontingente verschiedener Pläne anzupassen.
Fehlerbehebung bei API-Integrationen
Bei Cloud-Anwendungen können aufgrund der verwendeten APIs technische Probleme auftreten. Softwareentwickler verwenden API-Schlüssel, um abnormale Datenmuster zu erkennen und den API-Verkehr ihren jeweiligen Anbietern zuzuordnen. Auf diese Weise können sie die spezifische API identifizieren und isolieren, die verhindert, dass sich eine Anwendung korrekt verhält.
Projekte identifizieren
Softwareanwendungen tauschen sensible Daten über eine API mit externen Services aus. API-Schlüssel dienen als Autorisierungsmechanismus für Projekte, um die Nutzung durch zugelassene Projekte zu regulieren. Um eine API verwenden zu können, muss das Projekt die richtigen API-Anmeldeinformationen für den Zugriff auf die abstrahierten Softwarefunktionen vorlegen. Es ist wichtig zu beachten, dass API-Schlüssel bestimmte Benutzer nicht authentifizieren. Stattdessen identifizieren sie im Großen und Ganzen die Organisation, die einem bestimmten Schlüssel zugeordnet ist.
Wie funktioniert ein API-Schlüssel?
Der API-Schlüssel besteht aus zufällig generierten Alphabeten und Zahlen. Sie verknüpfen einen bestimmten API-Schlüssel mit einem bestimmten API-Client. Da die API-Nutzung im Wesentlichen darin besteht, dass ein Softwaremodul mit einem anderen kommuniziert, sind die Schlüssel verschiedenen Softwaremodulen oder Anwendungen zugeordnet, die mit Ihrer API kommunizieren möchten.
Wenn eine Anwendung API-Anfragen sendet, funktioniert der Prozess wie folgt:
- Der API-Server validiert die Authentizität des Anforderers mit dem eindeutigen API-Schlüssel
- Wenn der API-Schlüssel mit keinem der zulässigen übereinstimmt, lehnt der Server den API-Aufruf ab und sendet eine Ablehnungsnachricht.
- Wenn der API-Schlüssel übereinstimmt, erfüllt der Server die Anfrage und gibt die erwartete Antwort zurück
Auf diese Weise ermöglichen API-Schlüssel dem API-Server, den Ursprung jedes API-Aufrufs zu identifizieren. Der Server kann dann nachfolgende Validierungen durchführen, um den Zugriff auf die Daten und Services der API zu autorisieren.
API-Aufrufe einschränken
API-Anbieter können den API-Schlüssel verwenden, um den unterschiedlichen Grad des Zugriffs auf ihre API-Services zu regulieren. Nach der Validierung einer Anfrage kann der API-Server einige Parameter überprüfen, bevor er weiteren Zugriff auf seine Services gewährt.
Umfang des Service
Der Server bestimmt den Umfang der Services, die er der anfragenden Anwendung gewähren kann. Einige API-Schlüssel ermöglichen es dem Anforderer beispielsweise, Informationen aus dem Datenspeicher der API hinzuzufügen, zu löschen und zu lesen. Andere beschränken API-Aufrufe möglicherweise nur auf das Lesen von Informationen.
Wahl der Funktionen
Der Server bestimmt und legt den Umfang des API-Aufrufs fest, um seine API-Services anzupassen. Sie können beispielsweise API-Schlüssel verwenden, um eine E-Commerce-Anwendung auf die Suche nach Produktdaten in bestimmten Ländern zu beschränken. Sie können auch bestimmten parametrischen Datenbankfiltern, wie Büchern und Bekleidung, bestimmte API-Schlüssel zuordnen.
Anzahl der Aufrufe
API-Anbieter verwenden auch API-Schlüssel, um den API-Zugriff streng zu regulieren. Einige Anbieter wenden Zeit- oder Anforderungslimits für ihre APIs an. In solchen Fällen kann die Client-Anwendung die API nur für die festgelegte Dauer oder bis zu einer begrenzten Anzahl täglich verwenden. Sobald die Grenzwerte überschritten sind, lehnt der Server alle Anfragen von den zugehörigen API-Schlüsseln ab.
Was ist der Unterschied zwischen einem API-Schlüssel und einem API-Token?
Ein API-Schlüssel ist eine Reihe von eindeutigen Kennungen, die in erster Linie dazu dienen, den Anwendungsverkehr von API-Clients zu identifizieren. API-Schlüssel sind in der Regel bestimmten Servern zugeordnet, auf denen die aufrufende Anwendung bereitgestellt wird. Wenn die Anwendung eine API-Anfrage stellt, identifiziert der Server die aufrufende Anwendung anhand des API-Schlüssels.
Im Gegensatz dazu ist ein API-Token eine Zeichenfolge von Codes, die umfassende Daten enthält, die einen bestimmten Benutzer identifizieren. API-Token enthalten auch den Umfang des Zugriffs, der einem bestimmten Benutzer gewährt wird. Auf diese Weise kann der Server sowohl Anfragen des aufrufenden Benutzers authentifizieren als auch den Umfang der API-Nutzung überprüfen. Beispielsweise kann ein Benutzer ein Single-Sign-On-Token verwenden, um auf eine Gruppe von APIs zuzugreifen.
Die Generierung eines API-Schlüssels ist aufgrund seiner begrenzten Rolle bei der Benutzerautorisierung einfacher. Umgekehrt gibt es mehr Einschränkungen und Verfahren, wenn Sie API-Token gewähren, da diese Identifikations- und Authentifizierungsdaten enthalten.
Bei Amazon Web Services (AWS) werden API-Token auch als Authentifizierungstoken oder Sicherheitstoken bezeichnet. Entwickler verwenden IAM-Berechtigungen, einen Lambda-Authorizer oder einen Amazon Cognito-Benutzerpool, um API-Token zu erstellen und den Zugriff auf Ihre APIs zu verwalten.
Was sind die wichtigsten bewährten API-Methoden?
Es gibt einige bewährte Methoden, die Sie bei der Verwendung von API-Schlüsseln beachten sollten.
Vermeiden Sie die Verwendung von API-Schlüsseln für die Benutzerauthentifizierung. API-Schlüssel sind nicht dazu gedacht, den Benutzerzugriff zu regulieren. Nehmen Sie auch keine vertraulichen Informationen in die API-Schlüssel auf, da diese während der Übertragung sichtbar sein könnten.
Betten Sie API-Schlüssel nicht direkt in Ihren Quellcode oder Ihr Repository ein. Wenn Sie vergessen, sie zu entfernen, werden sie möglicherweise veröffentlicht, wenn Sie Ihre Anwendung veröffentlichen.
Löschen Sie API-Schlüssel, wenn sie nicht mehr verwendet werden. Erwägen Sie, den Schlüsseln ein Ablaufdatum hinzuzufügen, um eine robustere API-Sicherheit zu gewährleisten.
Wie kann AWS Ihnen bei der Verwaltung Ihrer API-Schlüssel helfen?
Amazon Web Services (AWS) bietet Amazon API Gateway für Ihre API-Schlüsselverwaltungsanforderungen.
Mit API Gateway können Sie REST-, HTTP- und WebSocket-APIs in beliebigem Umfang erstellen, veröffentlichen, verwalten, überwachen und sichern. API-Entwickler können APIs erstellen, die auf AWS oder andere Webservices sowie auf in der AWS-Cloud gespeicherte Daten zugreifen.
Nachdem Sie Ihre APIs erstellt, getestet und bereitgestellt haben, können Sie API-Gateway-Nutzungspläne verwenden, um sie Ihren Kunden als Produktangebote zur Verfügung zu stellen. Sie können Nutzungspläne und API-Schlüssel konfigurieren, um Ihren Kunden den Zugriff auf ausgewählte APIs zu ermöglichen. Und Sie können damit beginnen, Anfragen an diese APIs auf der Grundlage definierter Grenzwerte und Kontingente zu drosseln.
Beginnen Sie heute noch mit der API-Schlüsselverwaltung in AWS, indem Sie ein AWS-Konto erstellen.
Nächste Schritte in AWS
Sie erhalten sofort Zugriff auf das kostenlose Kontingent von AWS.
Starten Sie mit der Entwicklung in der AWS-Managementkonsole.