MongoDB SCRAM-SHA-1鑑權機制步驟解讀

chenfeng發表於2018-02-23
SCRAM-SHA-1是MongoDB預設的鑑權機制,定義於 IETF standard, RFC 5802 是一種安全性較高的"挑戰-應答"鑑權機制。


步驟解讀
見圖




客戶端發起一個SCRAM鑑權請求; 鑑權引數中帶上使用者名稱、客戶端隨機字串(防止重放攻擊);
服務端發出一個挑戰響應; 服務側先檢查使用者名稱,透過後生成一個salt因子、迭代數、合併字串(包含客戶端隨機串和服務端隨機串)
客戶端響應一個proof(證明資料)和合並字串; 響應的 proof資料根據服務所給的隨機引數以及客戶端金鑰生成,是一個客戶端簽名與金鑰異或計算後的結果;
服務端將儲存的金鑰結合隨機引數,使用同樣的演算法生成簽名並校驗客戶端 proof資料; 若校驗透過,服務端採用類似方式傳送自己的簽名;
客戶端校驗服務端簽名資料。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2151168/,如需轉載,請註明出處,否則將追究法律責任。

相關文章