Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Làm cách nào để lấy và giải mã mã thông báo JWT trong ứng dụng logic


Làm cách nào để lấy và giải mã mã thông báo JWT trong ứng dụng logic


Để truy xuất và giải mã mã thông báo JWT trong ứng dụng logic, bạn có thể làm theo các bước sau:

1. Lấy mã thông báo JWT: Đầu tiên, bạn cần phải lấy mã thông báo JWT. Điều này có thể được thực hiện bằng cách phân tích các tiêu đề của một yêu cầu đến. Nếu mã thông báo được gửi trong tiêu đề `ủy quyền ', bạn có thể trích xuất nó bằng hành động` parse json` với lược đồ nắm bắt khóa `ủy quyền'. Sau đó, tạo một biến để chỉ giữ phần mã thông báo (ví dụ: sau "người mang") [10].

2. Giải mã mã thông báo JWT: Mã thông báo JWT được mã hóa cơ sở644URL. Bạn có thể giải mã phần tải trọng của mã thông báo bằng các hàm `split` và` base64toString` trong các ứng dụng logic. Chia mã thông báo cho "." phân tách để cô lập tải trọng. Sau đó, nối "=" để đảm bảo độ dài là bội số của 4 cho giải mã base64. Các ứng dụng logic sẽ ngầm chuyển đổi điều này thành chuỗi base64, sau đó bạn có thể giải mã bằng cách sử dụng `base64toString` [1] [3].

3. Phân tích tải trọng được giải mã: Sau khi giải mã tải trọng, bạn sẽ có chuỗi JSON. Sử dụng hành động `parse json` khác để chuyển đổi chuỗi này thành đối tượng JSON mà bạn có thể làm việc trong ứng dụng logic của mình. Bạn có thể xác định một lược đồ cho đối tượng JSON này dựa trên các yêu cầu dự kiến ​​trong mã thông báo JWT [3].

4. Trích xuất khiếu nại: Khi JSON được phân tích cú pháp, bạn có thể trích xuất các khiếu nại cụ thể (như ID người dùng hoặc email) và sử dụng chúng khi cần thiết trong quy trình làm việc của ứng dụng logic.

Cách tiếp cận này cho phép bạn giải mã và sử dụng mã thông báo JWT trực tiếp trong các ứng dụng logic Azure mà không cần phải tạo chức năng Azure hoặc sử dụng các dịch vụ bên ngoài để giải mã. Tuy nhiên, nếu bạn cần xác thực mã thông báo (kiểm tra chữ ký của nó), bạn có thể cần sử dụng dịch vụ bên ngoài hoặc chức năng Azure với thư viện có khả năng xác thực JWT.

Trích dẫn:
[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-blacklist
[7] https://techcommunity.microsoft.com/blog/azuredevcommunityblog/part-4-secure-your-logic-app-using-api-management-8211-validate-jwt-access-restr/336802
[8] https://docs.azure
.
.
[11] https://github.com/auth0/jwt-decode