Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon كيف يمكنني استرداد وفك تشفير رمز JWT في تطبيق منطقي


كيف يمكنني استرداد وفك تشفير رمز JWT في تطبيق منطقي


لاسترداد وفك تشفير رمز JWT في تطبيق منطقي ، يمكنك اتباع هذه الخطوات:

1. استرداد رمز JWT: أولاً ، تحتاج إلى الحصول على رمز JWT. يمكن القيام بذلك عن طريق تحليل رؤوس الطلب الوارد. إذا تم إرسال الرمز المميز في رأس "التفويض" ، فيمكنك استخراجه باستخدام إجراء "Parse Json" مع مخطط يلتقط مفتاح "التفويض". بعد ذلك ، قم بإنشاء متغير للاحتفاظ بجزء رمز فقط (على سبيل المثال ، بعد "Bearer") [10].

2. فك تشفير رمز JWT: الرموز الرموز JWT هي BASE64URL مشفرة. يمكنك فك تشفير جزء الحمولة النافعة من الرمز المميز باستخدام وظائف "الانقسام" و "BASE64TSTRING" في تطبيقات المنطق. تقسيم الرمز من قبل "." فاصل لعزل الحمولة. ثم ، إلحاق "=" لضمان أن يكون الطول مضاعفًا من 4 لفك تشفير BASE64. ستقوم تطبيقات المنطق بتحويل هذا ضمنيًا إلى سلسلة BASE64 ، والتي يمكنك بعد ذلك فك التشفير باستخدام "BASE64TOSTRING` [1] [3].

3. تحليل الحمولة النافعة التي تم فك تشفيرها: بعد فك تشفير الحمولة الصافية ، سيكون لديك سلسلة JSON. استخدم إجراء "Parse json`" آخر لتحويل هذه السلسلة إلى كائن JSON الذي يمكنك العمل معه في تطبيق المنطق الخاص بك. يمكنك تحديد مخطط لهذا الكائن JSON بناءً على المطالبات المتوقعة في الرمز المميز JWT [3].

4. استخراج المطالبات: بمجرد تحليل JSON ، يمكنك استخراج مطالبات محددة (مثل معرف المستخدم أو البريد الإلكتروني) واستخدامها حسب الحاجة في سير عمل تطبيق المنطق.

يتيح لك هذا النهج فك تشفير واستخدام الرموز JWT مباشرة داخل تطبيقات المنطق Azure دون الحاجة إلى إنشاء وظيفة Azure أو استخدام خدمات خارجية لفك تشفيرها. ومع ذلك ، إذا كنت بحاجة إلى التحقق من صحة الرمز المميز (تحقق من توقيعه) ، فقد تحتاج إلى استخدام خدمة خارجية أو وظيفة Azure مع مكتبة قادرة على التحقق من صحة JWT.

الاستشهادات:
[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://www.michev.info/blog/post/2140/decode-jwt-access-and-id-tokens-via-powershell
[6] https://supertokens.com/blog/revoking-access-with-a-jwt-lacklist
[7] https://techcommunity.microsoft.com/blog/azurevcommunityblog/part-4-secure-your-logic-app-using-api-management-8211-validate-jwt-access-restr/336802
[8] https://docs.azure.cn/en-us/logic-apps/logic-apps-securing-a-logic-app
[9]
[10]
[11] https://github.com/auth0/jwt-decode