Mục lục:

Làm cách nào để mã thông báo JWT hết hạn?
Làm cách nào để mã thông báo JWT hết hạn?

Video: Làm cách nào để mã thông báo JWT hết hạn?

Video: Làm cách nào để mã thông báo JWT hết hạn?
Video: Auth: 03 - JWT là gì và những điều cần biết 🎉 2024, Có thể
Anonim

MỘT Mã thông báo JWT không bao giờ hết hạn là nguy hiểm nếu mã thông báo bị đánh cắp sau đó ai đó có thể luôn truy cập vào dữ liệu của người dùng. Trích dẫn từ JWT RFC: Vì vậy, câu trả lời là hiển nhiên, hãy đặt hết hạn ngày trong yêu cầu điểm kinh nghiệm và từ chối mã thông báo ở phía máy chủ nếu ngày trong yêu cầu exp trước ngày hiện tại.

Tương ứng, mã thông báo JWT sẽ tồn tại trong bao lâu?

15 phút

Ngoài phần trên, bạn lưu trữ mã thông báo JWT như thế nào? MỘT JWT cần được lưu trữ ở một nơi an toàn bên trong trình duyệt của người dùng. nếu bạn cửa hàng nó bên trong localStorage, nó có thể truy cập được bằng bất kỳ tập lệnh nào bên trong trang của bạn (điều này thật tệ, vì một cuộc tấn công XSS có thể cho phép kẻ tấn công bên ngoài có quyền truy cập vào mã thông báo ). Đừng cửa hàng nó ở địa phương kho (hoặc phiên kho ).

Ngoài phần trên, làm cách nào để buộc mã thông báo JWT hết hạn?

Buộc hết hạn JWT bằng mã làm mới

  1. Kiểm tra sự hiện diện của mã thông báo trong tiêu đề của yêu cầu.
  2. Kiểm tra xem mã thông báo có phải là JWT hợp lệ, được ký chính xác và chưa hết hạn hay không.
  3. Kiểm tra người dùng tồn tại từ thuộc tính uid của tải trọng.
  4. Kiểm tra mã thông báo làm mới đang phát hành vẫn tồn tại từ thuộc tính rid.

Sự khác biệt giữa mã thông báo truy cập và làm mới là gì?

Các sự khác biệt giữa Một làm mới mã thông báo và một truy cập thẻ là khán giả: làm mới mã thông báo chỉ quay lại máy chủ ủy quyền, truy cập thẻ chuyển đến máy chủ tài nguyên (RS). Làm mới NS truy cập thẻ sẽ cho bạn truy cập đối với một API thay mặt người dùng, nó sẽ không cho bạn biết liệu người dùng có ở đó hay không.

Đề xuất: