码迷,mamicode.com
首页 > Web开发 > 详细

《图解HTTP》第八章读书笔记

时间:2018-04-24 20:15:35      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:不能   base64   res   通信   认证客户   产生   session   图解   基于   

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

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存在一个有效期

《图解HTTP》第八章读书笔记

标签:不能   base64   res   通信   认证客户   产生   session   图解   基于   

原文地址:https://www.cnblogs.com/Alfred-ou/p/8931786.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!