Встречается на собеседованиях • сегодня

Как работают разные способы аутентификации

Cookie-based аутентификация

Сервер создает сессию и отправляет cookie с session ID клиенту. При каждом запросе браузер автоматически отправляет cookie. Пример:

js
// Установка cookie на сервере (Express)
res.cookie('sessionId', 'abc123', { httpOnly: true });

Token-based (JWT)

Сервер генерирует подписанный токен после успешного входа. Клиент хранит токен (обычно в localStorage) и добавляет в заголовки:

js
fetch('/api/data', {
  headers: {
    'Authorization': `Bearer ${token}`
  }
});

OAuth/OpenID Connect

Использует стороннего провайдера (Google, GitHub). После подтверждения получаем access token:

js
// Редирект на провайдера
window.location = 'https://provider.com/auth?client_id=YOUR_ID';

Основные различия:

  • Cookies защищены от XSS (httpOnly), но уязвимы к CSRF
  • JWT уязвимы к XSS, но не требуют сессий на сервере
  • OAuth делегирует аутентификацию третьей стороне
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы