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.

См. также: двухфакторный вход