我正在尝试了解JWT令牌的使用情况,但我对理论部分感到迷茫。
我对JWT Tokens结构有一些疑问,为了让这个问题成为新用户的一种文档,为它提供一个逻辑顺序,我会在下面用粗体编写它们我列出了一个JWT示例内容。
我也将在问题的最后总结它们
“经典”JWT令牌的组成如下:
[HEADER]。[PAYLOAD]。[签名]
详细说明:
标题
{
"alg": "HS256",
"typ": "JWT"
}
其中包含以下字段:
PAYLOAD
{
"sub": "1234567890",
"name": "MrJohnDoe",
"iat": 1516239022
}
SIGNATURE
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
secret
)
答案 0 :(得分:4)
什么是
sub
?能否请您举例说明常见用途?
sub
声明标识了作为JWT主题的主体。在其他方面,它可以保存您向其颁发令牌的用户的用户名。
来自RFC 7519:
sub
(主题)声明标识了作为主体的主体 JWT的主题。 JWT中的声明通常是声明 关于这个问题。主题值必须是作用域 在发行人的背景下本地独特或全球独特。 该权利要求的处理通常是特定于应用的。该sub
值是包含StringOrURI的区分大小写的字符串 值。使用此声明是可选的。