美文网首页
通关令牌token

通关令牌token

作者: leeleeleelalala | 来源:发表于2020-02-03 23:00 被阅读0次

传统token校验

实现过程

  1. 从前台登录页面输入用户名密码
  2. 后台拿到用户名密码后去数据库(或者redis)查询该用户是否存在,
    • 存在则生成一个随机字符串作为token保存起来(同时也可以保存一下失效时间),并返回登录成功和token给前台
    • 不存在则返回登录失败到前台
  3. 下次前台发送请求到后台的时候携带token进行身份认证,后台拿到token之后,与之前保存的token做比较,一致则认证通过,否则认证失败,去登录页面

弊端

1、token需要保存到后台数据库或者缓存,耗费资源

JWT【Json web token】

1、JWT是什么

首先JWT是一个规范,什么规范呢,它一个基于JSON的用来传递安全信息的规范。

2、组成

JWT由三个部分组成:

  • 头部(Header):包含了JWT最基本的信息,一般主要是类型和加密算法。
    例如:
{"typ":"JWT","alg":"HS256"}
  • 载荷(playload):是一个存放了我们的有效信息的json对象,那这个json里面有哪些信息呢,它里面包含我们想要传递的信息(也叫声明Claim),JWT标准给我们定义了一些可选的标准声明如下:
iss: jwt签发者
sub: jwt所面向的用户
aud: 接收jwt的一方
exp: jwt的过期时间,这个过期时间必须要大于签发时间
nbf: 定义在什么时间之前,该jwt都是不可用的.
iat: jwt的签发时间
jti: jwt的唯一身份标识,主要用来作为一次性token。

其他的我们也可以自己加上自己想要传递的声明,比如用户名,用户id之类的,但是不要放敏感信息在里面,因为这部分是可以被解密的。
例如:

{"iss":"guapi","userId":"001","userName":"小七"}  
  • 签证(signature): 这个部分是用来校验JWT的,你需要在你的服务器偷偷的设定secret盐
part1 = base64.encode(header)
part2 = base64.encode(payload)
part3 = 用header中指定的加密方式对(part1+"."+part2)进行加盐加密
signature = part1 + "." + part2 + "." + part3
组装这三个,恭喜你就成功的生成了自己的JWT对象

你可以试一下在不知道secret的时候,你修改任何一个部分都会导致JWT在服务器端解析失败的。

3、总结

所以JWT是安全的;一旦被签发就无法被篡改的(不知道secret的情况下);不需要存储可以自校验的很好的传统TOKEN的替代方案。

哈哈,写完啦,写完啦,权限的冰山一小角A
请大家期待其他的冰山一小角B,C,D....

相关文章

  • 通关令牌token

    传统token校验 实现过程 从前台登录页面输入用户名密码 后台拿到用户名密码后去数据库(或者redis)查询该用...

  • Vue 后台管理项目5-登录状态判断(token令牌)

    登录状态判断(token令牌) 1.token令牌 Ⅰ.传统身份验证的方法: Ⅱ.基于 Token 的身份验证方法...

  • 4.Spring Security oAuth2-令牌的访问与刷

    令牌的访问与刷新 Access Token Access Token 是客户端访问资源服务器的令牌。拥有这个令牌代...

  • 御龙在天39

    皇城通关令牌主要分为三种,一种是文武百官通关令牌,从金印紫绶到铜印黄绶不等;一种是后宫嫔妃通关令牌,分属金银玉牌不...

  • Token处理

    令牌存储到redis: 二、使用JWT(JSON WEB TOKEN)替换默认token特点:1.自包含:令牌本身...

  • Token

    Token, 令牌,代表执行某些操作的权利的对象,计算机术语。访问令牌(Access token)表示访问控制操作...

  • Bleve 文档翻译计划(6)——令牌器

    Tokenizers(令牌器) Single Token(单一令牌) 单令牌化器会将整个输入字节作为单令牌返回。T...

  • JWT与Golang

    JWT基础概念 JWT是 json web token的简称其中的 token 是令牌的意思, 其实这个令牌实质上...

  • oAuth2 令牌的访问与刷新

    Access Token Access Token 是客户端访问资源服务器的令牌。拥有这个令牌代表着得到用户的授权...

  • IdentityServer4 第四部分 端点 第49章 令牌端

    第49章 令牌端点(Token Endpoint) 令牌端点可用于以编程方式请求令牌。它支持password,au...

网友评论

      本文标题:通关令牌token

      本文链接:https://www.haomeiwen.com/subject/xupcxhtx.html