JWT
Категория: Сигурност
Какво е JWT (JSON Web Token)?
JWT (JSON Web Token) е отворен стандарт (RFC 7519) за създаване на токени за достъп, които безопасно предават информация между две страни като JSON обект.
Структура на JWT
JWT се състои от три части, разделени с точки:
- Header - съдържа типа на токена и алгоритъма за криптиране
- Payload - съдържа claims (твърдения) - информацията, която се предава
- Signature - използва се за проверка на автентичността на токена
Как работи JWT?
- Потребител се удостоверява с credentials
- Сървърът генерира JWT и го изпраща на клиента
- Клиентът използва JWT за достъп до защитени ресурси
- Сървърът проверява валидността на JWT преди да върне данни
Предимства
- Без състояние (stateless) - сървърът не съхранява сесия
- Лесно преносим между различни домейни
- Подходящ за RESTful API и микроуслуги
- Поддържа различни алгоритми за подписване
Употреба
JWT се използва основно за:
- Удостоверяване (Authentication)
- Авторизация (Authorization)
- Обмен на информация между партньори