Als sprachunabhängige Spezifikation ermöglicht OpenAPI Clients, Services zu verstehen und zu nutzen, ohne Zugriff auf den Quellcode des Servers oder Kenntnisse über die Serverimplementierung zu benötigen.
OpenAPI-Dokumente werden in der Regel im JSON- oder YAML-Format geschrieben und können sowohl von Menschen als auch von Computern leicht verstanden werden. Mit OpenAPI können DevOps-Teams die Dokumentation automatisieren und sicherstellen, dass ihre APIs den Industriestandards entsprechen, sodass die Anwendungen problemlos in andere Software und Services integriert werden können.
Dies verbessert auch die Sicherheit, da Entwickler Sicherheitsschemata einrichten können – eine globale Sicherheitsdefinition, die eine Methode zur Authentifizierung von Client-Anmeldedaten und zur Erteilung von Berechtigungen für die API angibt.
Was ist eine API?
Eine Programmierschnittstelle (API, Application Programming Interface) ist ein Satz von Protokollen und Definitionen, mit denen verschiedene Softwareprogramme und -komponenten kommunizieren, Daten austauschen und Funktionen gemeinsam nutzen können. Indem APIs definieren, wie Anwendungen Informationen anfordern und austauschen können, ermöglichen sie Softwaresystemen die Interaktion mit einer Vielzahl von Funktionen und Transaktionen – von E‑Commerce-Anwendungen und mobilen Zahlungen bis hin zu sozialen Medien und Cloudservices.
Was ist API-Sicherheit?
APIs sind für die Funktionen des modernen Computing unerlässlich, einschließlich Cloudservices, Microservices und serverlosen Frameworks. Da APIs Anwendungslogik und -ressourcen offenlegen und möglicherweise die Übertragung vertraulicher und wertvoller Informationen einschließen, sind sie ein attraktives Ziel für schädliche Akteure. API-Sicherheitslösungen verhindern, dass Hacker Schwachstellen in APIs ausnutzen und APIs verwenden, um unbefugten Zugriff auf IT-Assets und -Systeme zu erlangen. Die API-Sicherheit erfordert einen mehrschichtigen Ansatz, der Authentifizierung, signaturbasierten Schutz, Ratenbeschränkung und -drosselung, eine Web Application Firewall und die Durchsetzung von Sicherheitsrichtlinien umfassen kann.
Was sind Bedrohungen für die API-Sicherheit?
Es gibt mehrere Arten von bedeutenden API-Sicherheitsbedrohungen.
- Bei der Ausnutzung von Schwachstellen wird ein Fehler in einer API genutzt, um Hackern den unberechtigten Zugriff auf die API zu ermöglichen.
- Authentifizierungsprozesse können von Angreifern kompromittiert werden, wodurch APIs Anfragen von unzulässigen oder böswilligen Quellen akzeptieren.
- Autorisierungsfehler ermöglichen Clients, die mit einer API interagieren, auf vertrauliche Informationen zuzugreifen, was zu einer Datenschutzverletzung führen kann.
Denial of Service- oder Distributed Denial of Service-Angriffe treten auf, wenn Bedrohungsakteure API-Transaktionen mit zu vielen Anforderungen gleichzeitig überfordern, was dazu führt, dass die API langsam oder nicht mehr reagiert.
Was ist API-Sicherheit?
Die OpenAPI Specification (OAS) ist ein Framework, mit dem Softwareentwickler Anwendungen erstellen, die mit REST-APIs interagieren können. Die OpenAPI Specification, die früher als Swagger Specification bekannt war, beschreibt, wie mit einer API kommuniziert wird, welche Art von Informationen angefordert werden können und welche Informationen zurückgegeben werden. OpenAPI-Dokumente werden in der Regel im JSON- oder YAML-Format geschrieben und können sowohl von Menschen als auch von Computern leicht verstanden werden. Mit OpenAPI können DevOps-Teams die Dokumentation automatisieren und sicherstellen, dass ihre APIs den Industriestandards entsprechen, sodass die Anwendungen problemlos in andere Software und Services integriert werden können.
Mit einem OpenAPI-Dokument können Entwickler die wesentlichen Funktionen einer API definieren, darunter:
- die Präsenz und die Arbeitsvorgänge jedes Endpunkts
- die Eingangs- und Ausgangsparameter jeder Operation
- Techniken für die Authentifizierung
- eine Liste mit Kontakten, Metadaten, Informationen zu Nutzungsbedingungen, Lizenzierung, verfügbaren Dokumenten und mehr
Als Open-Source-Framework ist OpenAPI unabhängig von der Sprache, die zum Erstellen einer API verwendet wird. So können sowohl Computer als auch Nutzer die Funktionen einer API leicht identifizieren und verstehen, ohne dass eine zusätzliche Dokumentation oder der Zugriff auf den Quellcode erforderlich sind. Letztendlich vereinfacht die OpenAPI Specification Entwicklungsprozesse, an denen mehrere Protokolle, Umgebungen und Schnittstellen beteiligt sind.
Was ist OpenAPI-Sicherheit?
OpenAPI kann dazu beitragen, den API-Schutz und die API-Gateway-Sicherheit zu verbessern, indem eine leicht zugängliche und lesbare API-Dokumentation für jede API bereitgestellt wird. Wenn DevOps-Teams die einzelnen API-Endpunkte und deren Funktionen verstehen, können sie Sicherheitsrisiken besser vorhersehen und die ungewollte Einführung von Schwachstellen verhindern. Die OpenAPI-Sicherheitsdokumentation hilft Sicherheitsteams auch, festzustellen, ob eine API internen Sicherheitsrichtlinien entspricht oder diese verletzt.
OpenAPI verbessert die Sicherheit, da Entwickler Sicherheitsschemata einrichten können. Dabei handelt es sich um eine globale Sicherheitsdefinition, die eine Methode zur Authentifizierung von Client-Anmeldedaten und zur Erteilung von Berechtigungen für die API angibt.
OpenAPI hilft zwar bei der Dokumentation und Kommunikation von Sicherheitsanforderungen, aber die Durchsetzung und Implementierung von Sicherheitsmaßnahmen liegt in der Verantwortung des API-Servers und der Infrastruktur.
Was sind die fünf Arten der OpenAPI-Sicherheit?
OpenAPI 3.0 ermöglicht fünf Arten von Sicherheitsschemata:
- Das API-Schlüssel-Sicherheitsschema verwendet einen API-Schlüssel – ein Zugriffstoken, das ein Client bei API-Aufrufen bereitstellt.
- Die HTTP-Authentifizierung bietet zwei Arten von Authentifizierungsschemata. Bei der Basisauthentifizierung wird der Standard-HTTP-Autorisierungsheader verwendet. Die Bearer-Authentifizierung verwendet ein Sicherheitstoken namens „Bearer-Token“, eine kryptische Zeichenfolge, die vom Server als Antwort auf eine Anmeldeanfrage generiert wird.
- Das OAuth2-Sicherheitsschema ist ein Autorisierungsprotokoll, das einem API-Client eingeschränkten Zugriff auf Nutzerdaten auf einem Webserver gewährt. Dieses OpenAPI-Sicherheitsschema wird von Unternehmen wie Facebook, Google und GitHub verwendet.
- MutualTLS ist ein Sicherheitsschema, das wechselseitigen oder gegenseitigen Authentifizierungs- oder Autorisierungscode zwischen Servern und Clients verwendet, wobei der Client ein vertrauenswürdiges Zertifikat für API-Anfragen vorlegt.
- OpenID Connect basiert auf dem OAuth-2.0-Protokoll und definiert einen Anmeldefluss, der es einer Clientanwendung ermöglicht, sich zu authentifizieren und Informationen über einen Nutzer abzurufen. Informationen zur Nutzeridentität werden in einem sicheren JSON Web Token (JWT) oder ID-Token codiert.
Was sind die Herausforderungen bei der OpenAPI-Sicherheit?
Unternehmen und Sicherheitsteams, die sich ausschließlich auf OpenAPI-Sicherheit verlassen, werden wahrscheinlich einen erheblichen Teil der Risiken und Bedrohungen übersehen, die APIs verursachen.
- Die OpenAPI-Sicherheit kann vor vielen gängigen Bedrohungen keinen Schutz bieten. In einer OpenAPI-Definitionsdatei ist es nicht möglich, Richtlinien zu erstellen, die Angriffe auf die API-Logik verhindern, zu denen viele der Bedrohungen gehören, die in „OWASP API Security Top 10“ definiert werden.
- OpenAPI-Sicherheitstools erkennen oder blockieren einen Angreifer, der aufeinanderfolgende Versuche unternimmt, die Validierung des OpenAPI-Sicherheitsschemas zu umgehen.
- Die OpenAPI-Sicherheitsdokumentation kann den Zugriff auf legitimen Traffic verweigern, wenn eine strenge Validierungsmethode angewendet wird, die jeden anormalen API-Aufruf blockiert.
- OpenAPI-Sicherheitstools erlauben möglicherweise, dass viele verschiedene Arten von schädlichen API-Aufrufen eine Validierung passieren, wenn ungenaue Validierungstechniken verwendet werden.
Häufig gestellte Fragen (FAQ)
OpenAPI war ursprünglich Teil des Swagger-Frameworks. Die Spezifikation wurde 2016 zu einem eigenständigen Projekt.
Die OpenAPI Specification wird von einer großen Zahl von Branchenführern und einer Community von Zehntausenden von Entwicklern unterstützt. Diese breite Unterstützung durch die Industrie stellt Stabilität über eine umfangreiche Codebasis dar. OpenAPI gilt weithin als das beliebteste Open-Source-Framework für die Definition und Erstellung von RESTful APIs.
Warum entscheiden sich Kunden für Akamai?
Akamai ist das Unternehmen für Cybersicherheit und Cloud Computing, das das digitale Leben unterstützt und schützt. Unsere marktführenden Sicherheitslösungen, überlegene Threat Intelligence und unser globales Betriebsteam bieten umfassende Abwehrmaßnahmen, um die Daten und Anwendungen von Unternehmen überall zu schützen. Die Cloud-Computing-Lösungen von Akamai bieten als Full-Stack-Gesamtpaket Performance und erschwingliche Preise auf der weltweit am stärksten verteilten Plattform. Globale Unternehmen vertrauen auf Akamai für die branchenführende Zuverlässigkeit, Skalierbarkeit und Expertise, die sie benötigen, um ihr Geschäft selbstbewusst auszubauen.