Zum Hauptinhalt

Wie Sie die Sicherheit Ihrer API maximieren

Sicherheit ist ein wesentliches Element jeder Anwendung. Dies trifft insbesondere in Bezug auf APIs zu, bei denen täglich Hunderte oder Tausende von Anwendungen Aufrufe tätigen. Jeden Tag entstehen neue Bedrohungen und Sicherheitslücken. Jeden Tag sehen sich Unternehmen einem Wettlauf gegen die Zeit ausgesetzt, um sie mit Patches zu beseitigen oder abzuwehren. Es ist überaus wichtig, dass Sie Ihre APIs vor Angriffen schützen. Ein API-Manager kann zwar nicht alle Bedrohungen beseitigen, doch er kann Ihnen dabei helfen, sich gegen einige der häufigsten Bedrohungen zu schützen. Und wenn er als Schnittstelle verwendet wird, kann er bösartige Angriffe von Ihrer Architektur fernhalten.

Früher bestand API-Sicherheit aus einer einfachen Autorisierung. Dabei wurde der Benutzer zur Eingabe von Benutzername und Passwort aufgefordert, die dann von der entsprechenden Software an die API weitergeleitet wurden. Dieser Vorgang stellte jedoch ein großes Sicherheitsrisiko dar.

Mittlerweile ist das Token-basierte Autorisierungssystem Open Authorization (OAUTH) die gängigste API-Sicherheitsmaßnahme. Im Gegensatz zur einfachen Autorisierung verweigert OAUTH dem API-Client den Zugriff auf die Informationen der Benutzer.Stattdessen leitet OAUTH den Benutzer zu einer Seite auf dem Zielserver weiter, wo er seine Anmeldeinformationen eingeben kann. Anschließend gibt OAUTH ein Zugriffstoken für diesen Benutzer an den API-Client zurück.

Der Vorteil des Token-basierten Zugriffs besteht darin, dass er jederzeit aus beliebigen Gründen gelöscht werden kann, zum Beispiel bei einer Sicherheitsverletzung, einem Missbrauch oder wenn der Benutzer nicht mehr möchte, dass dieser Service Zugriff auf sein Konto hat. Mit Zugriffstoken lassen sich Berechtigungen auch einschränken. Somit kann der Benutzer entscheiden, zu welchen Zwecken die Anwendung seine Informationen oder sein Konto verwenden darf.

Bewährte Methoden für die API-Sicherheit sind unabhängig von der Komplexität der API gut definiert. Entwickler müssen sicherstellen, dass ihre APIs die Daten der Benutzer (Benutzernamen und Passwörter) sicher aufbewahren. Zu diesem Zweck müssen sie eine Trennungsschicht zwischen ihren Informationen und dem Client einrichten. Entwickler sollten niemals Anmeldedaten über öffentliche APIs anfordern, da dies die Informationen des Benutzers gefährdet.