ITPub博客

首页 > 架构设计 > 软件结构 > (57)java Spring Cloud企业快速开发架构之Spring Cloud整合Zipkin进行服务跟踪

(57)java Spring Cloud企业快速开发架构之Spring Cloud整合Zipkin进行服务跟踪

原创 软件结构 作者:JIAN2 时间:2021-09-30 09:43:14 0 删除 编辑

 JWT(Json Web Token)是为了在网络应用环境间传递声明而执行的一种基于 Json 的开放标准。JWT 的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源。 需要框架源码的朋友可以看我个人简介联系我

 比如用在用户登录上时,基本思路就是用户提供用户名和密码给认证服务器,服务器验证用户提交信息的合法性;如果验证成功,会产生并返回一个 Token,用户可以使用这个 Token 访问服务器上受保护的资源。

JWT 由三部分构成,第一部分称为头部(Header),第二部分称为消息体(Payload),第三部分是签名(Signature)。一个 JWT 生成的 Token 格式为:

token = encodeBase64(header) + ‘.’ + encodeBase64(payload) + ‘.’ + encodeBase64(signature)

头部的信息通常由两部分内容组成,令牌的类型和使用的签名算法,比如下面的代码:

{
  "alg": "HS256", 
  "typ": "JWT"
}


消息体中可以携带一些你需要的信息,比如用户 ID。因为你得知道这个 Token 是哪个用户的,比如下面的代码:

{
  "id": "1234567890", 
  "name": "John Doe", 
  "admin": true
}


签名是用来判断消息在传递的路上是否被篡改,从而保证数据的安全性,格式如下:

HMACSHA256( base64UrlEncode(header) + “.” + base64UrlEncode(payload), secret)

通过这三部分就组成了我们的 Json Web Token。更多介绍可以查看 JWT 官网 https://jwt.io/introduction/。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70006413/viewspace-2794517/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
华为资深架构师,曾参与华为数据中心迁移解决方案!有需要了解分布式微服务电商源码的朋友可以+我 v ❤: haiwabbc2 , 10余年互联网研发行业经验!博客里面是个人的一点技术总结,希望能够帮助到更多的IT朋友成长!

注册时间:2021-09-06

  • 博文量
    1404
  • 访问量
    622748