Sí, puede usar una función personalizada para decodificar tokens JWT en aplicaciones de lógica de Azure. Sin embargo, Logic Apps no admite de forma nativa decodificar tokens JWT a través de acciones incorporadas. En su lugar, puede lograr esto utilizando una combinación de funciones de manipulación de cadenas de aplicaciones lógicas y posiblemente integrándose con funciones de Azure para operaciones más complejas.
Así es como puedes abordarlo:
1. Decodificación de división y base64: puede usar las funciones incorporadas de Logic Apps para dividir el token JWT por el '.' personaje y luego base64 decodificar cada parte. Esto le dará el encabezado y la carga útil como cadenas JSON. Puede usar la función `split 'para dividir el token en sus partes y luego aplicar` base64ToString` para decodificarlos [1] [3].
2. Pase JSON: después de decodificar la carga útil, puede usar la función 'JSON` para analizarla en un objeto JSON con el que puede trabajar en su aplicación lógica [1].
3. Función personalizada a través de funciones de Azure: si necesita un procesamiento o validación más avanzado del token JWT, considere crear una función Azure. Esta función puede manejar la lógica de decodificación y validación, y puede llamarla desde su aplicación lógica. Este enfoque es particularmente útil si necesita validar la firma del token o realizar otras operaciones complejas [5].
4. Aplicación lógica infantil: otra estrategia es crear una aplicación lógica infantil diseñada específicamente para analizar los tokens JWT. Esta aplicación infantil se puede reutilizar en múltiples aplicaciones lógicas, lo que facilita la administración y mantiene su flujo de trabajo [3].
Si bien usar una función personalizada o funciones de azul puede parecer un paso adicional, proporciona flexibilidad y escalabilidad para manejar tokens JWT en aplicaciones lógicas.
Citas:
[1] https://stackoverflow.com/questions/54257879/how-to-decode-a-jwt-token-in-azure-logic-app
[2] https://adevait.com/laravel/implementing-jwt-authentication-in-larave
[3] https://autosysops.com/blog/parse-jwt-tokens-in-azure-logic-apps
[4] https://www.criipto.com/blog/jwt-validation-guide
[5] https://www.reddit.com/r/azure/comments/u4alct/blog_parse_jwt_token_with_azure_logic_apps/
[6] https://auth0.com/blog/how-to-validate-jwt-dotnet/
[7] https://community.flutterflow.io/ask-the-community/post/custom-action-for-decoding-jwt-and-saving-info-in-shared-preferences-zvlf9rxdy02epbd
[8] https://hasura.io/blog/best-practices-of-using-jwt-with-graphql
[9] https://community.auth0.com/t/custom-client-side-custom-jwt-inputs/97936
[10] https://github.com/auth0/jwt-decode
[11] https://techcommunity.microsoft.com/blog/azuredevcomunityblog/part-4-secure-your-logic-app-using-api-management-8211-validate-jwt-access-restr/36802