《圖解HTTP》確認訪問用戶身份的認證

1、何爲認證

  覈對信息:密碼、動態令牌、數字證書、生物認證、IC卡web

  HTTP使用的認證方式:BASIC認證(基本認證)、DIGEST認證(摘要認證)、SSL客戶端認證、FormBase認證(基於表單認證)安全

2、BASIC認證

  是web端與客戶端進行認證的方式(不經常使用)服務器

  將密碼以base64編碼儲存在 authorization 首部字段 (不安全)post

  認證步驟:編碼

    一、客戶端請求認證資源,服務器返回4013d

      二、客戶端接收401,請求服務器(包含用戶名和密碼)orm

      三、服務器確認用戶名和密碼正確,返回響應資源

3、DIGEST認證

     使用質詢響應方法,DIGEST認證內容存放在 Authorization 首部中io

   認證步驟:base64

    一、客戶端請求認證資源,服務器返回401+ 臨時質詢碼(數字,nonce)

      二、客戶端接收401,請求服務器(包含DIGEST認證信息)

      三、服務器確認DIGEST認證信息的正確性,返回響應

4、SSL客戶端認證

一、SSL客戶端認證的認證步驟

  (1)首先客戶端安裝客戶端認證證書

  (2)客戶端請求認證資源,服務器發送 Certificate Request 報文+提供客戶端證書

  (3)客戶端會把證書以 Client Certificate 報文發送服務器

  (4)服務器驗證證書並領取密鑰,而後通訊

二、SSL客戶端認證採用雙因素認證

  雙因素認證:驗證時須要密碼+其餘信息

三、SSL客戶端認證必要的費用

  客戶端證書須要必定的費用才能使用

5、基於表單認證

  認證多半爲基於表單認證

  Session管理及Cookie應用。通常會使用Cookie來管理Session對話

  認證步驟:

    一、客戶端用post方法把用戶ID和密碼發送給服務器

      二、服務器發放識別用戶的SessionID(服務器需作有效期管理,Cookie加上httponly屬性)

      三、客戶端收到SessionID後,做爲Cookies保存在本地。

      四、下次客戶端發請求自動發送Cookie

相關文章
相關標籤/搜索