Programmierschnittstellen, kurz APIs, sind derzeit in aller Munde.

APIs sind zwar nicht neu, doch jüngste Entwicklungen wie die beschleunigte digitale Transformation während der COVID-19-Pandemie, erweiterte Softwareintegrationen und die Bemühungen, Legacy-Anwendungen für die Cloud auf neue Plattformen zu migrieren, haben zu einer kontinuierlichen Ausbreitung von APIs geführt – mit Auswirkungen auf das Management, die Sicherheit und sogar auf die Architekturentscheidungen, die Unternehmen treffen, um in der modernen digitalen Wirtschaft erfolgreich zu sein.
APIs können im Grunde für den Aufstieg der Maschinen stehen. Glücklicherweise haben die Menschen jedoch noch immer die Kontrolle über ihre Entwicklung, Verwaltung und Sicherheit (zumindest vorerst).

Grundsätzlich sendet in der „API-Sprache“ (sozusagen) der Konsument in der Regel Abfragen oder Anfragen über einheitliche Schnittstellen, die auf verschiedenen Standards, Schemata und Spezifikationen basieren, an den Produzenten.
Der National Weather Service (der „Produzent“) stellt beispielsweise tägliche Wetterdaten bereit. Die Wetter-App auf Ihrem Smartphone (der „Konsument“) ruft dieses System über die WeatherKit REST API auf – genauer gesagt, sie fragt es ab – und stellt die Daten anschließend über die Benutzeroberfläche der Wetter-App dar. Obwohl dies ein einfaches Beispiel für eine beliebte App ist, die von Millionen von Nutzern verwendet wird, ist bemerkenswert, dass die Maschine-zu-Maschine-Kommunikation den Löwenanteil des Datenverkehrs moderner digitaler Erlebnisse ausmacht und durch APIs ermöglicht wird.

APIs bieten eine Reihe technologischer Vorteile, die einen geschäftlichen Mehrwert schaffen:
Technologischer Nutzen | Geschäftlicher Nutzen |
Abstrahieren Sie die zugrunde liegende Implementierung einer Web-App. | Unternehmen können mobile Apps und auf Microservices basierende Architekturen schnell bereitstellen. |
Typen angeben, damit Entwickler mithilfe von Tools API-Clients implementieren können. | Führungskräfte können Entwicklungsprozesse optimieren, um die Markteinführungszeit zu verkürzen. |
Semantik und Verhalten definieren, um einen konsistenten und vorhersehbaren Informationsaustausch abzubilden. | Partner können Integrationen von Drittanbietern entwickeln und monetarisieren. |
Bei der Implementierung von APIs sind eine Reihe von Aspekten zu berücksichtigen. Dies gilt insbesondere für die Modellierung, Versionierung und Vertragstests, die dazu beitragen, Abhängigkeiten zu entkoppeln und die Interoperabilität während des Entwurfs, der Entwicklung und der Wartung sicherzustellen.
Gegenleistung | Beschreibung | Vorteil |
Modellierung | Die Semantik oder das Verhalten zur Darstellung und Strukturierung des Informationsaustauschs. | Optimierte Verwaltung verteilter Architekturen. |
Versionierung | Governance-Strategien für die Veröffentlichung und Wartung während des gesamten API-Lebenszyklus. | Maximale Benutzerfreundlichkeit und Abwärtskompatibilität. |
Vertragstests | Definierte Interaktion und erwartete Antworten zwischen dem Verbraucher und dem Anbieter. | Deterministische Interaktionen mit Geschäftsintegrationen von Drittanbietern. |
Es gibt keinen richtigen oder falschen Weg, eine API zu entwickeln, zu verwalten und abzusichern. Als APIs immer weitere Verbreitung fanden, wurde es notwendig, ihre Form und Struktur zu standardisieren, damit sie in großem Umfang genutzt werden konnten. Hier kamen die OpenAPI-Initiative und die daraus hervorgegangene OpenAPI-Spezifikation (OAS) ins Spiel. Swagger war die ursprüngliche Referenzimplementierung der OpenAPI-Spezifikation. Mittlerweile verwenden die meisten Tools OpenAPI, das sich seinen Swagger – also sein selbstbewusstes Auftreten – bis heute bewahrt hat (HA!).
Tatsächlich kann eine API unter Verwendung verschiedener Standards, Schemata und Spezifikationen erstellt werden. Zum Beispiel eine RESTful-Darstellung, ein gRPC-Dienst und Verbindungen zu einem GraphQL-Schema.
Implementierung

Übersicht
REpresentation State Transfer (REST) bietet ein schlankes Architekturmodell zur Beschreibung einheitlicher Schnittstellen und wird meist mit HTTP als zugrunde liegendem Transportprotokoll eingesetzt.
REST ist die mit Abstand am weitesten verbreitete Implementierung API-basierter Architekturen.
Vorteile
- REST folgt einigen sehr grundlegenden Regeln, bietet eine niedrige Einstiegshürde und verfügt über ein starkes Domänenmodell, wodurch es relativ einfach zu implementieren ist.
- Als mehrschichtiges System abstrahiert REST die Komplexität der Systeme hinter der REST-Schnittstelle. So ist dem Nutzer beispielsweise nicht bewusst, dass er über einen Webdienst mit einem Datenbanksystem interagiert.
- REST bietet flexible Unterstützung für Inhaltstypen (einschließlich JSON und YAML).
Wann verwenden?
- Wenn die OpenAPI-Spezifikation ausreicht, um Verbrauchern den Aufbau und die Struktur von APIs zu vermitteln.
- Wenn das Caching dynamisch anhand von HTTP-Headern festgelegt werden muss, da Anfragen vom Producer an den Consumer standardmäßig zustandslos sind.
- Wenn ein Ressourcenmodell für eine einzelne, vom Anbieter bereitgestellte API erweitert wird oder mithilfe von API-Gateways mehrere APIs unter derselben Basis-URL angeboten werden.

GraphQL ist eine Open-Source-Sprache zum Abfragen und Bearbeiten von Daten über APIs sowie eine Laufzeitumgebung, die diese Abfragen anhand vorhandener Daten ausführt (entwickelt von Facebook und heute Teil der Linux Foundation).
- Stellt eine Abfragesprache bereit, mit der Daten aus mehreren Quellen abgefragt werden können.
- Ermöglicht Clients, genau die benötigten Felder abzufragen, einschließlich Feldern, die sich über mehrere APIs erstrecken, und verkürzt so die anfängliche Ladezeit.
- Die Schemasprache definiert die Typen in den einzelnen APIs und legt fest, wie APIs miteinander kombiniert werden. Dadurch kann eine einheitliche Version für alle APIs bereitgestellt werden, was die Versionsverwaltung vereinfacht.
- Als ergänzende Technologie, die über bestehende Altsysteme gelegt wird, um deren Komplexität zu abstrahieren.
- Wenn ein API-Nutzer einheitlichen Zugriff sowie Filter- und Abfragemöglichkeiten für eine Vielzahl miteinander verbundener Dienste benötigt.
- Bei Mobilgeräten, die durch kleinere Bildschirme und die Netzwerkverfügbarkeit eingeschränkt sind.

gRPC ist ein modernes, quelloffenes und leistungsstarkes Framework für Remote Procedure Calls (RPC), das unter der Schirmherrschaft der Linux Foundation steht.
- Hohe Leistung und Zuverlässigkeit durch den Einsatz von HTTP/2, schlanken Protokollpuffern, serialisierten Nutzdaten und zustandsbehafteten Implementierungen.
- Erweiterbare Unterstützung für Lastverteilung, Tracing, Zustandsprüfungen und Authentifizierung.
- Hohe Interoperabilität von Schnittstellenfunktionen und Nachrichten mit umfassender Tool-Unterstützung für alle Sprachen.
- Für die letzte Meile des verteilten Computings, um Geräte, mobile Apps und Browser mit Backend-Microservices zu verbinden, sowie für plattformübergreifende Apps, die die Interaktion zwischen Mobilgeräten und Desktop-/IoT-Systemen ermöglichen.
- Für den Datenverkehr zwischen Containern („Ost-West“).
- Für externe Schnittstellen („Nord-Süd“), die Streaming erfordern, sowie für Streaming-Anwendungen wie Chats, Finanz- und Nachrichten-Apps.
Nach dieser Einführung in die Grundlagen von APIs werden wir in den folgenden Beiträgen untersuchen, wie sich eine API-Architektur aufbauen, verwalten und absichern lässt, bevor wir schließlich alles zusammenführen und eine Legacy-Anwendung für die Cloud auf eine neue Plattform migrieren.

Möchten Sie einen Schritt voraus sein? Laden Sie noch heute das E-Book herunter:
API-Architektur meistern | O'Reilly eBook
Über den Autor

Ähnliche Blogbeiträge
F5 und Equinix bündeln ihre Kräfte, um die sichere Anwendungsbereitstellung in Multicloud-Umgebungen zu vereinfachen
F5 und Equinix ermöglichen es Unternehmen, sich weltweit sicher und zuverlässig mit ihren Partnern zu vernetzen.

API-Sicherheitsrisiken und -herausforderungen
Erfahren Sie, warum APIs für die moderne App-Entwicklung unverzichtbar sind und wie Sie sie vor den häufigsten Sicherheitslücken schützen. Profitieren Sie von Expertentipps und direkt umsetzbaren Strategien.
Ein Meilenstein für die Community Impact Grants von F5
F5 feiert das fünfjährige Bestehen seines innovativen Community Impact Grant-Programms, das gemeinnützige Organisationen, bei denen sich F5-Mitarbeitende ehrenamtlich engagieren, mit Fördermitteln in Höhe von 5.000 US-Dollar unterstützt.
Mit moderner, anpassungsfähiger und sicherer Gesundheits-IT Leben retten
Die IT-Investitionen im Gesundheitswesen tragen dazu bei, die schnellsten Wege zu einer besseren Versorgung zu finden, indem sie die medizinische Betreuung näher an die Patientinnen und Patienten bringen. Viele Gesundheitsunternehmen nutzen riesige Mengen an klinischen und anderen Gesundheitsdaten, um Entwicklungen zu verfolgen und übergreifende Trends in der gesamten Gesundheitslandschaft zu erkennen. Gleichzeitig nähern sie sich einer möglichst präzisen, individuell zugeschnittenen Versorgung an.
Verbesserung der Benutzer- und Administrationserfahrung durch sicheren hybriden Zugriff
Diese Kombination aus BIG-IP Access Policy Manager und Azure Active Directory ermöglicht Identitätsföderation, zentralisierten Benutzerzugriff (über Single Sign-on) und erhöhte Anwendungssicherheit (durch Multi-Faktor-Authentifizierung) für geschäftskritische Anwendungen sowie cloudbasierte und SaaS-Anwendungen. Dieser Ansatz vereinfacht die Einrichtung und Bereitstellung, reduziert den Verwaltungsaufwand und verbessert die gesamte Administration.
Das Internet der Sicherheitsdinge
Nein, das ist keine Tirade über die Sicherheit des IoT. Es ist eine Geschichte über Veränderung – genauer gesagt über Veränderung und ihre Auswirkungen auf die Sicherheit. Veränderung ist allgegenwärtig. Es gibt unzählige Axiome und Sprichwörter über Veränderung, also ist es ...