單點(diǎn)登錄(Single Sign-On,簡稱SSO)是一種在多個(gè)應(yīng)用系統(tǒng)中,用戶只需要進(jìn)行一次登錄就可以訪問所有相互信任的系統(tǒng)資源的解決方案。其基本原理如下:
用戶在第一次訪問需要認(rèn)證的系統(tǒng)時(shí),輸入用戶名和密碼。
認(rèn)證系統(tǒng)校驗(yàn)用戶身份并生成一個(gè)加密的Token,并將其存儲(chǔ)在認(rèn)證系統(tǒng)中。
用戶再訪問其他系統(tǒng)時(shí),會(huì)帶著這個(gè)Token進(jìn)行訪問請(qǐng)求。
被訪問系統(tǒng)接收到請(qǐng)求后,會(huì)將Token發(fā)送給認(rèn)證系統(tǒng)進(jìn)行校驗(yàn),如果Token有效,則認(rèn)為用戶已經(jīng)登錄,不需要再次輸入用戶名和密碼。
認(rèn)證系統(tǒng)將校驗(yàn)結(jié)果返回給被訪問系統(tǒng),被訪問系統(tǒng)依據(jù)該結(jié)果決定是否授權(quán)用戶訪問。
SSO的優(yōu)點(diǎn)在于用戶只需要進(jìn)行一次認(rèn)證,就可以訪問多個(gè)系統(tǒng),避免了重復(fù)輸入用戶名和密碼的繁瑣。同時(shí),SSO還可以提高系統(tǒng)的安全性,因?yàn)檎J(rèn)證只需要在一處進(jìn)行,可以更容易地進(jìn)行安全控制和管理。