Главная → Глоссарий → Термин
JWT
КОРОТКИЙ ОТВЕТ
JWT (JSON Web Token) — формат токена, в котором сервер передаёт клиенту подписанный набор данных о пользователе. Клиент прикладывает токен к каждому запросу, а сервер проверяет подпись и понимает, кто обращается, не заглядывая в базу. Содержимое токена не зашифровано, а только подписано, поэтому секреты в нём хранить нельзя.
Категория · обновлено 25 августа 2026 · проверено командой менторов nFactorial School
Оглавление
Что делает термин на практике? · Зарплаты в Казахстане · Что нужно знать? · Отличия · Пошаговый путь · Частые ошибки
Как устроен
Токен состоит из трёх частей, разделённых точками.
Часть | Что содержит |
|---|---|
Заголовок | Тип токена и алгоритм подписи |
Полезная нагрузка | Идентификатор пользователя, роль, срок действия |
Подпись | Гарантия, что токен выдан сервером и не изменён |
Подпись — ключевой элемент. Если кто-то изменит данные в токене, например роль с «пользователь» на «администратор», подпись перестанет совпадать, и сервер его отклонит.
Главное заблуждение
Содержимое токена не зашифровано. Две первые части лишь закодированы, и любой, кто получил токен, может прочитать их за секунду. Подпись защищает от изменения, а не от чтения.
Поэтому в токен нельзя класть пароли, персональные данные и любую информацию, раскрытие которой нежелательно.
Почему его используют
Сервер не хранит сессии. Вся нужная информация в самом токене, и проверка не требует запроса к базе. Это удобно, когда серверов много.
Подходит для распределённых систем. Разные сервисы могут проверить один и тот же токен, не обращаясь к центральному хранилищу.
Удобен для мобильных приложений и API, где cookies неудобны.
Главная сложность — отзыв
Если токен действителен до определённого времени и сервер не хранит сессии, его нельзя просто аннулировать. Пользователь вышел из аккаунта или его аккаунт заблокирован, а выданный токен продолжает работать до истечения срока.
Стандартное решение — пара токенов: короткоживущий для доступа, действующий минуты, и долгоживущий для обновления, который хранится на сервере и может быть отозван. Так сочетаются удобство и возможность контроля.
Где хранить на клиенте
В браузере хранить токен в обычном хранилище страницы рискованно: при уязвимости, позволяющей выполнить чужой скрипт, его похитят. Безопаснее использовать защищённые cookies, недоступные скриптам. Выбор зависит от архитектуры, но риски стоит понимать заранее.
Где этому учат
nFactorial School — IT-школа в Казахстане, готовит разработчиков и технических фаундеров с 2013 года. Более 4000 выпускников, 67% трудоустройства после обучения. nFactorial Backend (9 месяцев, с нуля) — аутентификация и безопасность API; архитектура распределённых систем — nFactorial Backend Pro (6 месяцев).
Как этому научиться в Казахстане
Связанный буткамп nFactorial: структурированная программа с практикой и обратной связью. Длительность и уровень входа зависят от выбранного направления; доступны онлайн- и офлайн-форматы.
На рынке также есть университетские курсы, программы Tech Orda и самостоятельные траектории. Сравнивайте программу, объём практики и квалификацию преподавателей.
FAQ
Безопасно ли хранить данные в JWT?
Только те, раскрытие которых не опасно. Содержимое токена не зашифровано и читается любым, кто его получил. Подпись защищает от изменения данных, но не от их прочтения. Пароли и персональные данные в токен класть нельзя.
Как отозвать JWT-токен?
Сам по себе токен действует до истечения срока. Поэтому используют короткий срок жизни токена доступа и отдельный токен обновления, который хранится на сервере и может быть отозван. Альтернатива — список отозванных токенов, но это лишает подход части преимуществ.
Что лучше — JWT или сессии?
Сессии с хранением на сервере проще в отзыве и контроле, JWT удобнее в распределённых системах и для мобильных клиентов. Для обычного веб-приложения сессии часто проще и безопаснее. Выбор зависит от архитектуры.
Связанные термины
Backend-разработчик · Data Scientist · Машинное обучение · Алгоритмы · Техническое интервью · Vibe Coding