For at hente og afkode et JWT -token i en logisk app, kan du følge disse trin:
1. Hent JWT -tokenet: Først skal du få JWT -tokenet. Dette kan gøres ved at analysere overskrifterne til en indgående anmodning. Hvis tokenet sendes i overskriften 'Autorisation', kan du udtrække det ved hjælp af en 'parse JSON' handling med et skema, der fanger den 'autorisation' -tast. Opret derefter en variabel til at holde bare tokendelen (f.eks. Efter "bærer") [10].
2. afkode JWT-tokenet: JWT-tokens er base64URL-kodede. Du kan afkode nyttelastdelen af token ved hjælp af 'Split' og 'Base64ToString' fungerer i logiske apps. Opdel tokenet med "." separator til isolering af nyttelasten. Derefter tilføjer "=" for at sikre, at længden er et multiplum på 4 til base64 -afkodning. Logiske apps konverterer implicit dette til en base64 -streng, som du derefter kan afkode ved hjælp af `Base64ToString '[1] [3].
3. parse den afkodede nyttelast: Efter afkodning af nyttelasten har du en JSON -streng. Brug en anden 'parse JSON' handling til at konvertere denne streng til et JSON -objekt, som du kan arbejde med i din logik -app. Du kan definere et skema for dette JSON -objekt baseret på de forventede påstande i JWT -tokenet [3].
4. uddragskrav: Når JSON er parset, kan du udtrække specifikke krav (som bruger -ID eller e -mail) og bruge dem efter behov i din logiske app -arbejdsgang.
Denne tilgang giver dig mulighed for at afkode og bruge JWT -tokens direkte inden for Azure Logic -apps uden at skulle oprette en Azure -funktion eller bruge eksterne tjenester til afkodning. Men hvis du har brug for at validere token (kontroller dets underskrift), skal du muligvis bruge en ekstern service eller en Azure -funktion med et bibliotek, der er i stand til JWT -validering.
Citater:
)
[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-sising-jwt-with-graphql
)
)
)
[8] https://docs.azure.cn/en-us/logic-apps/logic-apps-securing-a-logic-app
[9] https://www.mikaelsand.se/2022/06/extracting-values-from-a-jwt-token-in-apim/
[10] https://rakhesh.com/azure/parsing-json-tokens-in-a-logic-app/
[11] https://github.com/auth0/jwt-decode