Что такое JSON веб-токен?
JSON веб-токен (JWT) - это открытый стандарт, который определяет удобный способ передачи информации в виде JSON-объекта. Веб-токены часто используется для аутентификации и авторизации. В данной статье мы рассмотрим некоторые базовые концепции JWT, включая утверждения, субъект, эмитент, метаданные, ключ шифрования и URN.
Требования (Claims)
Утверждения (Claims) представляют собой набор пар ключ-значение, которые закодированы в JWT. Утверждения содержат информацию о субъекте токена, такую как его имя, адрес электронной почты или любую другаю информацию, которая может быть необходима. В JWT существует три типа утверждений: предопределенные, публичные и частные. Педопределенные утверждения установлены стандартом и имеют конкретные значения. К ним относятся такие утверждения, как "iss" (эмитент) или претензия "sub" (субъект). Публичные утверждения - это пользовательские утверждения, которые используются для хранения дополнительной информации о субъектt. Частные утверждения используются для обмена информацией между сторонами, которые договорились о значении конкретного утверждения.
Предмет (Subject)
Утверждение Subject (или "sub") идентифицирует сущность, который является субъектом токена. Это может быть пользователь, приложение или любая другая сущность, которая находится в центре внимания токена. Утверждение Subject является предопределенным утверждением и используется для идентификации получателя токена.
Эмитент (Issuer)
Утверждение эмитента (или "iss") идентифицирует организацию, выпустившую данный веб-токен. Это утверждение используется для указания источника токена и для проверки того, что эмитенту можно доверять.
Метаданные (Metadata)
Метаданные - это информация, которая предоставляет дополнительный контекст (информацию) о токене. Метаданные могут включать информацию об аудитории, времени истечения срока действия и любую другую информацию, необходимую для защиты токена. Метаданные кодируются как дополнительные утверждения в рамках JWT.
Ключ шифрования (Encryption Key)
Веб-токены могут быть зашифрованы с использованием секретного ключа для защиты информации, содержащейся в токене. Достигается это с помощью алгоритма симметричного шифрования, такого как AES, а зашифрованный JWT известен как JWE (JSON веб-шифрование). Ключ шифрования используется для шифрования и дешифровки JWT, поэтому он должен храниться в секрете для обеспечения безопасности информации.
Универсальное название ресурса (URN)
Универсальное название ресурса (URN) - это строка, которая используется для идентификации ресурсов, таких как JWT-утверждения, способом, независимым от их местоположения. URN-ы используются в JWT для идентификации конкретных утверждений и обеспечения их надлежащей обработки.
Таким образом, JWT - это компактный и автономный способ передачи информации между сторонами обмена в виде JSON-объекта.
-
- Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.