Was ist ein API-Gateway?

Ein API-Gateway ist der Verkehrsmanager, der mit der tatsächlichen Backend-Dienstleistung oder den tatsächlichen Daten verbunden ist und Richtlinien, Authentifizierung und allgemeine Zugriffskontrolle für API-Aufrufe anwendet, um wertvolle Daten zu schützen. Ein API-Gateway ist die Art und Weise, wie Sie den Zugriff auf Ihre Backend-Systeme und -Services kontrollieren, und es wurde entwickelt, um die Kommunikation zwischen externen Kunden und Ihren Backend-Services zu optimieren und Ihren Kunden ein nahtloses Erlebnis zu bieten. Ein API-Gateway gewährleistet Skalierbarkeit und hohe Verfügbarkeit Ihrer Dienstleistungen. Es ist dafür verantwortlich, die Anfrage an die entsprechende Dienstleistung weiterzuleiten und eine Antwort an den Anforderer zurückzusenden. Ein API-Gateway unterhält eine sichere Verbindung zwischen Ihren Daten und APIs und verwaltet API-Verkehr und Anfragen einschließlich Lastverteilung innerhalb und außerhalb Ihres Unternehmens. Das Gateway wendet Richtlinien, Authentifizierung und allgemeine Zugriffskontrolle für API-Aufrufe an, um wertvolle Daten zu schützen. Ein API-Gateway nimmt alle API-Aufrufe von Kunden entgegen und leitet sie mithilfe von Anforderungsrouting, -zusammensetzung und Protokollübersetzung an den richtigen Microservice weiter.

API Gateway-Diagramm

Einer der Hauptgründe, warum ein API-Gateway verwendet wird ist, dass es mehrere Backend-Services aufrufen und die Ergebnisse aggregieren kann. Anstatt dass Kunden eine Anfrage für jeden einzelne Dienstleistung senden müssen, können sie diese an das API-Gateway senden, das die Anfrage dann an die entsprechende Dienstleistung weiterleitet. Darüber hinaus bietet ein API-Gateway eine Alternative zur einheitlichen API. Ein API-Gateway kann auch für jeden Kunden eine andere API bereitstellen, was in den sich ständig weiterentwickelnden Umgebungen von heute notwendig ist.

E-Book zum API-Gateway
Der Leitfaden zum definitiven Erfolg für den API-Produktmanager
Nutzen Sie die Leistungsfähigkeit von APIs mit dem 7-teiligen Erfolgsleitfaden, wie Unternehmen API-Programme erstellen können, um das digitale Geschäft auszubauen!

Warum sollte ein API-Gateway verwendet werden?

Die meisten APIs der Unternehmen werden heute mit Gateways bereitgestellt. API-Gateways werden aufgrund der zunehmenden Nutzung von Microservices stärker genutzt. Microservices ermöglichen es, eine Anwendung in mehrere lose gekoppelte Dienstleistungen zu dekonstruieren, da jeder Microservice seine eigene Funktionalität benötigt. Microservices erleichtern die Entwicklung, Bereitstellung und Wartung der verschiedenen Funktionen einer Anwendung, können Kunden jedoch auch den schnellen und sicheren Zugriff auf die Anwendung erschweren. Ein API-Gateway ist die Lösung für dieses Problem. Anstatt Kunden den Zugriff auf jeden Microservice individuell anfragen zu lassen, ist das Gateway der zentrale Einstiegspunkt für die Anfragen, der sie an die entsprechende Dienstleistung ausweist, die Ergebnisse sammelt und an den Anforderer zurücksendet. Der Hauptgrund für die Verwendung eines API-Gateways wird von Entwicklern als Routing bezeichnet. API-Gateways helfen Ihrem Unternehmen beispielsweise, den Datenverkehr zu verwalten, der durch Anrufe von beispielsweise einer mobilen Anwendung wie Uber und einer Backend-Anwendung wie Google Maps generiert wird.

API-Gateways sind für ein erfolgreiches API-Managementvon entscheidender Bedeutung. Als Hauptproxy, der Ihre Kunden mit Ihren Dienstleistungen verbindet, unterstützt das Gateway wichtige Verwaltungs- und Sicherheitsfunktionen, einschließlich Authentifizierung, Metrik-Erfassung, Eingabevalidierung und Reaktionstransformation.

Authentifizierung

Ein API-Gateway kann zur Authentifizierung von API-Aufrufen verwendet werden. Auf diese Weise muss sich der Kunde, selbst wenn er auf Daten von mehreren Dienstleistungen zugreifen muss, nur einmal am Gateway authentifiziert werden. Das reduziert die Latenz und stellt sicher, dass Authentifizierungsprozesse in der gesamten Anwendung konsistent sind. Ähnlich der Gebrauchsweise eines Reisepasses zur Überprüfung Ihrer Identität oder ein Visum als Beweismittel, dass Sie in einem bestimmten Land arbeiten dürfen, bietet das API-Gateway Verbrauchern mehrere Möglichkeiten, sich zu authentifizieren und Zugriff auf Ihre API-Ressourcen zu erhalten. Gateways können einen der vielen offenen Standards verwenden, um die Identität oder Gültigkeit des Verbrauchers zu bestimmen (d. h. OAuth, JWT-Tokens, API-Schlüssel, HTTP Basic/Digest, SAML usw.), oder das Gateway kann nicht standardmäßige Mittel verwenden, um Anmeldeinformationen in Headern oder Payload der Nachricht zu finden. API-Gateways können auch andere Systeme zur Überprüfung der Identität aufrufen, so ähnlich wie die Polizei auf eine strafrechtliche Datenbank zugreifen könnte. Darüber hinaus kann ein API-Gateway wie der Zoll in einem Flughafen auch bei einem eingehenden API-Verbraucher auf Bedrohungen prüfen. Sie können API-Firewalling, Inhaltliche Validierung und Nachrichtenintegritätsprüfungen verwenden, einschließlich der Feststellung, ob eine API manipuliert wurde. Ein API-Gateway kann auch die Risikobewertung einer eingehenden API an eine Drittanbieter-Anwendung delegieren, damit sie die Entscheidung treffen können.

Metrik-Sammlung

Da alle Anfragen über das API-Gateway erfolgen, ist dies der ideale Ort zur Sammlung von Datenanalysen. Beispielsweise kann ein API-Gateway messen, wie viele Anfragen ein Benutzer stellt oder wie viele Anfragen an jeden einzelnen Microservice weitergeleitet werden. API-Gateways können auch verwendet werden, um Anfragen zu begrenzen. Wenn ein Benutzer zu viele Anfragen sendet, kann das Gateway so programmiert werden, dass es sie ablehnt, anstatt sie an einen der Microservices weiterzuleiten.

Eingabevalidierung

Die Eingabevalidierung ist das API-Gateway, das sicherstellt, dass alle Kundenanfragen die erforderlichen Informationen enthalten, die zum Ausfüllen einer Anfrage erforderlich sind und dass sie im richtigen Format bereitgestellt werden. Wenn etwas nicht in Ordnung zu sein scheint, lehnt das Gateway die Anfrage ab. Wenn alle erforderlichen Informationen enthalten sind, leitet das Gateway die Anfrage an den Microservice weiter, der für das Abrufen der angeforderten Informationen verantwortlich ist.

Reaktionstransformation

Die Reaktionstransformation ist eine wichtige Funktion von API-Gateways. Sie fungiert als „Übersetzer“ von Informationen. Wenn Ihr Backend-Service beispielsweise eine Antwort in XML abgegeben hat, der Anforderer diese jedoch in JSON benötigt, wird sich das Gateway automatisch darum kümmern. Verschiedene Anwendungen und Benutzer benötigen häufig Zugriff auf verschiedene Informationen. Mobile Anwendungen benötigen in der Regel weniger Daten als ihre Web-Gegenstücke. Beispielsweise, damit das Gateway die richtigen Antworten auf die Anfragen liefern kann. Anfragen von internen Benutzern werden wahrscheinlich mehr Daten in Antworten enthalten. Einige dieser Daten müssten sicher geschützt werden, bevor auf eine ähnliche Anfrage eines externen Benutzers reagiert wird, was die Aufgabe des Gateways ist.

Vorteile von API-Gateways

Wenn Sie Ihre Microservices zusammenfassen und über API-Gateway zugänglich machen, erhalten Sie einen sicheren, schnelleren und einfacheren Zugriff auf Ihre Dienstleistungen. Die Verwendung eines API-Gateways gewährt digitalen Unternehmen unzählige zusätzliche Vorteile, darunter:

  • Ihre APIs und Backend-Systeme werden über einen einzigen Schnittstellenansatz sicherer
  • Das Gateway verleiht Ihnen die vollständige Kontrolle über die API-Ausführungsumgebung mit erweiterbaren Richtlinien für Sicherheit und Zugangskontrolle, Throttling, Routing, Vermittlung und SLA-Management.
  • Einfacheres Schreiben von Code, sowohl für Ihre Dienstleistungen als auch für Ihre Anwendungsbenutzer
  • Verminderte Latenz im Laufe der Zeit durch weniger Hin und Her bei Anrufen
  • Schnellerer, einfacherer Zugang zu allen Microservices
  • Verringerung der Arbeitsbelastung bei jedem einzelnen Microservice oder Lastverteilung
  • Umfassende Metrik-Erfassung

Weitere Vorteile eines API-Gateways sind: Es verbirgt, wie Ihre Anwendung vom Anforderer oder Kunden partitioniert wird. Kunden müssen die Standorte aller Ihrer individuellen Dienstleistungen nicht mehr kennen und das Gateway bietet unabhängig vom verwendeten Code die optimale API für jede Anfrage.

Der Erfolg Ihrer Anwendungen kann von einem leistungsstarken API-Gateway abhängen. Ein Gateway gewährleistet eine hervorragende Leistung, hohe Verfügbarkeit und Skalierbarkeit Ihrer Dienstleistungen.