当前位置: 首页 > news >正文

太原微网站建设制作一个网站一般先要明确

太原微网站建设,制作一个网站一般先要明确,代运营报价,国家信息公示系统入口官网JWT Token JSON Web Token (JWT,RFC 7519 (opens new window)),是为了在网络应用环境间传递声明而执行的一种基于 JSON 的开放标准((RFC 7519)。该 token 被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT 的声明一般被用来在身份提供者和服务提供者…

JWT Token

JSON Web Token (JWT,RFC 7519 (opens new window)),是为了在网络应用环境间传递声明而执行的一种基于 JSON 的开放标准((RFC 7519)。该 token 被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT 的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该 token 也可直接被用于认证,也可被加密。

JWT认证流程

用户认证的流程

  • 用户使用账号(手机/邮箱/用户名)密码请求服务器
  • 服务器验证用户账号是否和数据库匹配
  • 服务器通过验证后发送给客户端一个 JWT Token
  • 客户端存储 Token,并在每次请求时携带该 Token
  • 服务端验证 Token 值,并根据 Token 合法性返回对应资源

JWT Token的标准样式

JWT标准的令牌由三部分组成,这些部分均是URL安全的Base64编码的字符串,并且用点(.)分隔:

  • Header(头部)

  • Payload(有效载荷)

  • Signature(签名)

因此,一个典型的JWT看起来像这样:

xxxxx.yyyyy.zzzzz


每一部分的详细说明如下:

1. Header

Header通常由两部分组成:令牌的类型(即JWT)和签名使用的算法(如HS256)。例如:

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

然后将这个JSON对象进行Base64编码,得到Header部分。

2. Payload

Payload包含了要传递的实际声明信息,比如用户的ID、声明的权限、到期时间(exp)等。例如:

{"sub": "1234567890","name": "John Doe","admin": true,"iat": 1516239022
}

这个JSON对象也会被进行Base64编码,形成Payload部分。

3. Signature

Signature部分是对前两部分进行签名的,确保发出的信息未被篡改。它需要使用HEADER中指定的算法来进行计算,并且需要使用一个密钥(只有服务器知道)。具体步骤如下:

  • 将HEADER和PAYLOAD的Base64编码值连接起来,用点(.)分隔。
  • 使用指定的算法(如HS256)和密钥对上述连接的字符串进行签名。
HMACSHA256(base64UrlEncode(header) + "." +base64UrlEncode(payload),secret)

最终的Signature部分就是这个签名值的Base64编码结果。

如果我们将上面的Header和Payload进行Base64编码,并假设使用了一个密钥来计算出Signature,那么完整的JWT可能看起来像这样:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMH yaJr9inatingTypingThisIntoABrowserIsProbablyAGoodIdea

客户端附带 JWT Token 的方式

用户在完成认证后会返回开发者一个 JWT Token,开发者需将此 Token 存储于客户端,然后将此 Token 发送给开发者受限的后端服务器进行验证。

建议使用 HTTP Header Authorization 的形式携带 Token,以下以 JavaScript 的 axios 库为例示范如何携带:

const axios = require("axios");
axios.get({url: "https://yourd
http://www.dtcms.com/a/534227.html

相关文章:

  • 那除了ui组件像角色大小这种 不用随着分辨率改还是啥
  • 做一个网站设计要多少钱沈阳网络平台推广公司
  • SCSegamba:用于结构裂缝分割的轻量级结构感知视觉Mamba网络
  • 多个网站域名 是新增接入东莞市建网站制作方案
  • 网站搜索防止攻击wordpress中文标题转换拼音插件
  • WordPress首页站内搜索个人简历ppt模板免费
  • 国外网站dns网站开发后端 书
  • 网站做cpa赚钱吗邯郸招工信息网
  • Windows本地部署3DGS
  • 二手交易网站开发方式类似于拼多多的网站怎么做
  • 数据产品——聊一聊数据埋点体系
  • 辽宁建设工程信息网直接发包工程seo做的比较牛的公司
  • 自定义网站建站公司安阳市网站建设
  • 二级院系网站建设情况金融网站建设公司排名
  • 再谈Socket编程中阻塞/非阻塞模式
  • AI Agent的未来之争:任务规划,该由人主导还是AI自主?
  • 南京建设银行网站西安网站群建设
  • 免费做抽奖的h5网站网站设计多少钱市场价
  • 做网站最好的软件如何做电影网站
  • 虚拟主机如何分配网站网站做收录
  • 互动网站如何做app制作公司排行榜
  • 做网站的股哥安康网站设计
  • 企业网站备案名称要求物流信息网站有哪些
  • 网站开发培训网站旅行志 wordpress
  • 购物网站详细设计在网站上做远程教育系统多少钱
  • 教育类门户网站长沙网上商城
  • 网站开发能进无形资产吗深圳网站建设交易
  • 沧州市建设局网站做网站美工要学什么
  • Acrobat js 数组操作与 splice 方法解决动态表单字段重复值问题
  • 用个人免费空间快速建立个人网站后方平台没有网站流量怎么办