Skip to content

oliver1204/JWT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jwt 流程

  • 首先发起login接口,从server端拿取token
  • 用token换取以及用户的用户名 | 密码 | 过期时间等其他的privateKey,通过jwt-simple(或其他插件)生成jwt code
  • server端通过privateKey解析jwt code, 拿到token是正确的,则验证通过

什么是JWT(what)

  1. JWT(JSON Web Token)以JSON对象的形式在各方之间安全地传输信息。
  2. JWT是一个数字签名,生成的信息是可以验证并被信任的。
  3. JWT是目前最流行的跨域认证解决方案

第一次客户端访问服务器的时候, 服务器根据客户的唯一标识+ 数字签名生成一个令牌,发给客户端,之后的每次访问,客户端于服务端都通过这个令牌来标识彼此。这样,就无需持久化缓存session了。 为了相对更安全,可以设置令牌过期时间,每隔一段时间更新一次令牌。

什么时候使用JWT(when)

  • 授权:一旦用户登录,每个后续请求将包括JWT,从而允许用户访问该令牌允许的路由,服务和资源。单一登录是当今广泛使用JWT的一项功能,因为它的开销很小并且可以在不同的域中轻松使用。这也是JWT最常见的方案。
  • 信息交换:JSON Web令牌是各方之间安全地传输信息的好办法。对JWT进行签名,所以您可以确保发件人是他们所说的人。由于,签名可以设置有效时长,可以验证内容是否遭到篡改。

与token的区别

token是服务端传给我的,每次发起请求的时候,我们需要带上此token。为了保证token的安全,需要在token上加一个session信息,此session信息被存储在服务器中,每次请求,需要和服务器中的session对比,找到了,及是安全的token。 这时便存在一个问题,如果存储session的服务挂了,那么所有的请求都会被认为是不安全的,这时我们就想到,有没有一种web token,及JWT。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published