Einführung
Wenn Sie eine Kette verwenden, die mehrere API-Aufrufe mit einem ablaufenden Authentifizierungs-Token durchführt, wie es bei den APIs von Workiva der Fall ist, besteht das Risiko, dass der Token abläuft, bevor alle Aufrufe initiiert wurden. In diesem Fall werden alle verbleibenden API-Aufrufe fehlschlagen. Eine erneute Authentifizierung vor jedem API-Aufruf könnte dieses Problem verhindern, würde aber zusätzlichen Overhead in der Kette verursachen.
Diese Anleitung erklärt, wie Sie die Vorlage OAuth Token dynamisch aktualisieren implementieren. Die Vorlage ist für Ketten gedacht, die den HTTP Connector verwenden, um API-Aufrufe zu tätigen, bei denen die API eine Authentifizierung über ein Token mit Ablaufdatum und -uhrzeit erfordert. Sie wurde zwar für die Workiva API entwickelt, kann aber auch für andere APIs angepasst werden, die ähnliche Authentifizierungsmethoden verwenden.
Die Kette enthält einen Mechanismus zur automatischen Aktualisierung des Tokens, wenn er kurz vor dem Ablauf steht. Sie subtrahiert 2 Minuten (dieser Wert kann angepasst werden) von der Verfallszeit des vorhandenen Tokens als Puffer und vergleicht sie mit der aktuellen Zeit. Wenn die aktuelle Zeit nach der angepassten Ablaufzeit liegt, löst die Kette den erneuten Authentifizierungsprozess aus, um einen neuen Token zu erzeugen, der dann von der Kette ausgegeben wird. Wenn das Token noch gültig ist, überspringt die Kette die erneute Authentifizierung und gibt einfach das vorhandene Token aus.
Hinweis: Wenn kein Token an diese Kette übergeben wird, durchläuft sie automatisch den Authentifizierungsprozess und generiert eines, d.h. diese Kette kann auch für unsere erste (erste) Authentifizierungsanfrage und alle folgenden verwendet werden.
Voraussetzungen
Chains
Die folgenden Konnektoren müssen in Ihrem Arbeitsbereich aktiviert und konfiguriert sein:
Die Vorlage enthält die folgenden Workspace-Variablen für die Verwendung mit der Workiva-API. Ändern und konfigurieren Sie diese nach Bedarf:
- wsv_platform (der Ort, an dem sich Ihr Arbeitsbereich befindet, für die USA verwenden Sie "app", für EU/EMEA verwenden Sie "eu", für APAC verwenden Sie "apac")
- wsv_Client ID (die Client-ID Ihrer API-Grant)
- wsv_Client Secret (das Geheimnis Ihrer API-Erlaubnis)
Einsetzen der Kette
Die Kettenvorlage "OAuth Token dynamisch aktualisieren" befindet sich im Abschnitt Workiva-Ketten auf dem Bildschirm Vorlagen.
So finden Sie es:
- Gehen Sie im Chain Builder auf die Registerkarte Vorlagen
- Wählen Sie Workiva Chains aus dem Menü oben
- Suchen Sie oben rechts nach Refresh OAuth Tokens Dynamically Chain Template und öffnen Sie die Vorlage
- Nachdem Sie die Vorlage gefunden haben, klicken Sie auf Neue Kette, um sie in Ihrem Arbeitsbereich einzusetzen.
- Konfigurieren Sie die Vorlage für Ihren Arbeitsbereich und Ihre API.
- Denken Sie daran, die Kette zu veröffentlichen, sobald sie konfiguriert ist und wenn Sie sie so verwenden möchten, wie sie ist, ohne dass Änderungen erforderlich sind.
Hinweis: Ausführliche Anweisungen zum Erstellen einer Kette aus einer Vorlage finden Sie im Artikel Ketten erstellen und verwalten.
Konfigurieren Sie die Vorlage
Diese Vorlage kann mit dem Befehl Run Chain zu einer bestehenden Kette hinzugefügt werden und funktioniert ohne zusätzliche Änderungen für die Workiva API. Eine Anleitung zur Verwendung des Ereignisbefehls "Kette ausführen" finden Sie hier.
Ein Beispiel für den Einsatz dieser Kette wäre innerhalb einer bestehenden Befehlsgruppe, die Iteration verwendet. Diese Kette könnte über einen Ereignisbefehl "Kette ausführen" mit einer eigenen Verzweigung in der Gruppe ausgeführt werden. setzt die dynamischen Kettenvariablen mit den Kettenausgaben dieser Kette.
Innerhalb des Befehls "Run Chain" können Sie Ihre dynamische Kettenvariable verwenden, um sicherzustellen, dass immer das letzte Token geprüft wird.
Anschließend müssen Sie dieselbe dynamische Kettenvariable mit der Ausgabe des Befehls "Run Chain" aktualisieren.
Sie können dann dieselben dynamischen Kettenvariablen in allen HTTP-Anfragebefehlen verwenden, die Sie ausführen
Aktualisieren Sie die Pufferzeit
Standardmäßig fügt diese Vorlage eine Pufferzeit von 2 Minuten zur Verfallszeit des vorhandenen Tokens hinzu, um Zeitprobleme zu vermeiden. Sie können dies im Bedingungsbefehl "Prüfen, ob das Verfallsdatum nahe ist" ändern.
Sobald Sie diesen Befehl bearbeitet haben, doppelklicken Sie auf die erste Variable "Erweiterte Abfrage - Epoche Zeitstempel umwandeln - Zeitstempel" in den Bedingungen.
Sie können dann den Wert für den Betrag nach Belieben anpassen.