- 論壇徽章:
- 0
|
本帖最后由 kevin_w_sh 于 2012-05-31 21:12 編輯
單點登陸SSO 有一些成熟的解決方案,但對于我的項目,僅有兩個sever的系統(tǒng),感覺投入應(yīng)用還是比較復(fù)雜,代碼改動量較多
于是,我自己擬定了如下網(wǎng)頁重定向來保存session的方案并已實施成功,請各位多多指教,有沒有不安全的因素,或者更好的方法來實現(xiàn)
網(wǎng)址1: a.com,全部perl 代碼,A 服務(wù)器,存儲注冊用戶資料
網(wǎng)址2: b.com,全部php 代碼,B 服務(wù)器
用戶可以在a.com 登錄,也可以再b.com 登錄
登錄流程如下:
1 登陸a.com , Perl按照正常的登陸驗證成功之后,生成一個網(wǎng)頁重定向URL 到b.com,這個url,包含user=kevin×tamp=590404668a4fa55dbbfe533dc9e28cd5
期中timestamp已MD5 加密,同時把未加密的時間戳寫到mysql數(shù)據(jù)庫中
2 用戶的瀏覽器跳轉(zhuǎn)到b.com 之后,通過API 訪問A 服務(wù)器的mysql,根據(jù)傳來的用戶名和時間戳,驗證用戶的合法性,如果時間戳和用戶名都符合,顯示在b.com 登陸成功,保存session
3 網(wǎng)頁重定向,返回 a.com登陸之后的狀態(tài)
如果用戶先登陸b.com ,則相反的流程,但時間戳都是寫在A 數(shù)據(jù)庫
公司CTO 認(rèn)為還不夠安全,讓我再找好的解決方案,我現(xiàn)在迷惑中
求指點
|
|