Bộ giải mã JWT

Mã thông báo Web JSON là ba phân đoạn Base64url: header.payload.signature. Dán JWT để đọc thuật toán (alg), nhà phát hành (iss), chủ đề (phụ) và hết hạn (exp) mà không gửi mã thông báo đến máy chủ.

Cách giải mã JWT

1. Dán chuỗi JWT (định dạng eyJ...).
2. Đọc JSON tiêu đề đã giải mã (typ, alg).
3. Đọc xác nhận tải trọng (phụ, điểm kinh nghiệm, vai trò).
4. Kiểm tra điểm kinh nghiệm so với hiện tại thời gian — mã thông báo hết hạn không xác thực được API.

Ví dụ về kiểm tra JWT

Gỡ lỗi 401 trái phép

Giải mã mã thông báo truy cập — exp có thể là trong quá khứ do đồng hồ lệch hoặc TTL ngắn.

Kiểm tra OAuth id_token

Xem các xác nhận quyền sở hữu email và tên được trả về từ nhà cung cấp danh tính.

Xem lại kiểm tra lịch thi đấu

Xác nhận mã thông báo kiểm tra HS256 có vai trò:xác nhận quyền sở hữu của quản trị viên trước khi kiểm tra tích hợp.

Khi nào nên giải mã JWT

• Khi gỡ lỗi xác thực trong quá trình phát triển bằng mã thông báo kiểm tra.
• Khi tìm hiểu cấu trúc JWT và các xác nhận quyền sở hữu tiêu chuẩn.
• Khi xác minh tải trọng trước khi triển khai kiểm tra RBAC.

Xác nhận quyền sở hữu đã đăng ký tiêu chuẩn

iss (nhà phát hành), sub (chủ đề), aud (đối tượng), exp (hết hạn), nbf (không phải trước đó), iat (phát hành tại), jti (JWT ID). Các xác nhận quyền sở hữu tùy chỉnh như vai trò hoặc ID đối tượng thuê là dành riêng cho từng ứng dụng.

Câu hỏi thường gặp

Ba phần JWT là gì?

Tiêu đề (thuật toán & loại), tải trọng (xác nhận quyền sở hữu), chữ ký (xác minh). Được phân tách bằng dấu chấm.

Việc giải mã có xác thực mã thông báo không?

Không — bất kỳ ai cũng có thể giải mã tải trọng; chữ ký chứng minh tính toàn vẹn và nhà phát hành.

Xác nhận điểm kinh nghiệm là gì?

Dấu thời gian Unix giây khi mã thông báo hết hạn. So sánh với thời gian UTC hiện tại.

Không có thuật toán tấn công nào?

Máy chủ phải từ chối alg:none — bộ giải mã vẫn có thể hiển thị tiêu đề để kiểm tra.

Dữ liệu nhạy cảm trong tải trọng?

Tải trọng JWT là Base64 không được mã hóa — không bao giờ đặt mật khẩu hoặc PII một cách không cần thiết.