EMZETT.
Увійти

Bearer-токен і автентифікація API

Коротко: Bearer-токен — ключ доступу, який клієнт надсилає в заголовку кожного запиту до API: Authorization: Bearer <token>. Хто володіє токеном («bearer» = пред’явник), той отримує доступ.

Докладніше: Токен видається після входу. Сервер під час кожного запиту перевіряє його чинність і так знає, хто звертається, не передаючи щоразу пароль і сесію.

Подробиці

  • Види: Випадкові непрозорі рядки, які сервер шукає, або самодостатні токени на кшталт JWT, що містять дані та підпис.
  • OAuth: Токен доступу (OAuth 2.0) — зазвичай короткоживучий bearer-токен, доповнюваний токеном оновлення (refresh), за допомогою якого отримують новий.
  • Ризик: Будь-хто, хто має токен, може ним користуватися. Тому надсилати лише через HTTPS, короткий термін дії, обмежувати права (scopes), не писати в URL і журнали.
  • Зберігання в браузері: localStorage можна прочитати через XSS, cookie з HttpOnly — ні (але потрібен захист від CSRF). Див. XSS і CSRF.
  • Відкликання: Непрозорі токени можна блокувати на боці сервера. Чисті JWT діють до закінчення терміну, якщо не вести список відкликаних.
  • Альтернативи: Ключі API (довгоживучі, для серверів), сесійні cookie (для сторінок у браузері), mTLS.

Див. також: двофакторний вхід