Jitterbit privates API-Gateway
Einführung
Ein privates API-Gateway, das in einem privaten Netzwerk gehostet wird, übernimmt diese Sicherheitsfunktionen und Aufgaben, die mit der Annahme und Verarbeitung von API-Manager-APIs verbunden sind:
- Verkehrsmanagement.
- Autorisierung und Zugriffskontrolle.
- Ratenbegrenzung.
- Verarbeitung von API-Nutzlasten.
Sie können ein privates API-Gateway auf Linux installieren und ausführen oder eines als Linux-basierten Docker-Container betreiben.
Ein privates API-Gateway ist ein lokales Gateway zur direkten Verarbeitung von APIs von Ihren eigenen Servern. Die Sicherheitsfunktionen des API-Managers werden auf API-Ebene oder Sicherheitsprofil-Ebene konfiguriert und im privaten API-Gateway zwischengespeichert, das während der API-Ausführung wie unten beschrieben referenziert wird unten.
Architektur des privaten API-Gateway-Systems
Die Verwendung eines privaten API-Gateways bietet diese zusätzlichen Vorteile gegenüber dem Cloud-API-Gateway:
-
Internes Netzwerk: Das private API-Gateway und seine Agenten können ausschließlich auf ein internes Netzwerk hinter einer Firewall beschränkt werden und sind nicht über das Internet zugänglich.
Hinweis
Wenn Ihre Installation des privaten API-Gateways hinter einer Firewall innerhalb Ihres Netzwerks liegt, müssen Sie die notwendigen Jitterbit-Dienste auf die Whitelist setzen.
-
Nutzlastsicherheit: API-Antwortnutzlasten durchlaufen niemals die Systeme von Jitterbit.
- Kontrolle: Sie haben die Kontrolle über die Hardware- und Softwareumgebung des privaten API-Gateways, um sicherzustellen, dass es den Standards Ihres Unternehmens entspricht.
- Domain-Name: Die Basis-API-Endpunkt-URL kann so konfiguriert werden, dass sie eine Subdomain eines Domainnamens ist, den Sie kontrollieren, anstatt eine Subdomain der Harmony-Region (
jitterbit.cc
,jitterbit.eu
oderjitterbit.net
). Eine Alternative zur Verwendung eines privaten API-Gateways zur Kontrolle des Domainnamens ist die Verwendung eines Drittanbieter-Tools wie Cloudflare oder eines DNS-Proxy, um einen benutzerdefinierten Domainnamen zur Basis-URL zu leiten.
Dieses Diagramm zeigt die Systemarchitektur einer benutzerdefinierten API, die lokal mit einem privaten Agenten und einem privaten API-Gateway bereitgestellt wird:
-
Ein API-Nutzer ruft die API auf, die sich am privaten API-Gateway befindet.
-
Das private API-Gateway greift auf die zwischengespeicherten Sicherheitsprofile (falls zutreffend) und die API-Metadaten zu, um Authentifizierungs- und Zugriffskontrollaufgaben durchzuführen. Wenn der Zugriff auf die API verweigert wird, gibt das private API-Gateway eine entsprechende HTTP-Antwort und einen Status an den API-Nutzer zurück. Wenn der Zugriff auf die API gewährt wird, wird die API-Anfrage an den Messaging-Dienst weitergeleitet, der Anfragen für Agentengruppen weiterleitet.
-
Der private Agent erhält die Anfrage vom Messaging-Dienst.
-
Der private Agent verweist auf die API-Operation, die während der benutzerdefinierten API-Konfiguration angegeben wurde, und löst die bereitgestellte Operation aus.
-
Die Operation antwortet mit einer API-Nutzlast, die mit dem während der benutzerdefinierten API-Konfiguration ausgewählten Antworttyp übereinstimmt.
-
Die API-Antwortnutzlast wird vom privaten Agenten zurück an das private API-Gateway geleitet, das die API-Nutzlast extrahiert und die endgültige HTTP-Antwort und den Status festlegt. Die HTTP-Antwort und der Status werden an den API-Nutzer gesendet.
Hinweis
Sofern die durch den API-Aufruf ausgelöste Operation nicht Temporären Speicher verwendet, bleibt die API-Antwortnutzlast maximal zwei Tage lang beim Agenten. Die API-Antwortnutzlast bleibt nicht länger als die Timeout-Dauer des API-Gateways von 15 Sekunden beim privaten API-Gateway.
Vorsicht
In Multi-Gateway-Umgebungen hinter einem Application Load Balancer (ALB) wie dem AWS ALB wird, falls ein Gateway die angeforderte Nutzlast nicht hat, eine Proxy-Anfrage an das Gateway erstellt, das dies hat, um die Nutzlast abzurufen.
Erfolgreiches Payload-Routing kann je nach Ihrer Multi-Gateway-Umgebung zusätzliche Konfiguration erfordern.
-
Laufzeitstatusinformationen und Protokolle von laufenden Operationen werden an die Transaktionsprotokolldatenbank gesendet.
Hinweis
Verbraucherdaten werden nicht in der Transaktionsprotokolldatenbank gespeichert, es sei denn, der Debug-Modus ist während der Konfiguration der benutzerdefinierten API aktiviert.