Какие методы авторизации используются в API, включая Bearer Token и Basic Auth?

Basic Auth: логин и пароль передаются в заголовке в формате Base64. Метод прост, однако без HTTPS он небезопасен Bearer Token: токен доступа, обычно JWT, отправляется в заголовке Authorization. Пароль при этом не…

Короткий ответ

Что ответить на собеседовании

Basic Auth: логин и пароль передаются в заголовке в формате Base64. Метод прост, однако без HTTPS он небезопасен Bearer Token: токен доступа, обычно JWT, отправляется в заголовке Authorization. Пароль при этом не передается, что повышает безопасность API Key: уникальный ключ, который обычно указывают в заголовке или параметрах URL. Решение удобно, но чувствительно к перехвату OAuth 2.0: протокол авторизации, использующий access и refresh tokens, поддерживающий делегирование прав и разделение доступа Digest Auth: учетные данные защищаются с помощью хеширования. Метод сложнее Basic Auth и применяется реже HMAC: запрос подписывается секретным…

Подробный разбор

Ответ с пояснениями

Методы авторизации в API

  • Basic Auth: логин и пароль передаются в заголовке в формате Base64. Метод прост, однако без HTTPS он небезопасен
  • Bearer Token: токен доступа, обычно JWT, отправляется в заголовке Authorization. Пароль при этом не передается, что повышает безопасность
  • API Key: уникальный ключ, который обычно указывают в заголовке или параметрах URL. Решение удобно, но чувствительно к перехвату
  • OAuth 2.0: протокол авторизации, использующий access и refresh tokens, поддерживающий делегирование прав и разделение доступа
  • Digest Auth: учетные данные защищаются с помощью хеширования. Метод сложнее Basic Auth и применяется реже
  • HMAC: запрос подписывается секретным ключом, благодаря чему обеспечиваются целостность и аутентичность данных
  • При выборе следует учитывать безопасность, простоту реализации и требования проекта

При необходимости могу подготовить короткую формулировку для быстрого ответа на интервью.

Подробный ответ

Основной ответ

Для авторизации в API применяют несколько стандартных подходов. Наиболее распространенные из них — Bearer Token и Basic Auth. Авторизация нужна, чтобы подтвердить личность клиента, открыть ему доступ к необходимым ресурсам и предотвратить несанкционированное использование API.

Ключевые моменты

  • При использовании Basic Authentication клиент отправляет в HTTP-заголовке логин и пароль, предварительно закодированные в Base64. Такой вариант удобен для быстрого тестирования, однако без HTTPS он небезопасен, поскольку данные можно относительно легко перехватить.
  • При схеме Bearer Token в заголовке Authorization передается токен доступа, например JWT или OAuth 2.0 access token. Это помогает разделить аутентификацию и авторизацию, контролировать срок действия токена и масштабировать систему безопасности.
  • Также широко применяется OAuth 2.0 — протокол авторизации с несколькими потоками (grant types), который поддерживает делегирование доступа, refresh tokens и scopes.
  • Другой распространенный вариант — API Key: клиенту выдается уникальный ключ, который затем передается в заголовке либо в параметрах запроса.
  • В современных системах часто используют JWT-токены (JSON Web Tokens). Они позволяют хранить закодированные сведения о пользователе непосредственно внутри токена, ускоряя его валидацию и снижая нагрузку на сервер.

Практический контекст

В действующих проектах для внутренних API нередко достаточно Basic Auth вместе с HTTPS. Для публичных сервисов обычно выбирают Bearer Token на базе OAuth 2.0 с JWT: такой подход дает гибкое управление правами, поддерживает автоматическое обновление токенов и позволяет безопасно масштабировать систему. Например, сервисы Google и GitHub в своих REST API используют OAuth 2.0 с Bearer Token.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку