API-Schlüssel-Sicherheitsanbieter im Jitterbit App Builder
Der API-Schlüssel-Sicherheitsanbieter ermöglicht es Administratoren, die REST-APIs des App Builders mithilfe eines von App Builder generierten API-Schlüsselcodes zu sichern. Der Verbraucher übergibt den API-Schlüssel an App Builder, wenn er REST-API-Anfragen stellt. Da jeder API-Schlüssel mit einem einzelnen Benutzer verknüpft ist, bietet dies sowohl Authentifizierung als auch Autorisierung.
Definition und Anwendungsfälle
Die API-Schlüssel von App Builder bestehen aus einer 128-Bit, kryptografisch zufälligen Zahl. Die Schlüssel sind base64url kodiert. Nachfolgend ein Beispiel für einen API-Schlüssel:
DLOo9sPS5slJEMHpXBFt3g
API-Schlüssel bieten folgende Vorteile gegenüber der standardmäßigen Benutzername/Passwort-Authentifizierung:
- Sie haben eine höhere Entropie als Kombinationen aus Benutzername und Passwort.
- Sie überstehen eine Passwortzurücksetzung.
- Sie können leicht widerrufen werden.
- Sie können rotiert werden.
- Sie sind schneller. Passwörter müssen gehasht werden, was absichtlich langsam ist.
Die Nachteile oder Schwächen von API-Schlüsseln umfassen die Verwaltung ihrer Verteilung und das Risiko von Leaks. Einige der Anwendungsfälle, in denen API-Schlüssel die geeignetste Authentifizierungsmethode sein können, sind:
- Dienstkonten
- Anwendung-zu-Anwendung-Kommunikation
- Server-zu-Server-Kommunikation
- Nur-Lese-Zugriff
- Nicht-sensitive Informationen
Fügen Sie einen API-Schlüssel-Sicherheitsanbieter hinzu
Um einen neuen API-Schlüssel-Sicherheitsanbieter hinzuzufügen, befolgen Sie diese Schritte:
-
Gehen Sie zu IDE > Sicherheitsanbieter. Die Sicherheits-Seite öffnet sich.
-
Klicken Sie im Benutzerauthentifizierung-Tabelle auf + Benutzerauthentifizierung. Der Anbieter-Dialog erscheint:

-
Füllen Sie im Abschnitt Einstellungen diese Felder aus:
-
Name: Geben Sie einen Namen ein, um Ihren API-Schlüssel-Sicherheitsanbieter zu identifizieren.
-
Typ: Wählen Sie im Dropdown-Menü API-Schlüssel als Typ des Sicherheitsanbieters, den Sie erstellen. Dadurch werden die restlichen Felder, die im Dialog angezeigt werden, geändert.
-
Priorität: Geben Sie eine Zahl ein, um die Reihenfolge festzulegen, in der Sicherheitsanbieter im Anmeldeformular angezeigt werden.
-
Aktiviert: Klicken Sie auf dieses Kontrollkästchen, um den neuen Sicherheitsanbieter zu aktivieren.
-
Identifier: Dieses Feld wird automatisch vom App Builder generiert.
-
-
Füllen Sie im Abschnitt Schlüssel diese Felder aus:
-
Standardablauf: Geben Sie an, wie viele Minuten die Standardlebensdauer neuer Schlüssel beträgt. (Änderungen an diesem Feld wirken sich nicht auf vorhandene Schlüssel aus.)
-
Maximaler Ablauf: Geben Sie an, wie viele Minuten die maximale Lebensdauer neuer Schlüssel beträgt. (Änderungen an diesem Feld wirken sich nicht auf vorhandene Schlüssel aus.)
-
Länge: Geben Sie die Länge (in Bytes) neuer Schlüssel an. (Änderungen an diesem Feld wirken sich nicht auf vorhandene Schlüssel aus.)
-
-
Klicken Sie auf Speichern.
Nachdem Sie einen neuen API-Schlüssel-Sicherheitsanbieter gespeichert haben, werden Sie zurück zur Sicherheit-Seite geleitet, wo die Tabelle Benutzerauthentifizierung den neuen Anbieter anzeigt, den Sie gerade erstellt haben. Durch Klicken auf das -Symbol am Ende seiner Zeile können Sie die Konfiguration fortsetzen.
Konfigurieren eines API-Schlüssel-Sicherheitsanbieters
Um Ihren API-Schlüssel-Sicherheitsanbieter zu konfigurieren, gehen Sie zu IDE > Sicherheitsanbieter. Suchen Sie ihn in der Tabelle Benutzerauthentifizierung und klicken Sie auf das -Symbol am Ende seiner Zeile. Die Seite Anbieter wird angezeigt, auf der Sie zusätzliche Konfigurationen hinzufügen können. Das Anbieter-Panel auf der linken Seite zeigt dieselben Einstellungen und Schlüssel, die angezeigt werden, wenn Sie den Sicherheitsanbieter erstellt haben. Das Eigenschaften-Panel auf der rechten Seite ermöglicht es Ihnen, einige zusätzliche Parameter einzurichten, die im Folgenden beschrieben werden.
Um eine neue Eigenschaft hinzuzufügen, klicken Sie auf die Schaltfläche + Eigenschaft. Dadurch wird der Dialog Eigenschaften geöffnet, der die Felder Parameter und Wert enthält. Die folgenden Parameter sind verfügbar:

Hinweis
Keiner dieser Parameter ist erforderlich. Sie sollten sie nur hinzufügen, wenn es notwendig ist, die Art und Weise zu ändern, wie Ihr API-Schlüssel von der Standardkonfiguration übergeben wird. Weitere Informationen finden Sie unter API-Schlüssel übergeben.
-
AllowApiKeyInQueryString: Verwenden Sie diesen Parameter, um den API-Schlüssel im Abfrage-String anstelle im HTTP-Header zu übergeben (siehe den Abschnitt Pass an API key). Der Standardwert istFalse. -
AllowInsecureHttp: Verwenden Sie diesen Parameter, um den API-Schlüssel über eine unsichere HTTP-Anfrage anstelle einer sicheren HTTPS-Anfrage zu übergeben (siehe den Abschnitt Pass an API key). Der Standardwert istFalse. -
HttpHeaderName: Verwenden Sie diesen Parameter, um den Namen des HTTP-Headers zu ändern, der den API-Schlüssel vom StandardX-API-Keyüberträgt. -
QueryStringParameterName: Wenn Sie auch die OptionAllowApiKeyInQueryStringverwendet haben, um den API-Schlüssel über einen der Abfrage-String-Parameter zu übergeben, können Sie diese Option verwenden, um den Namen des Parameters vom StandardnamenapiKeyzu ändern (siehe den Abschnitt Pass an API key).
Klicken Sie auf Speichern und schließen Sie den Eigenschaften-Dialog. Der neue Parameter, den Sie hinzugefügt haben, wird in der Eigenschaften-Tabelle aufgeführt.
Generate an API key
Wenn Sie einen konfigurierten API-Schlüssel-Sicherheitsanbieter haben, können Sie API-Schlüssel erstellen, die mit Benutzern verknüpft sind, indem Sie die folgenden Schritte ausführen:
-
Gehen Sie zu IDE > Runtime > Benutzerverwaltung.
-
Das Benutzer-Panel listet alle Benutzer auf. Suchen Sie den Benutzer, für den Sie einen API-Schlüssel generieren möchten, und klicken Sie auf das -Symbol am Ende seiner Zeile.
-
Im Benutzer-Dialog klicken Sie auf Mehr > Schlüssel. Der Schlüssel-Dialog öffnet sich.
-
Klicken Sie auf Erstellen. Der Schlüssel generieren-Dialog wird geöffnet.
-
Wählen Sie im Menü Anbieter den API-Schlüssel-Sicherheitsanbieter aus, den Sie erstellt haben.
-
(Optional) Geben Sie eine Beschreibung für diesen Schlüssel an und tragen Sie eine benutzerdefinierte Ablaufzeit im Feld Gültig bis ein.
-
Klicken Sie auf Speichern. Der API-Schlüssel wird erstellt.
Pass an API key
In den meisten Szenarien empfiehlt Jitterbit, dass der Client den API-Schlüssel über einen benutzerdefinierten Header in einer sicheren HTTPS-Verbindung übergibt, um das Risiko einer Offenlegung zu minimieren. Das folgende Beispiel veranschaulicht dies:
GET /Vinyl/rest/v1/sales/customers HTTP/1.1
Host: example.com:443
Accept: application/json
X-API-Key: ABCd0eFG1hiJKLMnOPQr2s
Dies ist das Standardverhalten, das der App Builder automatisch auswählt. Sie können auch den Parameter HttpHeaderName verwenden, wenn Sie Ihren API-Schlüssel konfigurieren, um den Namen des HTTP-Headers zu ändern, der den API-Schlüssel vom Standard X-API-Key überträgt.
Die folgenden Beispiele sind einige Ausnahmen von dieser Empfehlung:
-
In einigen Szenarien können HTTPS-Verbindungen vorzeitig beendet werden. Um dieses Problem zu umgehen, können Sie den App Builder zwingen, API-Schlüssel zu akzeptieren, die über HTTP-Verbindungen gesendet werden, indem Sie den Parameter
AllowInsecureHttpwährend der API-Schlüsselkonfiguration aufTruesetzen. -
In Fällen, in denen Sie keinen Zugriff auf die HTTP-Anforderungsheader haben, ist es auch möglich, den API-Schlüssel über die Abfragezeichenfolgenparameter zu senden. Um diese Option zu aktivieren, setzen Sie
AllowApiKeyInQueryStringaufTruein den API-Schlüsselkonfigurationen. Das folgende Beispiel veranschaulicht, wie der API-Schlüssel in diesem Szenario übergeben wird:GET /Vinyl/rest/v1/sales/customers?apiKey=ABCd0eFG1hiJKLMnOPQr2s HTTP/1.1 HOST: example.com:443 Accept: application/jsonHinweis
Im obigen Beispiel wurde der Schlüssel unter dem Namen
apiKeygesendet. Sie können dies ändern, indem Sie zur API-Schlüsselkonfiguration gehen und den ParameterQueryStringParameterNamehinzufügen, um einen anderen Namen auszuwählen.