Sobes.tech
Back to questions
Junior — Middle
73

Каково назначение и использование JSON Web Tokens в системе авторизации?

Companies where asked
Т-БанкТ-Банк

Answer from AI

sobes.tech AI

JSON Web Tokens (JWT) используются для безопасной передачи информации между клиентом и сервером в системах авторизации. JWT содержит закодированную полезную нагрузку (payload) с данными пользователя и подписан секретным ключом, что позволяет серверу проверять подлинность токена без необходимости хранить сессию.

Основное назначение JWT:

  • Аутентификация: после успешного входа пользователь получает JWT, который отправляется с каждым запросом для подтверждения его личности.
  • Авторизация: в токене могут храниться права доступа, что позволяет серверу принимать решения без дополнительного запроса к базе.

Пример использования:

POST /login
{
  "username": "user",
  "password": "pass"
}

Ответ:
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6..."
}

Далее клиент отправляет этот токен в заголовке Authorization:

GET /protected-resource
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6... 

Сервер проверяет подпись и извлекает данные из токена для принятия решения о доступе.