确认网站访客身份
HTTP 1.1的身份认证方式
-
BASIC认证
- 主要过程
-
- 如果请求的资源需要身份认证的时候,服务器会返回401状态码,并返回WWW-Autherticate的响应字段。该字段包括身份认证的方式(BASIC)以及Request-URI安全域字段(realm);
- 收到401之后,客户端将用户名和密码发送📩。
发送的的字符串内容是由用户名和密码构成,两者用冒号(:)连接,并用BASE64编码进行处理,将编码之后的内容放在请求首部的Autherticate后,发送到服务器 - 服务器受到之后,如果认证成功就返回200 ok,否则继续返回401。
-
- 主要过程
-
DIGEST认证
-
SSL
-
FormBase认证(基于表单认证)
JWT
json web token主要由三个部分组成:Header Payload signature
-
Header
主要有两部分内容
- 加密算法
- 声明类型
-
Payload(载荷)
主要有三部分内容
-
标准中注册的声明
iss:jwt的签发者 sub:jwt所对应的用户 aud:jwt的接收者 exp:jwt的过期时间 nbf:在这个时间之前jwt是不可用的 iat:jwt的签发时间 jti:jwt的唯一标识,用于关键业务,生成一次性token避免重放攻击
-
公共的声明
-
私有的声明
一般不建议在公共或者私有声明中保存私密内容
原因:
任何人都可以拿到jwt的一个内容,jwt的验证主要是通过签名,两次使用相同的方法进行签名,两次签名一致代表验证通过
-