一種采用cookie兼容多種身份認(rèn)證方式的統(tǒng)一身份認(rèn)證方法
【專利摘要】本發(fā)明公開了一種采用cookie兼容多種身份認(rèn)證方式的統(tǒng)一身份認(rèn)證方法,通過cookie和URL(get/post)方式結(jié)合的方式認(rèn)證,將用戶名和密碼信息分開存儲,提高了用戶登錄的安全性,同時(shí)增加偽密碼方式的迷惑性,同時(shí)避免了認(rèn)證中心和各平臺間頻繁的授權(quán)和Cookie共享帶來的網(wǎng)絡(luò)不安全因素。
【專利說明】—種采用cookie兼容多種身份認(rèn)證方式的統(tǒng)一身份認(rèn)證方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種網(wǎng)絡(luò)認(rèn)證的方法,尤其涉及到一種采用cookie兼容多種身份認(rèn)證方式的統(tǒng)一身份認(rèn)證方法。
【背景技術(shù)】
[0002]在數(shù)字化集中門戶平臺中,如何用戶安全方便的通過各子系統(tǒng)的認(rèn)證和控制用戶訪問各子系統(tǒng),實(shí)現(xiàn)“一次登錄、多方認(rèn)證”,目前來說,實(shí)現(xiàn)統(tǒng)一身份認(rèn)證的方案有很多,CAS>LDAP (lightweight directory access protocal)用戶注冊中心都可以實(shí)現(xiàn),或者米用cookie的方式也可以實(shí)現(xiàn)。
[0003]由于cookie方式是客戶端和服務(wù)端之間的交互,采用cookie的方式實(shí)現(xiàn)統(tǒng)一身份認(rèn)證時(shí),無法保證信息的絕對安全。Cookie內(nèi)容存儲在客戶端,安全性不夠,容易泄密,為保證用戶認(rèn)證順利,必須要通過cookie的方式傳遞用戶名和密碼,用戶名和密碼傳輸過程中容易產(chǎn)生造成不安全因素。
[0004]單一的cookie認(rèn)證多系統(tǒng)的方式,只是單獨(dú)發(fā)送cookie到客戶端,客戶端獲取到cookie后,將cookie中內(nèi)容存儲到本地?cái)?shù)據(jù)中,此時(shí)如果cookie中綜合存儲了用戶名和密碼信息,不管用戶名和密碼是否采取了加密方式,用戶獲取到該數(shù)據(jù)都是可能破解的,安全性問題始終存在。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的就在于為了解決上述問題而提供一種安全系數(shù)高,避免出現(xiàn)多系統(tǒng)cookie方式認(rèn)證時(shí),防止出現(xiàn)泄密情況的采用cookie兼容多種身份認(rèn)證方式的統(tǒng)一身份認(rèn)證方法。
[0006]本發(fā)明通過以下技術(shù)方案來實(shí)現(xiàn)上述目的:
[0007]本發(fā)明包括以下幾個(gè)步驟:
[0008]步驟(I):用戶通過客戶端向認(rèn)證中心發(fā)送授權(quán)資源請求;
[0009]步驟(2):所述認(rèn)證中心采用cookie方式傳送用戶密碼信息數(shù)據(jù)包,同時(shí)采用URL方式傳輸用戶名。
[0010]步驟(3):所述認(rèn)證中心采用關(guān)聯(lián)認(rèn)證的方式將所述用戶密碼信息數(shù)據(jù)包和所述用戶名的數(shù)據(jù)發(fā)送到本地客戶端。
[0011]步驟(4):客戶端在接收到所述認(rèn)證中心的數(shù)據(jù)后,獲取用戶身份信息;
[0012]具體地,所述用戶密碼信息數(shù)據(jù)包采用數(shù)據(jù)密鑰和散列加密方式加密。
[0013]進(jìn)一步地,用戶通過客戶端向認(rèn)證中心發(fā)送授權(quán)資源請求之前,還包括:獲取當(dāng)前用戶的平臺配置信息,在用戶登錄到所述平臺時(shí)根據(jù)所述平臺配置信息進(jìn)行用戶平臺信息的初始化。
[0014]作為優(yōu)選地,所述獲取當(dāng)前用戶的平臺配置信息,具體包括:確定所述客戶端是否存儲有所述用戶的平臺配置信息,如果是,直接獲取所述客戶端中存儲的所述用戶的平臺配置信息,否則,所述客戶端從所述認(rèn)證中心獲取所述用戶的平臺配置信息
[0015]本發(fā)明的有益效果在于:
[0016]本發(fā)明通過cookie和URL (get/post)方式結(jié)合的方式認(rèn)證,將用戶名和密碼信息分開存儲,提高了用戶登錄的安全性,同時(shí)增加偽密碼方式的迷惑性,同時(shí)避免了認(rèn)證中心和各平臺間頻繁的授權(quán)和Cookie共享帶來的網(wǎng)絡(luò)不安全因素。
【專利附圖】
【附圖說明】
[0017]圖1為本發(fā)明的流程示意圖。
【具體實(shí)施方式】
[0018]下面結(jié)合附圖對本發(fā)明作進(jìn)一步說明:
[0019]如圖1所示,本發(fā)明包括以下幾個(gè)步驟:
[0020]步驟⑴:用戶通過客戶端向認(rèn)證中心發(fā)送授權(quán)資源請求;
[0021]步驟(2):認(rèn)證中心采用cookie方式傳送用戶密碼信息數(shù)據(jù)包,同時(shí)采用URL方式傳輸用戶名。
[0022]步驟(3):認(rèn)證中心采用關(guān)聯(lián)認(rèn)證的方式將用戶密碼信息數(shù)據(jù)包和用戶名的數(shù)據(jù)發(fā)送到本地客戶端。
[0023]步驟(4):客戶端在接收到認(rèn)證中心的數(shù)據(jù)后,獲取用戶身份信息;
[0024]用戶密碼信息數(shù)據(jù)包采用數(shù)據(jù)密鑰和散列加密方式加密。
[0025]用戶通過客戶端向認(rèn)證中心發(fā)送授權(quán)資源請求之前,還包括:獲取當(dāng)前用戶的平臺配置信息,在用戶登錄到平臺時(shí)根據(jù)平臺配置信息進(jìn)行用戶平臺信息的初始化。
[0026]獲取當(dāng)前用戶的平臺配置信息,具體包括:確定客戶端是否存儲有用戶的平臺配置信息,如果是,直接獲取客戶端中存儲的用戶的平臺配置信息,否則,客戶端從認(rèn)證中心獲取用戶的平臺配置信息
[0027]客戶端,用于在接收到訪問平臺的命令后,獲取用戶身份信息,向認(rèn)證中心提交用戶身份信息,接收認(rèn)證中心發(fā)送的登錄憑證并進(jìn)行校驗(yàn);
[0028]認(rèn)證中心,用于接收用戶身份信息,并當(dāng)存儲有用戶的有效登錄憑證時(shí),直接將登錄憑證發(fā)送給用戶的客戶端,否則,生成相應(yīng)的登錄憑證保存并發(fā)送給用戶的客戶端。
[0029]雙方通過約定接口方式,認(rèn)證中心定義webservice接口具體方式,子系統(tǒng)實(shí)現(xiàn)接口,具體認(rèn)證過程如下:認(rèn)證中心分兩種方式發(fā)送信息,P0ST\GET方式發(fā)送實(shí)際的用戶名和偽密碼;c00kie方式發(fā)送真實(shí)的密碼,偽用戶名;子系統(tǒng)獲取兩個(gè)信息后,取P0ST\GET方式發(fā)送的用戶名和COOKIE方式發(fā)送的密碼,認(rèn)證通過登錄;C00kie中密碼通過簡單加密方式完成加密,加密方式為獲取密碼每個(gè)字符的ASCII碼,每位左移一位。
[0030]如圖1所示,在本實(shí)施例中,用戶是首次登錄門戶網(wǎng)站,客戶端獲取用戶的用戶身份信息后,在客戶端本地內(nèi)無法找不到成員子系統(tǒng)A的登錄憑證,客戶端登錄門戶網(wǎng)站后,門戶網(wǎng)站根據(jù)提交的用戶身份信息對該用戶進(jìn)行登錄驗(yàn)證,再生成加密的登錄憑證保存并發(fā)送給客戶端,以cookie方式傳送用戶密碼信息數(shù)據(jù)包,同時(shí)采用URL方式傳輸用戶名,客戶端接收到該登錄憑證后,進(jìn)行校驗(yàn),并使用該登錄憑證登錄到成員子系統(tǒng)A,同時(shí)保存該登錄憑證。
[0031]用戶在登錄成員子系統(tǒng)A后,若還需要再登錄成員子系統(tǒng)B,由于用戶首次登錄成員子系統(tǒng)B,所以客戶端獲取用戶的用戶身份信息后,在客戶端本地內(nèi)也找不到成員子系統(tǒng)B的登錄憑證,客戶端向認(rèn)證中心提交用戶身份信息,由于在用戶登錄成員子系統(tǒng)A時(shí),認(rèn)證中心已經(jīng)生成并存儲了該用戶的登錄憑證,所以直接將該用戶的登錄憑證發(fā)送給客戶端即可,客戶端接收到該登錄憑證后,進(jìn)行校驗(yàn),并使用該登錄憑證登錄到成員子系統(tǒng)B,同時(shí)保存該登錄憑證。
[0032]當(dāng)用戶再次登錄成員子系統(tǒng)A或成員子系統(tǒng)B時(shí),由于本地已經(jīng)存儲了相應(yīng)的登錄憑證,所以客戶端獲取用戶的用戶身份信息后,可以直接使用客戶端本地存儲的登錄憑證登錄到相應(yīng)的平臺。
[0033]當(dāng)前用戶的平臺配置信的具體獲取方式同樣包括:在客戶端本地獲取和通過認(rèn)證中心獲取,為保證登錄效率,可以采用優(yōu)先從客戶端本地獲取,在本地獲取失敗的情況下再通過認(rèn)證中心獲取的方式。此時(shí),客戶端在獲取當(dāng)前用戶的平臺配置信息時(shí),首先確定在客戶端中是否存儲有用戶的平臺配置信息,如果是,直接獲取客戶端中存儲的用戶的平臺配置信息,否則,客戶端從認(rèn)證中心獲取用戶的平臺配置信息,客戶端在接收到認(rèn)證中心發(fā)送的該用戶的平臺配置信息后,可以將該用戶的平臺配置信息存儲在本地,以便于下次登錄時(shí)查找和使用,從而進(jìn)一步提高下次登錄的登錄效率。
[0034]以上僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。
【權(quán)利要求】
1.一種采用cookie兼容多種身份認(rèn)證方式的統(tǒng)一身份認(rèn)證方法,其特征在于: 步驟(I):用戶通過客戶端向認(rèn)證中心發(fā)送授權(quán)資源請求; 步驟(2):所述認(rèn)證中心采用cookie方式傳送用戶密碼信息數(shù)據(jù)包,同時(shí)采用URL方式傳輸用戶名。 步驟(3):所述認(rèn)證中心采用關(guān)聯(lián)認(rèn)證的方式將所述用戶密碼信息數(shù)據(jù)包和所述用戶名的數(shù)據(jù)發(fā)送到本地客戶端。 步驟(4):客戶端在接收到所述認(rèn)證中心的數(shù)據(jù)后,獲取用戶身份信息。
2.根據(jù)權(quán)利要求1所述的一種采用cookie兼容多種身份認(rèn)證方式的統(tǒng)一身份認(rèn)證方法,其特征在于:所述用戶密碼信息數(shù)據(jù)包采用數(shù)據(jù)密鑰和散列加密方式加密。
3.如權(quán)利要求1所述的一種采用cookie兼容多種身份認(rèn)證方式的統(tǒng)一身份認(rèn)證方法,用戶通過所述客戶端向所述認(rèn)證中心發(fā)送授權(quán)資源請求之前,還包括:獲取當(dāng)前用戶的平臺配置信息,在用戶登錄到所述平臺時(shí)根據(jù)所述平臺配置信息進(jìn)行用戶平臺信息的初始化。
4.如權(quán)利要求3所述的一種采用cookie兼容多種身份認(rèn)證方式的統(tǒng)一身份認(rèn)證方法,其特征在于:所述獲取當(dāng)前用戶的平臺配置信息,具體包括:確定所述客戶端是否存儲有所述用戶的平臺配置信息,如果是,直接獲取所述客戶端中存儲的所述用戶的平臺配置信息,否則,所述客戶端從所述認(rèn)證中心獲取所述用戶的平臺配置信息。
【文檔編號】H04L29/06GK103442004SQ201310379349
【公開日】2013年12月11日 申請日期:2013年8月27日 優(yōu)先權(quán)日:2013年8月27日
【發(fā)明者】鄒承俊, 雷文全 申請人:成都農(nóng)業(yè)科技職業(yè)學(xué)院, 成都市知用科技有限公司