JWT 实现用户登录认证
JWT是JSONWebToken的缩写 , 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC7519) 。 定义了一种简洁的 , 自包含的方法用于通信双方之间以JSON对象的形式安全的传递信息 。 因为数字签名的存在 , 这些信息是可信的 , JWT可以使用HMAC算法或者是RSA的公私秘钥对进行签名 。

文章图片
用户使用账号和密码发起POST请求;服务器使用私钥创建一个JWT;服务器返回这个JWT给浏览器;浏览器将该JWT串在请求头中像服务器发送请求;服务器验证该JWT;返回响应的资源给浏览器 。身份认证在这种场景下 , 一旦用户完成了登录 , 在接下来的每个请求中包含JWT , 可以用来验证用户身份以及对路由 , 服务和资源的访问权限进行验证 。 由于它的开销非常小 , 可以轻松的在不同域名的系统中传递 , 所有目前在单点登录(SSO)中比较广泛的使用了该技术 。 信息交换在通信的双方之间使用JWT对数据进行编码是一种非常安全的方式 , 由于它的信息是经过签名的 , 可以确保发送者发送的信息是没有经过伪造的 。
JWT是由三段信息构成的 , 将这三段信息文本用.连接一起就构成了JWT字符串 。
【JWT 实现用户登录认证】JWT的三个部分依次为头部:Header , 负载:Payload和签名:Signature 。

文章图片
Header部分是一个JSON对象 , 描述JWT的元数据 , 通常是下面的样子 。
{"alg":"HS256","typ":"JWT
推荐阅读
- 猎鹰9号|马斯克的猎鹰9号火箭刷新全球回收复用纪录,中国实现突破还要多久
- 蜂群|春季控制蜂群分蜂热,早造脾,早育王,才能实现人工分蜂
- 人工智能|科学家利用人工智能改进假肢:可实现“自主行走”
- 单细胞转录组|Nature子刊|新型单细胞转录组测序方法可实现肿瘤克隆鉴定及追踪
- 5g|换上5G,或许可以真正实现一个时空的“穿越”?
- 高压氧舱|贾斯汀比伯花200万购买高压氧舱,富豪如何实现不老梦?
- 成像|中科大实现公里级非视域成像,有望应用于交通、安保等场景
- 潘建伟|1.43千米外隔墙透视!这项黑科技已被中科大潘建伟团队实现|PNAS
- 量子门|利用超导量子比特实现基于非绝热几何相的量子门
- 成像|隔墙观物!我国科学家实现远距离非视域成像
