Sobes.tech
Junior — Middle

JWT tokeninin həqiqətən etibarlı və aktiv olub olmadığını necə yoxlamaq olar?

sobes.tech Süni İntellekt

AI-dan cavab

JWT tokeninin etibarlılığını və fəaliyyətini yoxlamaq üçün bir neçə addım yerinə yetirilməlidir:

  1. İmza yoxlaması: Gizli açar (HMAC üçün) və ya açıq açar (RSA/ECDSA üçün) istifadə edərək, tokenin imzasının düzgün olduğunu və dəyişdirilmədiyini yoxlayın.

  2. Bitmə vaxtının yoxlanması: exp (bitmə vaxtı) və nbf (əvvəlki vaxt) sahələrini yoxlayın ki, token vaxtı keçməyib və artıq aktivdir.

  3. Digər iddiaların (claims) yoxlanması: Məsələn, iss (verən), aud (auditoriya) — tokenin sizin tətbiqiniz üçün nəzərdə tutulduğundan əmin olun.

Python-da PyJWT kitabxanası ilə nümunə:

import jwt
from jwt import ExpiredSignatureError, InvalidTokenError

gizli = 'sizin-gizli-anahtarınız'
token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...'

try:
    payload = jwt.decode(token, gizli, algorithms=['HS256'], audience='sizin-auditoriyanız')
    # Token etibarlı və aktivdir
    print('Yük:', payload)
except ExpiredSignatureError:
    print('Token vaxtı keçib')
except InvalidTokenError:
    print('Yanlış token')

Bu şəkildə, JWT-nin etibarlılığı imza və müddət yoxlamaları ilə müəyyən edilir, və fəaliyyət — tokenin cari vaxt limitlərinə uyğunluğu ilə təyin olunur.