Zum Inhalt springen

Schlüsselkonzepte für Jitterbit API Manager

Diese Seite behandelt die grundlegenden Konzepte, die Sie beim Arbeiten mit Jitterbit API Manager verstehen müssen, einschließlich API-Typen, Sicherheitsfunktionen, die durch API-Gateways durchgesetzt werden, und der Struktur von Service-URLs.

API-Typen

Sie können drei Arten von APIs in API Manager erstellen und veröffentlichen. Jeder Typ interagiert innerhalb der Systemarchitektur auf einzigartige Weise mit Harmony.

Weitere Informationen zur Jitterbit-Sicherheit und Systemarchitektur finden Sie unter Jitterbit security and architecture white paper.

Custom API

Custom APIs stellen einen Harmony-Vorgang zur Nutzung bereit. Um eine Custom API zu konfigurieren, müssen Sie zunächst einen Vorgang in Harmony erstellen und bereitstellen. Der Vorgang kann ein beliebiger Studio- oder Design Studio-Vorgang sein. Bei der Konfiguration der Custom API verweisen Sie auf den vorhandenen Vorgang. API-Nutzer rufen den Vorgang über die Custom API auf und nutzen ihn. Custom APIs werden über Jitterbit-Agenten geleitet (entweder Cloud-Agent-Gruppen oder Private Agents).

Funktionsweise von Custom APIs

Wenn ein API-Nutzer eine Custom API aufruft, findet der folgende Prozess statt:

diagram cutsom API cloud deployment pp

  1. Ein API-Nutzer ruft die Custom API am Cloud-API-Gateway auf.
  2. Das Cloud-API-Gateway authentifiziert die Anfrage und setzt Sicherheitsrichtlinien durch. Anschließend leitet es die Custom-API-Anfrage an den Messaging-Service weiter, der Anfragen für Agent-Gruppen leitet.
  3. Ein Cloud-Agent empfängt die Anfrage vom Messaging-Service.
  4. Der Cloud-Agent verweist auf den Custom-API-Vorgang, den Sie während der Custom-API-Konfiguration angegeben haben, und löst den bereitgestellten Vorgang aus.
  5. Der Vorgang antwortet mit einer API-Payload. Diese Payload entspricht dem Antworttyp, den Sie während der Custom-API-Konfiguration ausgewählt haben.
  6. Der Cloud-Agent leitet die API-Payload zurück an den API-Nutzer.

Hinweis

Beachten Sie die folgenden Punkte beim Arbeiten mit Custom APIs:

  • Die API-Payload verbleibt nur zwei Tage auf dem Agent. Dies gilt, sofern der Vorgang nicht Temporary Storage verwendet.

  • Das System sendet Laufzeitstatusinformationen und Protokolle ausgeführter Vorgänge an die Transaktionsprotokoll-Datenbank.

  • Nutzerdaten werden nicht in der Transaktionsprotokoll-Datenbank gespeichert, sofern Sie nicht den Debug-Modus während der Custom-API-Konfiguration aktivieren.

Informationen zur Konfiguration einer Custom API finden Sie unter Custom API configuration.

OData-Service

OData-Services stellen einen Design Studio API-Entity-Vorgang zur Nutzung bereit. Um einen OData-Service zu konfigurieren, müssen Sie zunächst einen API-Entity-Vorgang in Harmony erstellen und bereitstellen. Bei der Konfiguration des OData-Service verweisen Sie auf den vorhandenen API-Entity-Vorgang. API-Nutzer rufen den Vorgang über den OData-Service auf und nutzen ihn. OData-Services werden über Jitterbit-Agenten geleitet (entweder Cloud-Agent-Gruppen oder Private Agents).

Funktionsweise von OData-Services

Wenn ein API-Nutzer einen OData-Service aufruft, findet der folgende Prozess statt:

diagram OData service on premises deployment pp

  1. Ein API-Consumer ruft den OData-Service am privaten API-Gateway auf.
  2. Das private API-Gateway authentifiziert die Anfrage und setzt Sicherheitsrichtlinien durch. Anschließend leitet es die OData-Service-Anfrage weiter.
  3. Der Messaging-Service empfängt die Anfrage und leitet Anfragen für Agent-Gruppen weiter.
  4. Der private Agent empfängt die Anfrage vom Messaging-Service.
  5. Der private Agent referenziert den OData-Service-Entity-Vorgang in Harmony und löst den bereitgestellten Entity-Vorgang aus.
  6. Der private Agent leitet die API-Payload aus der Vorgangsantwort durch das private API-Gateway zurück an den API-Consumer.

Hinweis

Beachten Sie die folgenden Punkte bei der Arbeit mit OData-Services:

  • Die API-Payload bleibt nur zwei Tage lang auf dem Agent. Dies gilt, sofern der Vorgang nicht Temporary Storage verwendet.
  • Das System sendet Laufzeitstatusinformationen und Protokolle laufender Vorgänge an die Transaktionsprotokoll-Datenbank auf dem privaten Agent.
  • Consumerdaten werden in der Transaktionsprotokoll-Datenbank nicht gespeichert, sofern Sie nicht den Debug-Modus während der OData-Service-Konfiguration aktivieren.
  • Sie können Protokolle auf dem privaten Agent optional mit der Transaktionsprotokoll-Datenbank in Harmony synchronisieren.

Informationen zur Konfiguration eines OData-Service finden Sie unter OData-Service-Konfiguration.

Proxy-API

Proxy-APIs funktionieren mit einer vorhandenen API von Drittanbietern und leiten nicht wie Custom APIs oder OData-Services, die einen Harmony-Vorgang zur Nutzung bereitstellen, durch Jitterbit-Agents weiter. Die API, die Sie als Proxy verwenden, muss für das Gateway, das die API verarbeitet, entweder das Cloud-API-Gateway oder ein privates API-Gateway, erreichbar sein:

  • Cloud-API-Gateway: Wenn Sie das von Jitterbit auf Harmony gehostete API-Gateway verwenden, muss die vorhandene API öffentlich zugänglich sein, auch wenn sie gesichert ist. Die API, die Sie als Proxy verwenden möchten, darf sich nicht hinter einer Firewall befinden. Um die IP-Adressen des Cloud-API-Gateways auf die Whitelist zu setzen und dem Gateway Zugriff auf die API zu gewähren, die Sie als Proxy verwenden, lesen Sie Whitelist-Informationen und navigieren Sie zu https://services.jitterbit für Ihre Region.

  • Privates API-Gateway: Wenn Sie ein privates API-Gateway verwenden, muss die vorhandene API vom privaten API-Gateway erreichbar sein.

Funktionsweise von Proxy-APIs

diagram proxy API cloud deployment pp

Wenn ein API-Consumer eine Proxy-API aufruft, erfolgt der folgende Prozess:

  1. Ein API-Consumer ruft die Proxy-API am Cloud-API-Gateway auf.
  2. Das Cloud-API-Gateway authentifiziert die Anfrage und setzt Sicherheitsrichtlinien durch. Anschließend leitet es den Proxy-API-Aufruf weiter und sendet ihn an die API des Drittanbieters, die Sie als Proxy verwenden.
  3. Die API des Drittanbieters antwortet mit einer API-Payload, die zum Cloud-API-Gateway und zurück an den API-Consumer geleitet wird.
  4. Das System sendet Laufzeitstatusinformationen an die Transaktionsprotokoll-Datenbank.

Hinweis

Consumerdaten werden in der Transaktionsprotokoll-Datenbank nicht gespeichert, sofern Sie nicht den Debug-Modus während der Proxy-API-Konfiguration aktivieren.

Informationen zur Konfiguration einer Proxy-API finden Sie unter Proxy-API-Konfiguration.

API-Sicherheit

Alle API-Anfragen im Jitterbit API Manager müssen durch API-Gateways geleitet werden, die als primäre Sicherheitsebene für Authentifizierung, Autorisierung und Zugriffskontrolle dienen. Der API Manager bietet mehrere Sicherheitsfunktionen, die Sie für verschiedene Anwendungsfälle konfigurieren und verwalten können. Informationen zu Sicherheitsfunktionen innerhalb der Systemarchitektur von Jitterbit finden Sie unter Jitterbit-Sicherheit.

Sicherheitsprofile

Standardmäßig ist eine API anonym und öffentlich zugänglich, wenn Sie sie erstellen, sofern Sie kein Sicherheitsprofil im API Manager auf der Seite Sicherheitsprofile konfigurieren und der API zuweisen.

Ein API-Sicherheitsprofil regelt und sichert die API-Nutzung. Sicherheitsprofile ermöglichen es, dass eine veröffentlichte API nur von einem bestimmten API-Consumer oder einer Gruppe von Consumern genutzt wird. Sie können Sicherheitsprofile erstellen und zuweisen, wenn Sie ein Organisationsmitglied mit Administratorberechtigung sind.

Harmony-Organisationsadministratoren können verlangen, dass Sie beim Erstellen einer API Sicherheitsprofile zuweisen, indem Sie eine Einstellung in den Richtlinien der Harmony-Organisation verwenden.

Authentifizierungstypen

Authentifizierungsoptionen in Sicherheitsprofilen steuern den API-Zugriff durch API-Consumer. Die folgende Tabelle zeigt die verfügbaren Authentifizierungstypen für Sicherheitsprofile:

Anonym Die anonyme Authentifizierung ermöglicht öffentlichen Zugriff auf die API ohne erforderliche Authentifizierung.
Basic Die Basic-Authentifizierung verwendet HTTP-Authentifizierung, um API-Zugriff bereitzustellen. Bei Verwendung der Basic-Authentifizierung geben Consumer den Benutzernamen und das Passwort in einer codierten Zeichenfolge im Autorisierungsheader jeder Anfrage an.
OAuth 2.0 Die OAuth 2.0-Authentifizierung verwendet Microsoft Entra ID, Google, Okta oder Salesforce als Identitätsanbieter. Bei Verwendung der OAuth 2.0-Authentifizierung muss der Consumer seine Identitätsanbieter-Anmeldedaten validieren, um zur Laufzeit auf eine API zuzugreifen. Ein OAuth 2.0-Sicherheitsprofil, das den 2-legged OAuth-Flow verwendet, kann mehrere Client-Credential-Paare enthalten, sodass unterschiedliche Consumer sich mit eindeutigen Anmeldedaten bei derselben API authentifizieren können. Weitere Informationen zur Konfiguration eines API-Identitätsanbieters finden Sie unter Konfiguration des API-Identitätsanbieters.
API-Schlüssel Die API-Schlüssel-Authentifizierung verwendet ein Schlüssel-Wert-Paar für den Zugriff auf eine API.

Hinweis

Sicherheitsprofile werden auf dem API-Gateway zwischengespeichert. Änderungen an den Sicherheitsprofilen einer bereits aktiven API können mehrere Minuten dauern, bis sie wirksam werden.

API-Gateways als Sicherheitsdurchsetzungspunkte

Sowohl das Cloud-API-Gateway als auch Private API-Gateways dienen als Sicherheitsdurchsetzungspunkte in der API Manager-Architektur. An diesen Gateways führt das System die folgenden Aktionen aus:

  • Authentifizierung von API-Consumern mit dem zugewiesenen Sicherheitsprofil
  • Durchsetzung von Ratenbegrenzungen und IP-Adressbeschränkungen
  • Anwendung von SSL-Verschlüsselungsanforderungen
  • Protokollierung des gesamten API-Zugriffs für Sicherheitsaudits
  • Blockierung nicht autorisierter Anfragen, bevor sie Backend-Systeme erreichen

Dieses Sicherheitsmodell gewährleistet konsistenten Schutz über alle API-Typen hinweg. Es bietet auch zentrale Kontrolle über API-Zugriffrichtlinien.

Mehrere Sicherheitsprofile

Sie können mehrere Sicherheitsprofile verwenden, um verschiedene Authentifizierungs- und Sicherheitsoptionen in derselben Umgebung einzusetzen, wobei jedes Profil auf eine bestimmte Gruppe von API-Consumern ausgerichtet ist.

Wenn Sie beispielsweise zwei Arten von Consumern (Buchhaltung und Finanzen) und zwei APIs (API-Revenue und API-Budget) in einer Umgebung haben und API-Revenue für Buchhaltungs-Consumer bestimmt ist und API-Budget für Buchhaltungs- und Finanzen-Consumer bestimmt ist, können Sie ein einzelnes Sicherheitsprofil für Buchhaltungs-Consumer erstellen und es beiden APIs zuweisen. Sie könnten dann ein separates Sicherheitsprofil für Finanzen-Consumer erstellen und es API-Budget zuweisen.

Das Ergebnis der zwei Sicherheitsprofile ist, dass Buchhaltungs-Consumer (mit ihrem Sicherheitsprofil) nur auf API-Revenue zugreifen können, und Finanzen-Consumer (mit ihrem separaten Sicherheitsprofil) auf API-Revenue oder API-Budget zugreifen können.

Diese Sicherheitsprofilkombinationen sind zulässig:

  • Sie können mehrere Sicherheitsprofile mit Standardauthentifizierung einer einzelnen API zuweisen.
  • Sie können mehrere Sicherheitsprofile mit API-Schlüssel-Authentifizierung einer einzelnen API zuweisen.
  • Sie können eine Kombination von Sicherheitsprofilen, die Standard- und API-Schlüssel-Authentifizierung verwenden, einer einzelnen API zuweisen.

Jede andere Sicherheitsprofilkombination ist nicht zulässig.

Ratenlimits

Jede Organisation hat zwei Kontingente, wie in der Jitterbit-Lizenzvereinbarung der Organisation angegeben. API-Gateways erzwingen diese Limits am Einstiegspunkt:

  1. API-Hits pro Monat Kontingent: Das Gesamtkontingent, das einer Organisation in einem Monat zur Verfügung gestellt wird. Alle Aufrufe, die von allen APIs (in allen Umgebungen) in einem einzelnen Monat empfangen werden, zählen zu diesem Limit.

  2. API-Hits pro Minute Kontingent: Die maximale Rate, mit der das Kontingent einer Organisation verbraucht werden kann.

Standardmäßig kann eine Umgebung oder ein Sicherheitsprofil auf das Gesamtkontingent einer Organisation für Hits über alle APIs innerhalb einer Minute zugreifen.

Nachdem eine Organisation ihr Kontingent für Hits pro Monat aufgebraucht hat, erhalten alle APIs innerhalb der Organisation eine 429 Too Many Requests-Antwort, bis sich das Kontingent am ersten Tag des folgenden Monats auf das maximale Kontingent zurückgesetzt hat.

Sie können Ratenlimits auf der Umgebungs- und Sicherheitsprofilebene verwenden, um eine gemeinsame maximale Anzahl von API-Hits pro Minute durchzusetzen, die über alle APIs innerhalb einer Umgebung hinweg erfolgen können, der ein Sicherheitsprofil zugewiesen ist.

Hinweis

Das System erzwingt Ratenlimits auf Organisations-, Umgebungs- und Sicherheitsprofilebene. Es erzwingt Ratenlimits nicht auf API-Ebene.

Zusätzlich zu den oben genannten Limits erzwingt das von Jitterbit verwaltete Cloud-API-Gateway ein Limit auf Plattformebene von 200 API-Anfragen pro Minute pro Organisation. Anfragen, die diesen Schwellenwert überschreiten, werden von der Plattform ratenbegrenzt, die eine 429 Too Many Requests-Antwort zurückgibt. Dieses Limit gilt kollektiv für alle API-Typen, einschließlich benutzerdefinierter APIs, Proxy-APIs und OData-Anfragen. Dieses Limit gilt nicht für private API-Gateways, bei denen der Durchsatz durch die Kapazität des Host-Servers bestimmt wird.

Vertrauenswürdige IP-Bereiche

Standardmäßig beschränkt ein Sicherheitsprofil den Zugriff nicht auf einen vordefinierten IP-Adressbereich. Sie können den Zugriff auf die APIs innerhalb eines Sicherheitsprofils auf Consumer von einer einzelnen IP-Adresse oder einem IP-Adressbereich während der Sicherheitsprofilkonfiguration beschränken.

Wenn ein Consumer versucht, auf eine API mit einem Sicherheitsprofil zuzugreifen, das auf eine bestimmte IP-Adresse oder einen Bereich beschränkt ist, überprüft das API-Gateway die IP-Adresse des Consumers gegen die zulässigen Bereiche. IP-Adressen, die die Kriterien nicht erfüllen, werden abgelehnt und eine Error 429-Meldung wird zurückgegeben.

SSL-only-Modus

Sie können jede API so konfigurieren, dass sie SSL-Verschlüsselung verwendet. Standardmäßig unterstützt jede API sowohl HTTP- als auch HTTPS-Übertragung.

Mit der SSL-only-Option können Sie HTTP-Traffic weiterleiten, um sicherzustellen, dass die gesamte Kommunikation verschlüsselt ist. Die Identität der HTTPS-URL wird von Symantec Class 3 Secure Server SHA256 SSL CA überprüft. Die Verbindung zur HTTPS-URL ist mit moderner Kryptographie verschlüsselt.

Sie können die SSL-only-Option während der Konfiguration einer benutzerdefinierten API, eines OData-Service oder einer Proxy-API aktivieren.

API-Protokolle

Für jeden Zugriff auf eine API wird das Sicherheitsprofil, das für den Zugriff auf die API verwendet wird, in einem Protokoll erfasst. Die Seite API-Protokolle zeigt eine Tabelle aller API-Verarbeitungsprotokolle und Debug-Protokolle (falls Debug-Protokollierung aktiviert ist) an, um Herausgebern und Verbrauchern bei der Behebung von Problemen zu helfen. Protokolle werden für benutzerdefinierte APIs, OData-Services und Proxy-APIs angezeigt, wenn sie über das Cloud-API-Gateway oder ein privates API-Gateway aufgerufen werden.

API-Service-URLs

Sie greifen auf benutzerdefinierte APIs, OData-Services und Proxy-APIs, die über Jitterbit API Manager erstellt wurden, über die Service-URL einer API zu. Die Service-URL ist die URL, die zum Nutzen der API mit der konfigurierten Authentifizierungsmethode verwendet wird.

Sie können die Service-URL von einer Anwendung aus aufrufen. Wenn die API GET unterstützt, können Sie die URL in einen Webbrowser einfügen, um die API manuell zu nutzen.

Service-URL-Format

Alle API-Service-URLs folgen dem gleichen Format. Proxy-APIs können zusätzliche Service-Pfad-Parameter haben:

Benutzerdefinierte API oder OData-Service
<Protocol>://<Base URL>/<Environment URL Prefix>/<Version>/<Service Root>
Proxy-API
<Protocol>://<Base URL>/<Environment URL Prefix>/<Version>/<Service Root>/<Service Path>

Beispiel

Dies sind typische Beispiele für die Service-URL einer API:

  • Benutzerdefinierte API oder OData-Service: https://JBExample123456.jitterbit.net/Development/1/customer
  • Proxy-API: https://JBExample123456.jitterbit.net/Development/1/dog/pet/{petId}/uploadImage

Hinweis

API-Service-URLs haben eine maximale Längenbeschränkung von 8.000 Zeichen. Stellen Sie sicher, dass Ihre URL-Komponenten (einschließlich Service-Pfade für Proxy-APIs) innerhalb dieses Limits bleiben, um Anfragefehler zu vermeiden. Bei Überschreitung gibt das API-Gateway einen HTTP-Fehler 414 (URI Too Large) zurück.

Service-URL-Komponenten

Die Service-URL jeder API wird automatisch aus diesen Teilen zusammengesetzt:

Teil Beispiel Beschreibung
Protocol https Das Protocol ist immer https
Base URL JBExample123456.jitterbit.net Die Basis-URL. Standardmäßig besteht diese aus der API-Subdomain (eine Kombination aus dem Harmony-Organisationsnamen und der ID) und dem Harmony-Regionendomänennamen. Sie können die API-Subdomain auf der Seite Organisationen der Management Console anpassen. Um einen benutzerdefinierten Domänennamen als Basis-URL für Ihre veröffentlichten APIs zu verwenden, können Sie benutzerdefinierte Domänenkonfigurationsmethoden nutzen
Harmony-Organisationsname JBExample Der Name der Harmony-Organisation. Für Testlizenzen, die vor bestimmten Daten initiiert wurden, können spezifische Namenskonventionen gelten
Harmony-Organisations-ID 123456 Der eindeutige Bezeichner für die Harmony-Organisation
Regionendomäne jitterbit.net Der Harmony-Regions-Domänenname der Harmony-Organisation:
• APAC: jitterbit.cc
• EMEA: jitterbit.eu
• NA: jitterbit.net
Environment-URL-Präfix Development Das URL-Präfix in Umgebungen
Version 1 Die Version, die Sie in der Konfiguration der [benutzerdefinierten API], des [OData-Service] oder der [Proxy-API] angeben
Service Root customer, dog Die Service Root, die Sie in der Konfiguration der [benutzerdefinierten API], des [OData-Service] oder der [Proxy-API] angeben
Service Path pet/{petId}/uploadImage Der Pfad, den Sie in der Konfiguration der [Proxy-API] angeben (nur Proxy-APIs)

Fehlerbehebung

Weitere Informationen zur Fehlerbehebung finden Sie in den folgenden Abschnitten im API Manager-Fehlerbehebungsleitfaden: