一、权限
常用的http鉴权方式有以下四种
1、http basic authentication
1.1、使用方法:
浏览器把用户名和密码进行base64加密后,放在请求头中,由服务器进行解密和验证。验证通过后发送请求的资源。浏览器的每次请求都会携带加密后的用户名和密码,服务器每次收到请求后都会解密和验证。由于base64加密方式可逆,所以安全性不高。
2、session-cookie
2.1、使用方法:
浏览器请求时先在服务器创建session,服务器保存session并为每个session生成唯一标志字符串即session id(sid),将sid放在响应头中返回给浏览器。浏览器将sid存储在cookie中,以后每次请求都带着sid,服务器解析请求获取sid,根据sid看能否找到对应的session,如果找到说明请求合法。
3、使用token进行签名的鉴权
3.1、使用方法
客户端先用用户名和密码登录登录,服务器验证用户名和密码通过后,给客户端发送一个token。客户端保存好token后,以后每次请求的数据,都携带token信息。服务器验证token信息是否合法。
常用的token方案有:JWT(Json Web Token)。
3.2、和session-cookie的区别
session id只是一个唯一标志字符串,服务器根据sid查找用户登录信息,而token本身就是用户登录成功的信息。session依赖与浏览器客户端,需要把sid保存在浏览器的cookie中。
4、OAuth(开发授权)
这种方式是使用第三方授权的信息进行登录,比如使用qq、微信等授权登录网站。