PHP有关JWT(Json Web Token)的那些事

阅读目录

  • 阐述
    • 传统的 session 认证
      • session 缺点
    • 基于 token 的鉴权机制
      • JWT 的使用比单个 API 密钥有许多优点
      • JWT 的流程
      • JWT 结构
        • header
        • playload
        • signature 签名
  • 安装
    • 实例
    • 使用 RS256(openssl)的示例
    • 带有密码短语的示例
  • JWT 实战使用 axios+PHP 实现登录认证
    • 准备
    • 源码
      • demo.css
      • index.html
      • index.php
    • 预览效果
      • Javascript
      • PHP

阐述

用户认证是计算机安全领域一个永恒的热点话题,然而你会发现,开发者很少讨论有关 Json Web Token 的话题,其实使用 Json Web Token 集成到 API 身份验证机制中是容易,本文给大家普及基础知识。

Json Web Token (简称JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON 的开放标准((RFC 7519)。

该 token 被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT 的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,该 token 也可直接被用于认证,也可被加密。

传统的 session 认证

我们知道,http 协议本身是一种无状态的协议,而这就意味着如果用户向我们的应用提供了用户名和密码来进行用户认证,那么下一次请求时,用户还要再一次进行用户认证才行,因为根据 http 协议,我们并不能知道是哪个用户发出的请求,所以为了让我们的应用能识别是哪个用户发出的请求,我们只能在服务器存储一份用户登录的信息,这份登录信息会在响应时传递给浏览器,告诉其保存为 cookie,以便下次请求时发送给我们的应用,这样我们的应用就能识别请求来自哪个用户了,这就是传

你可能感兴趣的:(PHP题库,前端,php,json)