前端登陆状态维护

99 阅读1分钟

确认网站访客身份

HTTP 1.1的身份认证方式

  • BASIC认证

    • 主要过程
        1. 如果请求的资源需要身份认证的时候,服务器会返回401状态码,并返回WWW-Autherticate的响应字段。该字段包括身份认证的方式(BASIC)以及Request-URI安全域字段(realm);
        2. 收到401之后,客户端将用户名和密码发送📩。发送的的字符串内容是由用户名和密码构成,两者用冒号(:)连接,并用BASE64编码进行处理,将编码之后的内容放在请求首部的Autherticate后,发送到服务器
        3. 服务器受到之后,如果认证成功就返回200 ok,否则继续返回401。
  • DIGEST认证

  • SSL

  • FormBase认证(基于表单认证)

JWT

json web token主要由三个部分组成:Header Payload signature

  • Header

    主要有两部分内容

    • 加密算法
    • 声明类型
  • Payload(载荷)

    主要有三部分内容

    1. 标准中注册的声明

      iss:jwt的签发者 sub:jwt所对应的用户 aud:jwt的接收者 exp:jwt的过期时间 nbf:在这个时间之前jwt是不可用的 iat:jwt的签发时间 jti:jwt的唯一标识,用于关键业务,生成一次性token避免重放攻击

    2. 公共的声明

    3. 私有的声明

    一般不建议在公共或者私有声明中保存私密内容

    原因

    任何人都可以拿到jwt的一个内容,jwt的验证主要是通过签名,两次使用相同的方法进行签名,两次签名一致代表验证通过