Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Bagaimana saya bisa memecahkan kode token jwt di aplikasi logika


Bagaimana saya bisa memecahkan kode token jwt di aplikasi logika


Decoding Token JWT dalam aplikasi logika Azure dapat dicapai tanpa menggunakan pustaka eksternal seperti Node.js atau C#. Here's a step-by-step approach:

1. Ekstrak token JWT: Pertama, Anda perlu mengekstrak token JWT dari permintaan yang masuk. Ini biasanya ditemukan di tajuk `otorisasi` dari permintaan tersebut.

2. Split the JWT Token: JWT tokens are composed of three parts separated by dots: header, payload, and signature. Anda perlu membagi token dengan titik -titik ini untuk mengisolasi muatan, yang berisi detail pengguna.

3. Decode payload: Payload adalah base64url yang dikodekan. Anda dapat menggunakan fungsi `base64ToString` dalam aplikasi logika untuk memecahkan kode. However, you need to ensure that the Base64 string is properly padded with "=" to make its length a multiple of 4.

4. Parse JSON: Once decoded, the payload will be a JSON string. Gunakan fungsi `json` dalam aplikasi logika untuk mengurai string ini ke dalam objek JSON yang dapat Anda kerjakan.

Berikut adalah contoh yang disederhanakan tentang bagaimana ini mungkin terlihat dalam aplikasi logika:

- Split the JWT Token: Use an expression like `split(triggerBody()?['Authorization'],'.')` to split the token.
- Decode payload: append "=" Untuk memastikan padding yang tepat dan kemudian gunakan `base64toString` untuk memecahkan kode.
- Parse Json: Gunakan fungsi `json` untuk mengurai muatan yang diterjemahkan.

For a more reusable approach, consider creating a child Logic App specifically for parsing JWT tokens, as described in[3]. Ini memungkinkan Anda untuk dengan mudah mengintegrasikan Parsing JWT ke dalam beberapa aplikasi logika.

Jika Anda perlu memvalidasi token (periksa tanda tangannya), Anda biasanya akan menggunakan layanan atau perpustakaan eksternal, karena aplikasi logika tidak secara native mendukung validasi JWT. Namun, untuk hanya mengekstraksi klaim tanpa validasi, langkah -langkah di atas cukup.

Kutipan:
[1] https://stackoverflow.com/questions/54257879/how-to-decode-a-jwt-token-in-azure-logic-app
[2] https://www.criipto.com/blog/jwt-validation-guide
[3] https://autosysops.com/blog/parse-jwt-tokens-in-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-restr/336802
[6] https://auth0.com/blog/how-to-validate-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-in-a-logic-app/
[11] https://www.reddit.com/r/azure/comments/u4alct/blog_parse_jwt_token_with_azure_logic_apps/