Sobes.tech
Junior — Middle

Qual è lo scopo e l'uso dei JSON Web Tokens nel sistema di autorizzazione?

sobes.tech AI

Risposta dell'AI

I JSON Web Tokens (JWT) vengono utilizzati per trasmettere in modo sicuro le informazioni tra client e server nei sistemi di autorizzazione. Un JWT contiene un payload codificato con i dati dell'utente e viene firmato con una chiave segreta, consentendo al server di verificare l'autenticità del token senza dover mantenere una sessione.

Scopo principale del JWT:

  • Autenticazione: dopo un login riuscito, l'utente riceve un JWT, che viene inviato con ogni richiesta per confermare la sua identità.
  • Autorizzazione: nel token possono essere memorizzati i diritti di accesso, permettendo al server di prendere decisioni senza ulteriori query al database.

Esempio di utilizzo:

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

Risposta:
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6..."
}

Successivamente, il client invia questo token nell'intestazione Authorization:

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

Il server verifica la firma e estrae i dati dal token per prendere decisioni di accesso.