JWT(JSON Web Token)
JWT(JSON Web Token) 是什么?
JWT(JSON Web Token)紧凑、URL 安全的令牌格式(RFC 7519),携带带签名的 JSON 声明,广泛用作访问令牌、ID 令牌和会话载体。
JSON Web Token 是由三段 Base64URL 编码、点号连接的字符串:头部、载荷和签名。头部声明签名算法;载荷携带 iss、sub、aud、exp 等标准声明以及自定义数据;签名让接收方校验完整性与来源。JWT 可以被签名(JWS)或加密(JWE),是 OAuth 2.0、OpenID Connect 以及服务间认证的核心。无状态特性便于水平扩展,但难以撤销。务必在服务端固定算法,校验 aud、iss 和 exp,采用较短有效期,并与 refresh token 或令牌内省机制配合。
● 示例
- 01
由 RS256 签名并返回给单页应用的 OIDC ID 令牌。
- 02
包含 { "sub": "u123", "scope": "read:profile", "exp": 1734567890 } 的访问令牌。
● 常见问题
JWT(JSON Web Token) 是什么?
紧凑、URL 安全的令牌格式(RFC 7519),携带带签名的 JSON 声明,广泛用作访问令牌、ID 令牌和会话载体。 它属于网络安全的 身份与访问 分类。
JWT(JSON Web Token) 是什么意思?
紧凑、URL 安全的令牌格式(RFC 7519),携带带签名的 JSON 声明,广泛用作访问令牌、ID 令牌和会话载体。
JWT(JSON Web Token) 是如何工作的?
JSON Web Token 是由三段 Base64URL 编码、点号连接的字符串:头部、载荷和签名。头部声明签名算法;载荷携带 iss、sub、aud、exp 等标准声明以及自定义数据;签名让接收方校验完整性与来源。JWT 可以被签名(JWS)或加密(JWE),是 OAuth 2.0、OpenID Connect 以及服务间认证的核心。无状态特性便于水平扩展,但难以撤销。务必在服务端固定算法,校验 aud、iss 和 exp,采用较短有效期,并与 refresh token 或令牌内省机制配合。
如何防御 JWT(JSON Web Token)?
针对 JWT(JSON Web Token) 的防御通常结合技术控制与运营实践,详见上方完整定义。
JWT(JSON Web Token) 还有哪些其他名称?
常见的别称包括: JSON Web Token。
● 相关术语
- appsec№ 575
JWT 漏洞
JSON Web Token 验证实现中的一类缺陷,可让攻击者伪造令牌、提升权限或绕过身份验证。
- identity-access№ 749
OAuth 2.0
开放的授权框架,允许资源所有者在不共享凭据的情况下,授予第三方应用对 API 的有限范围访问。
- identity-access№ 760
OpenID Connect (OIDC)
构建在 OAuth 2.0 之上的身份层,允许客户端通过签名的 ID 令牌验证用户身份并获取基本资料。
- identity-access№ 007
访问令牌(Access Token)
由授权服务器签发的短期凭据,客户端向 API 出示后即可代表用户或服务访问受保护资源。
- identity-access№ 913
刷新令牌(Refresh Token)
用于在 OAuth 2.0 授权服务器上换取新短期访问令牌的长期凭据,无需用户再次登录。
- identity-access№ 088
Bearer 令牌(持有者令牌)
RFC 6750 定义的不透明或结构化凭据,仅凭持有即可授予对资源的访问权限,不需证明持有者是合法所有者。