Sobes.tech
Junior — Middle

Jaký je účel a použití JSON Web Tokens v systému autorizace?

sobes.tech AI

Odpověď od AI

JSON Web Tokens (JWT) se používají k bezpečnému přenosu informací mezi klientem a serverem v systémech autorizace. JWT obsahuje zakódovanou nákladovou část (payload) s údaji uživatele a je podepsán tajným klíčem, což umožňuje serveru ověřit pravost tokenu bez nutnosti uchovávat relaci.

Hlavní účel JWT:

  • Autentizace: po úspěšném přihlášení obdrží uživatel JWT, který je odesílán s každým požadavkem k potvrzení jeho identity.
  • Autorizace: v tokenu mohou být uložena práva přístupu, což umožňuje serveru rozhodovat bez dodatečného dotazu do databáze.

Příklad použití:

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

Odpověď:
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6..."
}

Poté klient odešle tento token v hlavičce Authorization:

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

Server ověří podpis a extrahuje data z tokenu, aby rozhodl o přístupu.