2019-08-14

Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。

JWT的构成

第一部分我们称它为头部(header),第二部分我们称其为载荷(payload, 类似于飞机上承载的物品),第三部分是签证(signature).

header

jwt的头部承载两部分信息:

声明类型,这里是jwt

声明加密的算法 通常直接使用 HMAC SHA256

载荷就是存放有效信息的地方。这个名字像是特指飞机上承载的货品,这些有效信息包含三个部分

标准中注册的声明

公共的声明

私有的声明

signature

jwt的第三部分是一个签证信息,这个签证信息由三部分组成:

header (base64后的)

payload (base64后的)

secret

jwt应用场景:

Authorization (授权) : 这是使用JWT的最常见场景。一旦用户登录,后续每个请求都将包含JWT,允许用户访问该令牌允许的路由、服务和资源。单点登录是现在广泛使用的JWT的一个特性,因为它的开销很小,并且可以轻松地跨域使用。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 什么是JJWT JJWT是一个提供端到端的JWT创建和验证的Java库。永远免费和开源(Apache Licen...
    艾纶_6460阅读 3,038评论 1 1
  • jwt: Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放...
    少年_2ddb阅读 1,499评论 1 2
  • JWT 介绍 JSON Web Token(JWT)是一个开放标准(RFC 7519),它定义了一种紧凑和自包含...
    冰阔乐_b0a4阅读 984评论 0 0
  • 原先我认为,长大并不是什么好事。因为越大越忙,社会闯荡,赚钱养家,各种烦恼,压力通通袭来,我一个人怎么应付的过来?...
    大羽翼的小雪花阅读 1,567评论 0 1
  • 这周李笑来老师讲解的是贪婪和诱惑,但是这仅限于投资领域。因为这无法以偏概全的解释所有的事情,否则就会出现极大的误解...
    呆牛阅读 2,656评论 0 0

友情链接更多精彩内容