Cookies vs tokens на собеседовании системного аналитика
Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.
Содержание:
Cookie sessions
Server stores session data. Cookie — opaque session ID.
Login: server creates session, returns Set-Cookie: session_id=abc123.
Subsequent requests: cookie sent automatically by browser.
Server: lookup session_id → user.Pros:
- Server can revoke (delete session).
- Session data в storage (Redis), не client.
- HttpOnly + Secure + SameSite — strong defaults.
Cons:
- Server-side state — harder scale.
- Need session storage (Redis cluster).
- Cookie сообщение CSRF (mitigate с SameSite).
JWT tokens
Self-contained signed token. Stateless.
Login: server returns JWT.
Subsequent: client sends в Authorization header.
Server: verify signature → extract claims (user_id, roles).Pros:
- Stateless — easy scale.
- Cross-domain (mobile + web).
- Embedded claims — no DB lookup.
Cons:
- Cannot revoke (until expiry).
- Bigger чем cookie (1KB+).
- Storage (where keep token client-side?).
Comparison
| Cookies + sessions | JWT | |
|---|---|---|
| Stateless | No | Yes |
| Revocation | Easy | Hard |
| Cross-domain | Hard | Easy |
| Size | Small (ID) | Larger |
| Stuff в client | No | Yes (claims) |
| Mobile | Awkward | Native |
| Web (browser) | Native | Possible |
Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Hybrid
Most modern apps:
- Web — cookie с session ID.
- Mobile — JWT.
- API third-party — OAuth tokens.
Sessions для interactive web (CSRF protection, easy revoke). JWT для APIs / mobile.
Связанные темы
- JWT для SA
- JWT pitfalls для SA
- OAuth 2.1 flows для SA
- Auth vs authz для SA
- Подготовка к собесу системного аналитика
FAQ
Это официальная информация?
Нет. Статья основана на OWASP Authentication Cheat Sheet.
Тренируйте системный анализ — откройте тренажёр с 1500+ вопросами для собесов.