Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Wie kann ich ein JWT -Token in Logik -Apps dekodieren?


Wie kann ich ein JWT -Token in Logik -Apps dekodieren?


Das Dekodieren eines JWT -Tokens in Azure -Logik -Apps kann erreicht werden, ohne externe Bibliotheken wie node.js oder c#zu verwenden. Hier ist ein Schritt-für-Schritt-Ansatz:

1. Extrahieren Sie das JWT -Token: Erstens müssen Sie das JWT -Token aus der eingehenden Anfrage extrahieren. Dies ist in der Regel in der "Autorisierung" -Header der Anfrage zu finden.

2. Teilen Sie das JWT -Token: JWT -Token bestehen aus drei Teilen, die durch Punkte getrennt sind: Header, Nutzlast und Signatur. Sie müssen das Token durch diese Punkte teilen, um die Nutzlast zu isolieren, die die Benutzerdetails enthält.

3.. Dekodieren Sie die Nutzlast: Die Nutzlast ist base64url codiert. Sie können die Funktion "Base64ToString" in Logik -Apps verwenden, um sie zu dekodieren. Sie müssen jedoch sicherstellen, dass die Basis64 -Saite ordnungsgemäß mit "=" gepolstert ist, um ihre Länge zu einem Vielfachen von 4 zu machen.

4. Parse JSON: Sobald er dekodiert ist, ist die Nutzlast eine JSON -String. Verwenden Sie die Funktion "JSON" in Logik -Apps, um diese Zeichenfolge in ein JSON -Objekt analysieren, mit dem Sie arbeiten können.

Hier ist ein vereinfachtes Beispiel dafür, wie dies in Logik -Apps aussehen könnte:

- Teilen Sie das JWT -Token: Verwenden Sie einen Ausdruck wie "Split (TriggerBody ()? [" Autorisierung ".") ")" Spalt das Token.
- Dekodieren Sie die Nutzlast: append "=", um eine ordnungsgemäße Polsterung zu gewährleisten, und verwenden Sie dann "Base64ToString", um sie zu dekodieren.
- JSON analysieren: Verwenden Sie die Funktion "json", um die dekodierte Nutzlast zu analysieren.

Für einen wiederverwendbareren Ansatz erstellen Sie eine untergeordnete Logik -App speziell zum Parsen von JWT -Token, wie in [3] beschrieben. Auf diese Weise können Sie die JWT -Parsen einfach in mehrere Logik -Apps integrieren.

Wenn Sie das Token validieren müssen (seine Signatur überprüfen), verwenden Sie normalerweise einen externen Dienst oder eine Bibliothek, da Logik -Apps die JWT -Validierung nicht nativ unterstützt. Um jedoch einfach Ansprüche ohne Validierung zu extrahieren, reicht die obigen Schritte jedoch aus.

Zitate:
[1] https://stackoverflow.com/questions/54257879/how-todedecode-a-jwt-te-in-azure-logic-app
[2] https://www.criipto.com/blog/jwt-validation-guide
[3] https://autosysops.com/blog/parse-jwt-tokens-azure-logic-apps
[4] https://hasura.io/blog/best-practices-of-using-jwt-with-graphql
[5] https://techcommunity.microsoft.com/blog/azuredevcommunityblog/part-4-secure-your-logic-app-using-api-management-8211-validate-jwt-access-restern/336802
[6] https://auth0.com/blog/how-to-valate-jwt-dotnet/
[7] https://github.com/auth0/jwt-decode
[8] https://supertokens.com/blog/revoking-access-with-a-jwt-blacklist
[9] https://fusionauth.io/dev-tools/jwt-decoder
[10] https://rakhesh.com/azure/parsing-json-tokens-logic-app/
[11] https://www.reddit.com/r/azure/comments/u4alct/blog_parse_jwt_token_with_azure_logic_apps/