Announcing the Cloudflare API Gateway

In den letzten zehn Jahren hat sich das Internet von Grund auf verändert. Früher bestand es aus statischen Websites: mit Text, Bildern und gelegentlich einem eingebetteten Film. Das Internet hat sich jedoch enorm weiterentwickelt. Wir verlassen uns jetzt auf API-gesteuerte Anwendungen, die uns in nahezu allen Lebensbereichen helfen. Anstatt nur Dateien herunterzuladen, können wir mit Anwendungen interagieren, indem wir Rich Data austauschen. Wir zeichnen unsere Sportaktivitäten auf und senden die Ergebnisse in die Cloud. Wir verwenden Smart Locks und alle Arten von IoT-Geräten. Und wir nutzen das Internet, um mit unseren Freunden zu kommunizieren.

Das ist natürlich großartig, aber gleichzeitig steigt dadurch auch die Komplexität. Warum? Die Entwickler müssen APIs verwalten, um diese Funktionalität zu unterstützen. Sie müssen jede einzelne Anfrage überwachen und authentifizieren. Und weil diese Aufgaben so schwierig sind, werden sie normalerweise an einen API-Gateway-Anbieter ausgelagert.

Die heutigen Gateways lassen leider viel zu wünschen übrig. Erstens: Sie sind nicht billig. Dann ist da noch die Beeinträchtigung der Performance. Und schließlich besteht ein Risiko für die Daten und die Privatsphäre, da mehr als 50 % des Datenverkehrs APIs erreicht (und vermutlich über ein Gateway eines Drittanbieters gesendet wird). Was für ein Schlamassel.

Heute präsentieren wir Ihnen das Cloudflare API Gateway. Wir werden Ihr bestehendes Gateway vollständig ersetzen – und das zu einem Bruchteil der Kosten. Und unsere Lösung nutzt die Technologie hinter Workers, Bot Management, Access, and Transform Rules, um das fortschrittlichste API-Toolset auf dem Markt zu bieten.

Was ist ein API-Gateway?

Kurz gesagt, es ist ein Paket von Funktionen, die alles für Ihre APIs tun. Wir unterteilen es in drei Kategorien:

Sicherheit
Dies sind die Produkte, über die wir bereits gebloggt haben. Tools wie Discovery, Schema Validation, Abuse Detection, und weitere. Wir haben viel Zeit damit verbracht, unser Sicherheits-Know-how auf den Bereich der APIs anzuwenden.

Management & Überwachung
Dies sind die grundlegenden Tools, die Ihre APIs in Stand halten. Einige Beispiele: Analytics, Routing und Authentifizierung. Wir sind bereits in der Lage, diese Funktionen mit bestehenden Produkten wie Cloudflare Access zu nutzen, und weitere Funktionen sind geplant.

Alles andere
Dies sind die kleinen (aber entscheidenden) Dinge, die alles am Laufen halten. Cloudflare bietet bereits SSL/TLS-Terminierung, Lastausgleich und Proxy-Dienste, die standardmäßig ausgeführt werden können.

Im heutigen Blog-Beitrag wird jede Funktion im Detail beschrieben. Wir freuen uns, Ihnen mitteilen zu können, dass alle Sicherheitsfunktionen jetzt allgemein verfügbar sind. Beginnen wir also mit diesen.

Discovery

Unsere Kunden sind bestrebt, ihre APIs zu schützen. Leider haben sie diese Endpunkte nicht immer dokumentiert. Oder schlimmer noch: Sie glauben, dass alles dokumentiert sei, haben aber unwissentlich Endpunkte verloren oder verändert. Diese versteckten Endpunkte werden manchmal als Schatten-APIs bezeichnet. Wir müssen unseren Bericht mit einem umfassenden (und genauen) Bild der API-Oberfläche beginnen.

Hier kommt Discovery ins Spiel. Rufen Sie das Cloudflare-Dashboard auf, wählen Sie die Registerkarte Sicherheit und dann „API Shield.“ Aktivieren Sie die Funktion und teilen Sie uns mit, wie Sie Ihren API-Traffic identifizieren möchten. Die meisten Nutzer geben einen Header an (ab heute verfügbar), aber wir können auch den Anfragentext (Request Body) oder das Cookie verwenden (bald verfügbar).

The Cloudflare API Shield tab, showing various endpoints that have been discovered and a set of recommended rate limiting thresholds.
Die Registerkarte Cloudflare API Shield, die verschiedene entdeckte Endpunkte und eine Reihe von empfohlenen Schwellenwerten für die Durchsatzbegrenzung anzeigt

Wir bieten eine umfassende Liste Ihrer API-Endpunkte. Cloudflare listet jede Methode, jeden Pfad und zusätzliche Metadaten auf, um Ihnen zu helfen, Ihre Oberfläche zu verstehen. Wir fassen sogar Endpunkte zusammen, die Variablen enthalten (z.B., /account/217), damit sie allgemein anwendbar werden (z.B., /account/{var1}).

Discovery ist eine leistungsstarke Gegenmaßnahme zur Entropie. Unsere Kunden erwarten oft, dass sie 30 Endpunkte finden, sind aber überrascht, wenn sie erfahren, dass sie über 100 aktive Endpunkte haben.

Schema Validation

Vielleicht haben Sie bereits ein Schema für Ihre API-Endpunkte. Ein Schema ist wie eine Vorlage: Es enthält die Pfade, Methoden und zusätzlichen Daten, die API-Anfragen enthalten sollen. Viele Entwickler folgen dem OpenAPI-Standard zur Erstellung (und Pflege) eines Schemas.

Um Ihre Sicherheit zu erhöhen, können wir den eingehenden Datenverkehr anhand dieses Schemas validieren. Dies ist eine gute Möglichkeit, einfache Angriffe zu verhindern. Cloudflare lehnt nicht konforme Anfragen ab und verwirft unsinnigen Datenverkehr, der die Richtlinien ignoriert. Laden Sie Ihr Schema einfach in das Dashboard hoch, wählen Sie die gewünschten Aktionen aus und stellen Sie es bereit:

A step in the schema upload process, after a schema has already been provided. Cloudflare lists out each endpoint with path, query, header, cookies, and body provided as metadata.
Ein Schritt im Schema-Upload-Prozess, nachdem bereits ein Schema bereitgestellt wurde. Cloudflare listet jeden Endpunkt mit Pfad, Anfrage, Header, Cookies und Body als Metadaten auf

Schema Validation hat bereits den Traffic für einige der weltweit größten Krypto-Websites, Lieferdienste und Zahlungsplattformen überprüft. Sie ist jetzt verfügbar, und wir werden die Überprüfung des Anfragentextes bald hinzufügen.

Missbrauchserkennung (Abuse Detection)

Ein robuster Sicherheitsansatz verwendet Schema Validation und Discovery im Tandem, um sicherzustellen, dass der Datenverkehr dem erwarteten Format entspricht. Aber was ist mit missbräuchlichem Datenverkehr, der durchgelassen wird?

Wenn Cloudflare neue API-Endpunkte entdeckt, schlagen wir tatsächlich Durchsatzbegrenzungen für jeden einzelnen vor. Das ist die Aufgabe von Missbrauchserkennung, und sie öffnet die Tür zu einer ausgeklügelteren Art von Sicherheit.

Betrachten Sie einen API-Endpunkt, der aktuelle Wetterdaten liefert. Konkret gibt der Endpunkt „ja“ zurück, wenn es in der nächsten Stunde wahrscheinlich schneit, und „nein“, wenn nicht. Unser Algorithmus könnte feststellen, dass der durchschnittliche Benutzer diese Daten einmal alle 10 Minuten anfordert. Eine kleine Gruppe von Scrapern hingegen stellt 37 Anfragen pro 10 Minuten. Cloudflare empfiehlt automatisch einen Schwellenwert, der dazwischen liegt, um normalen Nutzern etwas Spielraum zu geben. Dies würde verhindern, dass missbräuchliche Scraping-Dienste die Wetterprognose zu oft abrufen.

Wir bieten Ihnen die Möglichkeit, eine Regel mit unserer neuen Engine für Erweiterte Durchsatzbegrenzung zu erstellen. Sie können Cookies, Header und mehr verwenden, um die Schwellenwerte einzustellen. Wir verwenden Missbrauchserkennung bereits seit Monaten zum Schutz von api.cloudflare.com.

Was uns an dieser Funktion am meisten gefällt: Sie basiert auf dem Ansatz des maschinellen Lernens, den wir für Bot Management verwenden. Eine weitere Möglichkeit, wie sich unsere Produkte gegenseitig ergänzen (und voneinander profitieren) können.

Missbrauchserkennung ist jetzt verfügbar. Wenn Sie sich für die sequenzielle Missbrauchserkennung interessieren, mit der wir anomale Anfrageflüsse erkennen, lesen Sie unseren vorangehenden Blog-Beitrag. Die sequenzielle Funktion ist aktuell im frühen Zugang (Early Access) verfügbar und wir arbeiten weiter daran, ihn vor der offiziellen Markteinführung zu optimieren.

mTLS

Mutual TLS hebt die Sicherheit auf ein neues Niveau. Sie können Zertifikate verwenden, um den eingehenden Datenverkehr zu validieren, wenn er Ihre APIs erreicht. Dies ist besonders nützlich für mobile und IoT-Geräte. Außerdem ist dies ein hervorragendes positives Sicherheitsmodell, das für die meisten Geräte-Ökosysteme übernommen werden kann (und sollte).

Lassen Sie uns zum Beispiel der Wetter-API zurückkehren. Vielleicht enthält dieser Dienst einen zweiten Endpunkt, der die aktuelle Temperatur von einem Thermometer empfängt. Aber es gibt ein Problem: Jeder kann gefälschte Anfragen stellen und dem Endpunkt ungenaue Messwerte liefern. Um dies zu verhindern, verwenden Sie mTLS, um ein Client-Zertifikat auf dem legitimen Thermometer zu installieren, und lassen Sie dieses Zertifikat dann von Cloudflare validieren. Alle anderen Anfragen werden abgewiesen. Problem gelöst!

Wir bieten bereits jedem Cloudflare-Kunden eine Reihe kostenloser Zertifikate an. Das wird so bleiben. Aber ab heute erhalten API Gateway-Kunden standardmäßig unbegrenzte Zertifikate.

Authentifizierung

Viele moderne APIs erfordern eine Authentifizierung. Tatsächlich eröffnet die Authentifizierung zahlreiche Möglichkeiten: Sie ermöglicht Sitzungen (mit Login), den Austausch persönlicher Daten und eine effiziente Infrastruktur. Und natürlich schützt Cloudflare authentifizierten Datenverkehr, während er unser Netzwerk durchläuft.

Aber mit API Gateway spielt Cloudflare eine aktivere Rolle bei der Authentifizierung des Datenverkehrs und hilft bei der Ausgabe und Validierung von:

  • API-Schlüssel
  • JSON Web Tokens (JWT)
  • OAuth 2.0-Tokens

Mit Zugriffskontrolllisten helfen wir Ihnen, verschiedene Benutzergruppen mit unterschiedlichen Berechtigungen zu verwalten. Und das ist wichtig, denn Ihr derzeitiger Anbieter verursacht viel Latenz und unnötigen Datenaustausch. Wenn eine Anfrage irgendwo außerhalb des Cloudflare-Ökosystems eingehen muss, ist sie weiter unterwegs als nötig:

Additional latency incurred by sending requests out of the Cloudflare network for authentication.
Zusätzliche Latenzzeit, die durch das Senden von Anfragen aus dem Cloudflare-Netzwerk zur Authentifizierung entsteht

Cloudflare kann in unserem globalen Netzwerk authentifizieren und Anfragen in einem Bruchteil der Zeit bearbeiten. Diese Art von Technologie ist schwierig zu implementieren, aber wir hielten sie für zu wichtig, um sie zu ignorieren. Wie haben wir sie so schnell entwickelt? Cloudflare Access. Wir haben unsere Erfahrungen bei der Arbeit mit Identitätsanbietern genutzt und sie erneut auf die Welt der APIs übertragen. Unser Gateway umfasst unbegrenzte Authentifizierung und Austausch von Token. Diese Funktionen werden bald verfügbar sein.

Routing & Verwaltung

Lassen Sie uns kurz über Microservices sprechen. Moderne Anwendungen sind riesige Gebilde, deshalb zerlegen Entwickler sie in kleinere Teile, die „Microservices“ genannt werden.

Nehmen Sie zum Beispiel eine Anwendung, mit der Sie ein Hotelzimmer buchen können. Es könnte einen Microservice verwenden, um verfügbare Termine abzurufen, einen anderen, um Preise abzurufen, und noch einen anderen, um Zimmertypen abzurufen. Vielleicht verwaltet ein anderes Team jeden Microservice, aber sie müssen alle von einem zentralen öffentlichen Zugangspunkt aus verfügbar sein:

Various steps in an architecture that relies on microservices. A visitor makes a request to a hotel API, which is then routed towards available dates, prices, or room types.
Verschiedene Schritte in einer Architektur, die sich auf Microservices stützt. Ein Besucher stellt eine Anfrage an eine Hotel-API, die dann nach verfügbaren Daten, Preisen oder Zimmertypen weitergeleitet wird

Dieser zentrale Zugangspunkt, der traditionell von einem API-Gateway verwaltet wird, ist für die Weiterleitung jeder Anfrage an den richtigen Microservice verantwortlich. Viele unserer Kunden haben jahrelang eigenständige Dienste für diese Aufgabe bezahlt. Das ist jetzt nicht mehr nötig. Wir haben auf unserem Produkt Transform Rules aufgebaut, um an unserer Edge dynamisch umzuschreiben und umzuleiten. Es ist einfach zu konfigurieren, schnell zu implementieren und nativ in API Gateway integriert. Cloudflare kann jetzt der zentrale Einstiegspunkt für Ihre API sein.

Das ist nur die Spitze des Eisbergs. API Gateway kann Ihre Microservices tatsächlich ersetzen. Dies wird durch eine Integration mit unserem Produkt Workers erreicht. Und wie? Stellen Sie sich vor, Sie schreiben einen Worker, der eine Aktion ausführt, z. B. die Ausgabe von Hotelpreisen, die mit Durable Objects in unserem Netzwerk gespeichert sind. Mit API Gateway kommen die Anfragen in unserem Netzwerk an, werden mit Transform Rules an den richtigen Microservice weitergeleitet und dann mit Workers (immer noch in unserem Netzwerk!) vollständig bedient. Diese Worker können sich bei Bedarf mit Ihrem Ursprung in Verbindung setzen, um zusätzliche Informationen zu erhalten.

Cloudflare’s simplified API architecture. With authentication, routing, management, and storage handled at the edge, several hops are eliminated.
Die vereinfachte API-Architektur von Cloudflare. Da Authentifizierung, Routing, Verwaltung und Speicherung am Rande des Netzwerks erfolgen, entfallen mehrere Hops

Workers sind schneller, billiger und einfacher als Microservice-Alternativen. Diese Integration wird bald verfügbar sein.

API-Analytics

Kunden sagen uns, dass die Beobachtung des API-Traffic manchmal sogar wichtiger ist, als darauf zu reagieren. Dieser Trend ist in der Tat nicht spezifisch für APIs. Wir haben heute einen weiteren Blog-Beitrag veröffentlicht, in dem untersucht wird, wie ein Kunde unsere Bot-Intelligenz nutzt, um passiv Informationen über Bedrohungen zu protokollieren.

Mit API-Analytics haben wir auf unsere anderen Produkte zurückgegriffen, um nützliche Daten in Echtzeit anzuzeigen. Sie können beliebte Endpunkte anzeigen, nach ML-gesteuerten Erkenntnissen filtern, Histogramme von Schwellenwerten für Missbrauch sehen und Trends erfassen.

API-Analytics wird bald verfügbar sein. Wenn dies der Fall ist, können Sie auch benutzerdefinierte Berichte exportieren und Erkenntnisse innerhalb Ihres Unternehmens weitergeben.

Protokollierung, Quotenverwaltung und mehr

Alle unsere bewährten Funktionen wie Caching, Lastausgleich und Protokollintegrationen funktionieren nativ mit API Gateway. Diese sollten nicht als elementare Gateway-Funktionen übersehen werden; sie sind unverzichtbar. Und da Cloudflare all diese Funktionen an einem Ort ausführt, profitieren Sie von den Latenzvorteilen, ohne etwas tun zu müssen.

Außerdem erweitern wir unsere Enterprise Logs-Funktionalität, um Echtzeit-Protokolle zu erstellen. Wenn Sie sich für die Authentifizierung im Cloudflare-Netzwerk entscheiden, können Sie detaillierte Protokolle jedes Benutzers einsehen, der auf eine API zugegriffen hat. Auf ähnliche Weise dokumentieren wir die Lebensdauer jeder Anfrage, wenn sie eingeht, geprüft, weitergeleitet und beantwortet wird. Alles wird protokolliert.

Außerdem entwickeln wir eine Quotenverwaltung (Quota Management), eine Funktion, die API-Anfragen über einen längeren Zeitraum (z. B. einen Monat) zählt und es Ihnen ermöglicht, Schwellenwerte für Ihre Nutzer zu verwalten. Außerdem haben wir die Erweiterte Durchsatzbegrenzung eingeführt, die Sie bei anspruchsvolleren Fällen unterstützt (einschließlich Überprüfung des Anfragentextes für GraphQL).

Fazit

Alle unsere Sicherheitsfunktionen – Discovery, Schema Validation, Missbrauchserkennung und mTLS – sind jetzt verfügbar! Wir nennen diese Funktionen API Shield, weil sie den Schild bilden, der die übrigen Gateway-Funktionen schützt. Unternehmenskunden können ihre Account-Teams noch heute um Zugang bitten.

Viele der anderen Teile von API Gateway sind jetzt im frühen Zugang (Early Access) verfügbar. Laut Gartner®, „werden bis 2025 weniger als 50 % der Unternehmens-APIs verwaltet werden, da das explosive Wachstum der APIs die Fähigkeiten der API-Verwaltungstools übersteigt.“ Unser Ziel ist es, ein erschwingliches Gateway anzubieten, das diesem Trend entgegenwirkt. Wenn Sie eine bestimmte Funktion testen möchten, lassen Sie es Ihr Account-Team wissen, damit wir Sie so schnell wie möglich onboarden können.

Quelle: Gartner, „Predicts 2022: APIs Demand Improved Security and Management”, Shameen Pillai, Jeremy D'Hoinne, John Santoro, Mark O'Neill, Sham Gill, 6. Dezember 2021. GARTNER ist eine eingetragene Handels- und Dienstleistungsmarke von Gartner, Inc. und/oder den Tochtergesellschaften des Unternehmens in den USA und anderen Ländern, die im Folgenden mit Genehmigung verwendet wird. Alle Rechte vorbehalten.