《图解HTTP》第8章确认访问用户身份的认证 读书笔记

  第八章:确认访问用户身份的认证

1.HTTP/1.1使用的四种验证方式:

  ①BASIC认证(不常用)

  ②DIGEST认证(不常用)

  ③SSL客户端认证

  ④FormBase认证(基于表单认证,就是平常用的账户密码登录)

2.BASIC认证:就是把客户端的用户ID和密码经Base64编码后发送给服务器端,以此达到认证客户端身份。(这是明文发送,密码会被窃取。)

3.DIGEST认证:服务器端发送一个质询码nonce(就是一个随机数),客户端根据这个nonce,经过MD5运算后产生一个密码字符串response(响应码),然后把nonce和response一个发回去给服务器端,服务器端认证身份。(能防止密码被窃听,但是不能防止用户伪装)

4.SSL客户端认证:SSL客户端认证借由HTTPS的客户端证书完成认证。(SSL客户端认证是认证这一台特定的电脑,不能认证是不是用户本人)

  ①要将客户端证书分发给客户端,并且客户端必须安装此证书。

  ②服务器端会要求客户端提供自己的证书

  ③服务器端验证客户端证书后,会取得证书内公开秘钥(客户端的公开秘钥,服务器端用此加密,客户端用私有秘钥解密密文),然后开始HTTPS通信。

5.FormBase认证:就是平常用的账户密码登录,用来认证是不是用户本人。

6.因为HTTP是无状态协议,所以我们用Cookie来管理Session。意思就是:

  ①客户端利用FormBase认证(就是发送账户密码给服务器端)。

  ②服务器端根据这个账户发放一个Session ID(这个Session ID就是一个Session的编号,也就是记录了这个用户这个用户所处的状态),这个Session ID写在响应报文Set-Cookie首部字段内。

  ③客户端收到这个Session ID后,保存在Cookie内,下次发请求报文的时候带上这个Cookie

  ④服务器端收到这个Cookie后(也就是收到这个Session ID),就可以识别这个用户和他上次连接服务器所处的状态

7.如果Session ID被盗,对方就可以伪装成你的身份进行操作,所以Session ID存在一个有效期

转载于:https://www.cnblogs.com/Alfred-ou/p/8931786.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值