Cách kiểm tra mã thông báo jwt đã hết hạn hay chưa trực tuyến

Mã thông báo web JSON là một phương thức truyền hoặc trao đổi dữ liệu hiệu quả, được bảo mật cũng như được sử dụng nhiều nhất trên internet. Nói chung, nó được sử dụng để xác thực và ủy quyền trong các ứng dụng. Quy trình xác thực là chúng tôi tạo mã thông báo tại máy chủ và gửi lại cho khách hàng được sử dụng cho các yêu cầu tiếp theo trên máy chủ. Bây giờ, điểm thảo luận là mã thông báo jwt này sẽ có hiệu lực trong bao lâu? . Trước tiên hãy hiểu cách tạo mã thông báo JWT

Phương thức sign() của thư viện jsonwebtoken được sử dụng để tạo mã thông báo chấp nhận thông tin nhất định làm đối tượng tham số và trả về mã thông báo đã tạo.  

cú pháp

jwt.sign(payload, secretOrPrivateKey, [options, callback])

Thông số

  • khối hàng. Đó là thông tin được mã hóa trong mã thông báo
  • chìa khoá bí mật. Đó là chữ ký hoặc có thể nói một mã được sử dụng để xác định tính xác thực của mã thông báo
  • tùy chọn. Trong tùy chọn, chúng tôi chuyển một số thông tin nhất định về mã thông báo và đó là nơi chúng tôi cung cấp thời hạn của mã thông báo mà nó sẽ có hiệu lực

loại trả lại. Phương thức này sẽ trả về mã thông báo JWT

Ví dụ. Tạo mã thông báo hết hạn trong 10 phút

Bước 1. Tạo một dự án nút

Vì chúng tôi đang làm việc trên một thư viện nút, đây là bước bắt buộc để tạo dự án nút, hãy viết npm init trong thiết bị đầu cuối. Nó sẽ yêu cầu một vài cấu hình về dự án của bạn, điều này cực kỳ dễ cung cấp

npm init

Bước 2. Cài đặt gói “jsonwebtoken”

Trước khi viết mã JWT, chúng ta phải cài đặt gói,

npm install jsonwebtoken

Đây sẽ là cấu trúc dự án của chúng tôi sau khi cài đặt trong đó node_modules chứa các mô-đun và gói. json lưu trữ mô tả của dự án. Ngoài ra, chúng tôi đã tạo một ứng dụng. js để viết toàn bộ mã.  

Cấu trúc dự án

Cách kiểm tra mã thông báo jwt đã hết hạn hay chưa trực tuyến

Bước 3. Tạo mã thông báo JWT với thời gian hết hạn xác định

Có hai phương pháp đăng ký hết hạn mã thông báo, cả hai đều được hiển thị bên dưới kèm theo lời giải thích.  

  • Tạo biểu thức về thời gian hết hạn
  • Cung cấp thời gian hết hạn của mã thông báo JWT trong đối số tùy chọn của phương thức

Cách tiếp cận 1. Tồn tại một điểm kinh nghiệm chính trong đó chúng tôi có thể cung cấp số giây kể từ kỷ nguyên và mã thông báo sẽ có hiệu lực cho đến những giây đó

Javascript




// Importing module

const jwt = require('jsonwebtoken');

const token = jwt.sign({

 

    // Expression for initialising expiry time

    

npm init
1

    

npm init
3_______1_______4

npm init
5_______1_______6);

npm init
8
npm init
9
npm install jsonwebtoken
0

npm install jsonwebtoken
1

npm install jsonwebtoken
2
npm install jsonwebtoken
3

npm install jsonwebtoken
2
npm install jsonwebtoken
5

 

npm install jsonwebtoken
6

npm install jsonwebtoken
7

đầu ra

Cách kiểm tra mã thông báo jwt đã hết hạn hay chưa trực tuyến

Cách tiếp cận 2. Trong phương pháp này, chúng ta có thể chuyển thời gian để hết hạnTrong khóa trong các tùy chọn, nó yêu cầu số giây cho đến khi mã thông báo vẫn hợp lệ hoặc chuỗi thời lượng là '1h',  '2h', '10m', v.v.

Javascript




// Importing module

const jwt = require('jsonwebtoken');

const token = jwt.sign({

 

    // Importing module4

    

npm init
3_______1_______4

npm init
5_______1_______6const jwt = require(0

    const jwt = require(2const jwt = require(3

const jwt = require(4

npm init
8
npm init
9
npm install jsonwebtoken
0

npm install jsonwebtoken
1

npm install jsonwebtoken
2
npm install jsonwebtoken
3

npm install jsonwebtoken
2
npm install jsonwebtoken
5

'jsonwebtoken'3

npm install jsonwebtoken
7

đầu ra

Cách kiểm tra mã thông báo jwt đã hết hạn hay chưa trực tuyến

Bước 4. Xác minh mã thông báo về thời hạn hết hạn

Chúng tôi đã tạo mã thông báo thành công, bây giờ là lúc để xác minh xem mã có hoạt động theo cách dự định hay không.  

Javascript




'jsonwebtoken'5

const jwt = require('jsonwebtoken');

'jsonwebtoken'9

);0

);1

 

npm init
8
npm init
9
npm install jsonwebtoken
0

);5

);6_______1_______6);8);9const token = jwt.sign({0

    const token = jwt.sign({2 const token = jwt.sign({3

const token = jwt.sign({4const token = jwt.sign({5

const token = jwt.sign({6_______2_______5

const token = jwt.sign({4const token = jwt.sign({9

        1

        3     4

const token = jwt.sign({4const token = jwt.sign({5

const token = jwt.sign({6_______2_______5

const token = jwt.sign({4// Expression for initialising expiry time0// Expression for initialising expiry time1);

        1

const jwt = require(4

trước 10 phút

Đầu ra 1. Ở đây chúng tôi đang kiểm tra trước 10 phút tạo mã thông báo, như dự kiến, khối mã khác sẽ hoạt động

Cách kiểm tra mã thông báo jwt đã hết hạn hay chưa trực tuyến

Sau 10 phút

Đầu ra 2. Ở đây chúng tôi đang kiểm tra khi mã thông báo hết hạn, TokenExpirationError sẽ được đưa ra trong trường hợp này.  

Cách kiểm tra mã thông báo jwt đã hết hạn hay chưa trực tuyến

Phần kết luận. Sau khi xem hai kết quả đầu ra này và phương pháp tạo mã thông báo, chúng ta có thể phân tích xem thời hạn của mã thông báo được khai báo như thế nào và thời hạn hiệu lực của mã thông báo đó là bao lâu

Làm cách nào để kiểm tra trực tuyến mã thông báo JWT của tôi?

Để xác minh chữ ký của mã thông báo JWT .
Giải mã mã thông báo ID. Bạn có thể sử dụng AWS Lambda để giải mã nhóm người dùng JWT. .
Sử dụng thư viện JWT, chẳng hạn như thư viện aws-jwt-verify trên GitHub, để so sánh chữ ký của tổ chức phát hành với chữ ký trong mã thông báo

Mã thông báo JWT có hết hạn không?

Mã thông báo truy cập JWT chỉ có hiệu lực trong một khoảng thời gian hữu hạn . Sử dụng JWT đã hết hạn sẽ khiến các thao tác không thành công. Như bạn đã thấy ở trên, chúng tôi được cho biết mã thông báo có hiệu lực trong bao lâu cho đến hết expires_in. Giá trị này thường là 1200 giây hoặc 20 phút.

Mã trạng thái cho mã thông báo JWT đã hết hạn là gì?

Đôi khi, chúng tôi có thể nhận được thông báo từ CloudLinux về việc mã thông báo JWT bị thiếu hoặc hết hạn