Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kaip nuskaityti ir iššifruoti JWT prieigos raktą loginėje programoje


Kaip nuskaityti ir iššifruoti JWT prieigos raktą loginėje programoje


Norėdami gauti ir iššifruoti JWT prieigos raktą loginėje programoje, galite atlikti šiuos veiksmus:

1. Gaukite JWT žetoną: Pirmiausia turite gauti JWT žetoną. Tai galima padaryti analizuojant gaunamo užklausos antraštes. Jei žetonas siunčiamas antraštėje „Autorizacijos“ antraštėje, galite ją išgauti naudodami „analizės json“ veiksmą su schema, kuri fiksuoja raktą „autorizacija“. Tada sukurkite kintamąjį, kad galėtumėte laikyti tik žetonų dalį (pvz., Po „nešiklio“) [10].

2. Dekoduokite JWT žetoną: JWT žetonai yra bazės64Url koduotos. Galite iššifruoti „Token“ naudingumo dalį naudodami „padali“ ir „base64ToString“ funkcijas loginėse programose. Padalinkite žetoną pagal „“. Separatorius, skirtas atskirti naudingą apkrovą. Tada pridėkite „=“, kad būtų užtikrintas, kad ilgis yra 4, skirtas 4 baziniam dekodavimui. „Logic Apps“ netiesiogiai konvertuos tai į „Base64“ eilutę, kurią galėsite iššifruoti naudodami „Base64ToString“ [1] [3].

3. Ištariama iššifruota naudinga apkrova: Dekodavę naudingą apkrovą, turėsite JSON eilutę. Norėdami paversti šią eilutę į JSON objektą, su kuriuo galite dirbti savo „Logic“ programoje, naudokite kitą „Parse JSON“ veiksmą. Galite apibrėžti šio JSON objekto schemą, remdamiesi numatomais JWT žetono teiginiais [3].

4. Ištraukite pretenzijas: Kai JSON bus analizuojami, galite išgauti konkrečius teiginius (pvz., Vartotojo ID ar el. Paštą) ir naudoti juos pagal poreikį savo „Logic App“ darbo eigoje.

Šis metodas leidžia iššifruoti ir naudoti JWT žetonus tiesiogiai „Azure Logic“ programose, nereikia sukurti „Azure“ funkcijos ar naudoti išorines paslaugas dekodavimui. Tačiau jei jums reikia patvirtinti žetoną (patikrinkite jo parašą), gali reikėti naudoti išorinę paslaugą arba „Azure“ funkciją su biblioteka, galinčia patvirtinti JWT.

Citatos:
[1] https://stackoverflow.com/questions/54257879/how-to-decode-a-jwt-token-in-azure-gogic-app
[2] https://www.criipto.com/blog/jwt-validation-guide
[3] https://autosysops.com/blog/parse-jwt-tokens-in-azure-gogic-apps
[4] https://hasura.io/blog/best-practices-of-using-jwt-with-graphql
[5] https://www.michev.info/blog/post/2140/decode-jwt-access-and-id-tyokens-via-powershell
[6] https://supertokens.com/blog/revecing-access-with-a-jwt-blacklist
[7] https://techcommunity.microsoft.com/blog/azedevcommunityblog/part-4-secure-your-gogic-app-using-api-Management-8211-Valiate-jwt-Acts-Rest/336802
[8] https://docs.azure.cn/en-us/logic-apps/logic-apps-securing-a-gogic-app
]
[10] https://rakhesh.com/azure/parsing-json-tokens-in-a-gogic-app/
[11] https://github.com/auth0/jwt-decode