• 《图解HTTP》确认访问用户身份的认证


    一、何为认证

      核对信息:密码、动态令牌、数字证书、生物认证、IC卡

      HTTP使用的认证方式:BASIC认证(基本认证)、DIGEST认证(摘要认证)、SSL客户端认证、FormBase认证(基于表单认证)

    二、BASIC认证

      是web端与客户端进行认证的方式(不常用)

      将密码以base64编码储存在 authorization 首部字段 (不安全)

      认证步骤:

        1、客户端请求认证资源,服务器返回401

          2、客户端接收401,请求服务器(包含用户名和密码)

          3、服务器确认用户名和密码正确,返回响应

    三、DIGEST认证

         使用质询响应方法,DIGEST认证内容存放在 Authorization 首部中

       认证步骤:

        1、客户端请求认证资源,服务器返回401+ 临时质询码(数字,nonce)

          2、客户端接收401,请求服务器(包含DIGEST认证信息)

          3、服务器确认DIGEST认证信息的正确性,返回响应

    四、SSL客户端认证

    1、SSL客户端认证的认证步骤

      (1)首先客户端安装客户端认证证书

      (2)客户端请求认证资源,服务器发送 Certificate Request 报文+提供客户端证书

      (3)客户端会把证书以 Client Certificate 报文发送服务器

      (4)服务器验证证书并领取密钥,然后通信

    2、SSL客户端认证采用双因素认证

      双因素认证:验证时需要密码+其他信息

    3、SSL客户端认证必要的费用

      客户端证书需要一定的费用才能使用

    五、基于表单认证

      认证多半为基于表单认证

      Session管理及Cookie应用。一般会使用Cookie来管理Session对话

      认证步骤:

        1、客户端用post方法把用户ID和密码发送给服务器

          2、服务器发放识别用户的SessionID(服务器需做有效期管理,Cookie加上httponly属性)

          3、客户端收到SessionID后,作为Cookies保存在本地。

          4、下次客户端发请求自动发送Cookie

  • 相关阅读:
    Linux的chattr与lsattr命令详解
    Ant_的最完整build.xml解释
    ant安装和验证
    MySQL ALTER TABLE: ALTER vs CHANGE vs MODIFY COLUMN
    python简单爬虫技术
    selenium自动化测试打开新标签窗口
    js中的相等与不等运算
    table-layout:fixed 属性的解说
    DWZ与KindEditor编辑器的整合
    DWZ框架学习
  • 原文地址:https://www.cnblogs.com/zhuxr/p/14175715.html
Copyright © 2020-2023  润新知