it-swarm.com.de

Was ist ein API-Schlüssel?

Ich sehe dieses Wort heutzutage in fast jeder dienstübergreifenden Anwendung.

Was genau ist ein API-Schlüssel und wozu dient er?

Was ist der Unterschied zwischen öffentlichen und privaten API-Schlüsseln?.

101
OrangeRind

Wofür genau ein API-Schlüssel verwendet wird, hängt stark davon ab, wer ihn ausgibt und für welche Dienste er verwendet wird. Im Großen und Ganzen ist ein API-Schlüssel jedoch der Name, der einer Form von geheimem Token gegeben wird, das zusammen mit Webservice oder ähnlichen) Anforderungen gesendet wird, um den Ursprung der Anforderung zu identifizieren. Der Schlüssel kann in einigen Auszügen des Anforderungsinhalts enthalten sein, um den Ursprung weiter zu überprüfen und Manipulationen an den Werten zu verhindern.

Wenn Sie die Quelle einer Anforderung eindeutig identifizieren können, fungiert diese normalerweise als Authentifizierungsmethode, was zu einer Zugriffssteuerung führen kann. Beispielsweise können Sie den Zugriff auf bestimmte API-Aktionen einschränken, je nachdem, wer die Anforderung ausführt. Für Unternehmen, die mit dem Verkauf solcher Dienste Geld verdienen, ist dies auch eine Möglichkeit, zu verfolgen, wer die Sache für Abrechnungszwecke verwendet. Darüber hinaus können Sie durch Sperren eines Schlüssels den Missbrauch bei zu hohen Anforderungsvolumina teilweise verhindern.

Wenn Sie sowohl einen öffentlichen als auch einen privaten API-Schlüssel haben, ist dies im Allgemeinen ein Hinweis darauf, dass die Schlüssel selbst ein traditionelles Paar aus öffentlichem und privatem Schlüssel sind, das in irgendeiner Form von --- (asymmetrischer Kryptographie oder verwandter digitaler Signatur verwendet wird . Dies sind sicherere Techniken, um die Quelle einer Anfrage eindeutig zu identifizieren und um den Inhalt der Anfrage zusätzlich (zusätzlich zu Manipulationen) vor Snooping zu schützen.

104
Rob

Ganz allgemein gesagt:

Ein API-Schlüssel identifiziert Sie einfach.

Wenn es eine öffentliche/private Unterscheidung gibt, können Sie den öffentlichen Schlüssel an andere verteilen, damit diese eine Untergruppe von Informationen über Sie von der API abrufen können. Der private Schlüssel ist nur für Sie bestimmt und bietet Zugriff auf alle Ihre Daten.

22
timdev

Es sieht so aus, als ob viele Leute API-Schlüssel als Sicherheitslösung verwenden. Die Quintessenz lautet: Behandeln Sie API-Schlüssel niemals als geheim . Auf https oder nicht kann jeder, der die Anfrage lesen kann, den API-Schlüssel sehen und jeden gewünschten Anruf tätigen. Ein API-Schlüssel sollte nur eine Benutzer-ID sein, da er selbst bei Verwendung mit SSL keine vollständige Sicherheitslösung darstellt.

Die bessere Beschreibung ist in Eugene Osovetsky Link zu: Wenn Sie mit den meisten APIs arbeiten, warum benötigen sie zwei Arten der Authentifizierung, nämlich einen Schlüssel und ein Geheimnis? Oder überprüfen Sie http: // nordicapis .com/why-api-keys-are-not-enough /

13
timandtheocean

Ein API-Schlüssel ist ein eindeutiger Wert, der einem Benutzer dieses Dienstes zugewiesen wird, wenn er als Benutzer des Dienstes akzeptiert wird.

Der Dienst verwaltet alle ausgegebenen Schlüssel und überprüft sie bei jeder Anforderung.

Indem ein Dienst den bereitgestellten Schlüssel bei der Anforderung betrachtet, prüft er, ob es sich um einen gültigen Schlüssel handelt, um zu entscheiden, ob einem Benutzer Zugriff gewährt werden soll oder nicht.

9
user151323

API-Schlüssel sind nur eine Möglichkeit, Benutzer von Webdiensten zu authentifizieren.

2
GG.

Stellen Sie sich das so vor: Der "öffentliche API-Schlüssel" ähnelt einem Benutzernamen, den Ihre Datenbank als Login für einen Überprüfungsserver verwendet. Der "Private API Key" ähnelt dann dem Passwort. Durch die Site/Datenbank, die diese Methode verwendet, wird die Sicherheit auf dem Drittanbieter-/Überprüfungsserver aufrechterhalten, um eine authentische Anforderung zum Posten oder Bearbeiten Ihrer Site/Datenbank zu erhalten.

Die API-Zeichenfolge ist nur die URL des Anmeldenamens für Ihre Site/Datenbank, über die der Überprüfungsserver kontaktiert werden soll.