Server端的认证神器——JWT(一)

JWT(JSON Web Token)是一种轻量级的身份验证标准,适用于前后端分离的应用。JWT通过HTTP头部传输,具备体积小、传输快、结构化等优点,支持无状态API和跨域验证。其工作原理包括客户端登录获取token,之后携带token访问受保护的资源,服务器通过验证token签名确认用户身份。JWT由Base64编码的Header、Payload和Signature三部分组成,Payload包含用户信息,但不加密,仅做简单签名,因此不应存储敏感数据。
摘要由CSDN通过智能技术生成

什么是JWT

JSON Web Token(以下简称 JWT)是一套开放的标准,它定义了一套简洁且 URL 安全的方案,以安全地在客户端和服务器之间传输 JSON 格式的信息。

它有什么优点?

  • 体积小(一串字符串)。因而传输速度快
  • 传输方式多样。可以通过 HTTP 头部(推荐)/URL/POST 参数等方式传输
  • 严谨的结构化。它自身(在 payload 中)就包含了所有与用户相关的验证消息,如用户可访问路由、访问有效期等信息,服务器无需再去连接数据库验证信息的有效性,并且 payload 支持应用定制
  • 支持跨域验证,多应用于单点登录

单点登录(Single Sign On):在多个应用系统中,用户只需登陆一次,就可以访问所有相互信任的应用。

为什么选择 JWT?

在前后端分离的应用中,后端主要作为 Model 层,为前端提供数据访问 API。为了保证数据安全可靠地在用户与服务端之间传输,实现服务端的认证就显得极为必要。

常见的服务端认证方法有基于 Cookie 的认证,如 session;以及 Token (令牌)认证,如 JWT。前者依赖于 cookie 而实现,在每次请求时都需要带上 cookie ,取出相应字段并与服务器端的进行对比,以实现身份的认证。而后者仅仅需要在 HTTP 的头部附上 token,由服务器 check signature 即可实现,无须担心 cooki

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值