Kontakt zur Außenwelt

APIs: Open- und Enterprise-Schnittstellen im Vergleich
Kommentare

Web-APIs werden heute weithin für Integrationszwecke und insbesondere für die Entwicklung mobiler Anwendungen eingesetzt. Im Großen und Ganzen gibt es zwei Arten von APIs: Open-APIs und Enterprise-APIs. Open-APIs stehen jedem Client zur Verfügung und werden oftmals in der Cloud gehostet. Enterprise-APIs laufen im Unternehmen selbst und sind nicht öffentlich zugänglich. Und worin unterscheiden sich Open-APIs von Enterprise-APIs? Oder anders gefragt: Was haben Open-APIs und Enterprise-APIs gemeinsam?

In der Regel stellen Unternehmen APIs bereit, um die Entwicklung mobiler Apps zu ermöglichen. Hierzu gehören Apps für Mitarbeiter ebenso wie Apps für externe Kunden oder Verbraucher. Insofern dienen Open-APIs und Enterprise-APIs demselben Zweck. Außerdem sorgen sowohl Enterprise-APIs als auch Open-APIs dafür, dass sich die Entwickler nicht direkt mit den vorhandenen Systemen auseinandersetzen müssen, sondern stattdessen einfache HTTP-Schnittstellen verwenden können. Dadurch können Organisationen mit einem API interagieren und brauchen sich nicht direkt mit einer Datenbank oder einer Nachrichtenwarteschlange zu verbinden. Sowohl Open-APIs als auch Enterprise-APIs stellen somit eine leichter nutzbare Schnittstelle für vorhandene Legacy-Unternehmenssysteme bereit.

Die Gemeinsamkeiten von Enterprise-APIs und Open-APIs liegen also auf der Hand. Doch worin unterscheiden sie sich? Typischerweise wird ein Enterprise-API in einem geschlossenen System – mit einem Verzeichnis oder einer Datenbank – eingesetzt, in dem die Benutzer (oftmals Mitarbeiter) bereits bekannt sind. Eine Organisation, die ein Enterprise-API bereitstellt, weiß also, wer es benutzen wird. Mit einem Open-API hingegen möchte eine Organisation möglichst viele Benutzer erreichen. So soll beispielsweise jeder in der Lage sein, Apps zu schreiben oder deren API aufzurufen. Deshalb enthalten Open-APIs für gewöhnlich „Selbstbedienungsfunktionen“, mit deren Hilfe sich Benutzer selbst registrieren können. Dies ist ein wesentlicher Unterschied zwischen Enterprise-APIs und Open-APIs.

Bei Enterprise-APIs wird normalerweise mehr Wert auf die Identitätsprüfung und Sicherheit gelegt. Daher möchten Unternehmen, die Enterprise-APIs verwenden, häufig ihre vorhandenen Identitätsspeicher nutzen. Zum Beispiel werden sie Mitarbeiterverzeichnisse und ihre vorhandenen Anmeldeverfahren auch für die Anmeldung ihrer Mitarbeiter beim API einsetzen wollen.

APIs und Finanzdienstleistungen

Ein Beispiel: In einer großen Fondsgesellschaft, deren Mitarbeiter Rentenfonds und ähnliche Produkte verwalten, werden APIs eingesetzt. Hier bieten Enterprise-APIs den Vermögensverwaltern die Möglichkeit, über mobile Apps Geschäfte zu tätigen und Fondspreise abzurufen. Dies ist wichtig für Unternehmen, deren Mitarbeiter in der Lage sein sollen, von überall aus zu arbeiten, sei es auf einem iPad im Café oder auf einem Laptop an ihrem Schreibtisch. Allerdings muss, wenn die Mitarbeiter von unterwegs aus arbeiten, der Zugang zu vertraulichen Daten unbedingt geschützt werden. Dies ist ein wichtiger Aspekt, bei dem die Verknüpfung mit dem Firmenverzeichnis ins Spiel kommt. Dieser Ansatz erfordert ein Single-Sign-On-Verfahren für die zentrale Anmeldung bei verschiedenen Unternehmenssystemen sowie ein angeschlossenes Identitätsmanagement.

Identität

Auch bei Open-APIs spielt die Sicherheit eine wichtige Rolle und darf keinesfalls vernachlässigt werden. Im Hinblick auf die Identität der Benutzer kommt es jedoch eher darauf an, dass diese sich möglichst einfach registrieren können – das Stichwort heißt Self-Service. Wenn ein Unternehmen beispielsweise ein Open-API bereitstellt, soll das API für Entwickler in der Regel möglichst leicht zu benutzen sein. Das Unternehmen möchte, dass die Entwickler sich selbstständig registrieren und mit seinem API vertraut machen können, damit sie so rasch wie möglich in der Lage sind, Apps zu erstellen. Infolgedessen sind Open-APIs eher auf Self-Service ausgelegt und zumeist in ein Entwicklerportal eingebunden, über das die Entwickler die APIs nutzen, Apps entwickeln und ihre Passwörter festlegen können. Dieser Ansatz unterscheidet sich von dem eines Enterprise-API, bei dem dem Unternehmen die Identität der Benutzer und Entwickler von Anfang an bekannt ist.

Abb. 1: Unterschiede zwischen Open- und Enterprise-APIs

Kontingentverwaltung: Steuerung des Datenflusses

In Verbindung mit Open-APIs stellen Unternehmen oftmals Datenfeeds bereit, auf die weltweit jedermann zugreifen kann. So kann ein Versorgungsunternehmen beispielsweise die Preise für seine Leistungen oder ein Verkehrsunternehmen die Fahrpläne von Bahnen und Bussen veröffentlichen. Diese Informationen sind für die Öffentlichkeit gedacht. Doch auch in diesem Fall ist ein gewisses Maß an Management erforderlich, um sicherzustellen, dass das System nicht missbraucht wird, um den Datenverkehr zu monopolisieren, einen Denial-of-Service-Angriff zu starten oder anderen Benutzern dieses Diensts zu schaden. Eine Lösung zur Steuerung des Nachrichtenflusses besteht darin, Kontingente zuzuteilen und das Kundenaufkommen zu begrenzen. Hierbei wäre dann beispielsweise nur eine bestimmte Anzahl von Nachrichten pro Sekunde, pro Minute oder pro Tag zulässig. Dieser Ansatz wird üblicherweise für Open-APIs verwendet.

Mit einem Enterprise-API werden Informationen in der Regel nicht der ganzen Welt angeboten. Hier geht es bei der Sicherheit vor allem darum, die Identität der Benutzer zu überprüfen, die sich beim API anmelden. Dieser Ansatz erfordert eine Authentifizierung persönlicher Daten – ganz im Gegensatz zum Open-API-Ansatz.

REST und SOAP

Aufgrund der Vielzahl unterschiedlicher Arten von Client-Apps müssen Open-APIs sowohl REST als auch SOAP unterstützen. Das liegt daran, dass verschiedene mobile Plattformen unterstützt werden müssen. Außerdem sind Beispielcodes für den Aufruf des API durch eine iPhone-App, eine Android-App oder ein Windows-Telefon für die Clients bereitzustellen. Es ist also absolut erforderlich, dass Open-APIs REST unterstützen und Beispielcode für eine Vielzahl unterschiedlicher Plattformen bereitstellen.

Dokumentation

Bei Open-APIs geht es vor allem darum, die Nutzung des API möglichst einfach zu gestalten. Deshalb ist es wichtig, den Entwicklern Hilfestellung zu geben. Im Falle eines Enterprise-API kann davon ausgegangen werden, dass die Entwickler bereits Erfahrung im Umgang mit dem API haben. Unter Umständen haben sie das API sogar selbst entwickelt und kennen es daher in- und auswendig. Bei Open-APIs hingegen müssen den Entwicklern sämtliche Informationen an die Hand gegeben werden, damit sie in der Lage sind, sofort Apps zu erstellen.

Wohin geht die Reise?

Die Unternehmen werden auch künftig sowohl Open-APIs als auch Enterprise-APIs benötigen. Sie werden auch in Zukunft Enterprise-APIs für ihre mobilen Mitarbeiter und Open-APIs für die Öffentlichkeit nutzen. Aus Gründen der Effizienz, Sicherheit und Wirtschaftlichkeit brauchen sie für die Verwaltung eine einheitliche Plattform, die sowohl Open-APIs als auch Enterprise-APIs unterstützt. Die Alternative – also eine Plattform für Open-APIs und eine weitere Plattform für Enterprise-APIs zu verwenden – wäre außerordentlich zeitaufwändig, riskant und teuer. Die Zukunft gehört also ganz eindeutig einer gemeinsamen API-Server-Plattform für Enterprise- und Open-APIs.

Unternehmensgrenzen

Mit der Ausdehnung der Unternehmensgrenzen auf Open-APIs und Enterprise-APIs zeigt sich deutlich, dass APIs heute eine Möglichkeit bieten, die Außenwelt einzubinden, statt sie auszusperren. Am besten stellt man sich ein API als einen Legostein in der Außenmauer des Unternehmens vor, an den sowohl externe Benutzer als auch Mitarbeiter ihre eigenen Steine anstecken können. Auf diese Weise profitiert man am meisten von APIs.

Aufmacherbild: scissors cutting von Shutterstock / Urheberrecht: mayamaya

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -