Веб основи
Вхід
Веб основи/Автентифікація і сесії
Тема 8

🔑 Автентифікація і сесії

Логін, сесії й токени: як сайт упізнає тебе

Як сайт упізнає тебе

HTTP не пам'ятає попередніх запитів - кожен приходить «з чистого аркуша». Тож після входу сайту треба якось розуміти, що це знову ти. Для цього є два підходи.

Сесія через куку

  1. Ти вводиш логін і пароль - сервер перевіряє їх (це автентифікація)
  2. Якщо все добре, сервер створює сесію і дає тобі сесійну куку (напр. session=abc123)
  3. Браузер шле цю куку з кожним запитом - так сервер знає, що ти залогінений

Токени й JWT

Замість сесії на сервері часто видають токен - рядок, який ти носиш сам і додаєш до запитів. Популярний формат - JWT: три частини через крапку, header.payload.signature:

Тобто payload читається будь-ким (це не шифрування, а кодування), але підпис заважає його підробити - якщо сервер усе перевіряє правильно. Коли перевіряє неправильно - починаються цікаві речі.

Спробуй

У симуляторі пройди вхід (отримаєш сесійну куку), а тоді розклади JWT на три частини й прочитай, що в payload.

Симулятор

Перевір себе