5.7.4. Структура JSON веб-токена

5.7.4.1. JSON веб-токен (JWT) - токен доступа, основанный на формате JSON. По существу JWT - это набор параметров (claims) в формате JSON-объекта, закодированных в виде структуры JWS или JWE с цифровой подписью, кодом аутентификации и/или шифрованием.

Имена зарегистрированных параметров JWT:

- <iss>: (опциональный) идентификатор эмитента JWT (сервера авторизации, выдавшего его);

- <sub>: (опциональный) идентификатор субъекта JWT;

- <aud>: (опциональный) перечень идентификаторов получателей, которым предназначен JWT;

- <exp>: (опциональный) время завершения срока действия JWT в секундах;

- <nbf>: (опциональный) время, до которого JWT не должен приниматься к обработке;

- <iat>: (опциональный) время выпуска JWT;

- <jti>: (опциональный) идентификатор JWT.

Эти параметры JWT помещаются в компоненте JWS Payload или в зашифрованном виде - в содержимое JWE Ciphertext.

5.7.4.2. JWT может быть либо подписан, либо подписан и зашифрован. Если JWT подписан и зашифрован, JSON-документ будет подписан, затем зашифрован, а результатом будет структура вложенного JWT - Nested JWT.

5.7.4.3. В JOSE-заголовке JWT независимо от типа (JWS или JWE) используются два параметра: <typ> (рекомендуется использовать строку "JWT") и <cty> (при наличии вложенной подписи или шифрования его значением должна быть строка "JWT").

Примечание. Дополнительные сведения по структурам JWT и Nested JWT приведены в RFC 7519 [12].