Sobes.tech
Junior — Middle

Aký je účel a použitie JSON Web Tokens v systéme autorizácie?

sobes.tech AI

Odpoveď od AI

JSON Web Tokens (JWT) sa používajú na bezpečný prenos informácií medzi klientom a serverom v systémoch autorizácie. JWT obsahuje zakódovanú záťaž (payload) s údajmi používateľa a je podpísaný tajným kľúčom, čo umožňuje serveru overiť pravosť tokenu bez potreby uchovávať reláciu.

Hlavný účel JWT:

  • Autentifikácia: po úspešnom prihlásení používateľ dostane JWT, ktorý sa odosiela s každým požiadavkom na potvrdenie jeho identity.
  • Autorizácia: v tokenu môžu byť uložené práva prístupu, čo umožňuje serveru robiť rozhodnutia bez ďalšieho dopytu do databázy.

Príklad použitia:

POST /login
{
  "username": "user",
  "password": "pass"
}

Odpoveď:
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6..."
}

Následne klient odošle tento token v hlavičke Authorization:

GET /protected-resource
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6... 

Server overí podpis a extrahuje údaje z tokenu na rozhodnutie o prístupe.