国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于單點登錄的鐵路WEB系統(tǒng)設(shè)計與分析

2013-01-16 01:33:40李勝蘭上海鐵路局金華車務(wù)段
上海鐵道增刊 2013年2期
關(guān)鍵詞:車務(wù)段門戶單點

李勝蘭 上海鐵路局金華車務(wù)段

基于單點登錄的鐵路WEB系統(tǒng)設(shè)計與分析

李勝蘭 上海鐵路局金華車務(wù)段

隨著鐵路內(nèi)部網(wǎng)上的web系統(tǒng)日益增多,為避免多次身份認(rèn)證,提出實現(xiàn)單點登錄的幾種解決方案。從安全性角度論證賬戶映射法為最佳方案,并舉例說明實現(xiàn)單點登錄的處理流程設(shè)計。

單點登錄;賬戶映射;加密解密服務(wù);Web service

1 前言

隨著企業(yè)信息化工作不斷推進(jìn),鐵路內(nèi)網(wǎng)中基于網(wǎng)頁的信息管理系統(tǒng)越來越多。各信息系統(tǒng)都有自己獨立的用戶認(rèn)證和權(quán)限維護(hù)模塊,登錄頁面需要重復(fù)開發(fā),運行時浪費系統(tǒng)資源,賬戶管理維護(hù)也越來越繁瑣。此外,用戶也日漸形成“密碼疲勞癥”,要分別記住這么多系統(tǒng)的賬號和密碼,切換到另一個系統(tǒng)還得重新進(jìn)行身份認(rèn)證。

信息化發(fā)展到一定程度,系統(tǒng)集成化是必然趨勢。所以,從長遠(yuǎn)角度考慮,新開發(fā)的信息系統(tǒng)在架構(gòu)設(shè)計上應(yīng)考慮系統(tǒng)的集成特性。在系統(tǒng)集成的初級階段,先實現(xiàn)賬號和入口集成的單點登錄是最佳選擇。

單點登錄(SSO,Single Sign on)是一種方便用戶訪問網(wǎng)絡(luò)的技術(shù)。用戶只需要在網(wǎng)絡(luò)中主動地進(jìn)行一次身份認(rèn)證,就可以無縫訪問其被授權(quán)使用的所有系統(tǒng)。

2 解決方案分析

要實現(xiàn)單點登錄,一般有三種解決方案:

(1)集成設(shè)計法。將內(nèi)網(wǎng)所有WEB系統(tǒng)揉捏成一個獨立的大系統(tǒng)進(jìn)行設(shè)計,整個系統(tǒng)只有一個登錄模塊和帳戶管理模塊,每個子系統(tǒng)都只是大系統(tǒng)中的一個功能模塊。

(2)帳戶映射法。選擇一個用戶功能較大較全的WEB系統(tǒng)作為門戶系統(tǒng),并在里面添加到其他WEB系統(tǒng)的鏈接。同時,在其他WEB系統(tǒng)中建立相應(yīng)賬戶映射,通過比對獲取的用戶信息來判斷是否允許訪問。

(3)安全網(wǎng)關(guān)法。它以統(tǒng)一身份認(rèn)證平臺為支撐,將企業(yè)的所有應(yīng)用系統(tǒng)部署在安全網(wǎng)關(guān)后面,通過適當(dāng)?shù)呐渲煤桶踩W(wǎng)關(guān),實現(xiàn)強(qiáng)身份認(rèn)證和單點登錄功能。此方案將所有的用戶認(rèn)證授權(quán)都交給第三方來代理,所有應(yīng)用系統(tǒng)的訪問控制策略也由第三方來控制。

集成設(shè)計法對小企業(yè)的信息化改造比較適合,但像鐵路這種有一定信息化程度的大企業(yè),現(xiàn)有的多套系統(tǒng)已趨于成熟,重新再進(jìn)行集成設(shè)計開發(fā)絕對不現(xiàn)實;

賬戶映射法不需要推倒重來,對已有系統(tǒng)的改造量也很小,實現(xiàn)起來更簡單:首先,在門戶系統(tǒng)添加缺少的其他系統(tǒng)需要的用戶賬戶;然后,在其他應(yīng)用系統(tǒng)中增加一張門戶系統(tǒng)賬號到各自WEB系統(tǒng)賬號的映射表。

安全網(wǎng)關(guān)法適合對用戶授權(quán)高度集中的信息系統(tǒng)的集成,安全性最高。但鐵路內(nèi)部很多信息系統(tǒng)的用戶信息數(shù)據(jù)都是分級建庫的,要建立一個高度集中的第三方身份認(rèn)證、訪問控制機(jī)制,不太可行。而且,對于基于車務(wù)段或小公司一級的組織結(jié)構(gòu)來說,部署起來有些大材小用。另外,安全網(wǎng)關(guān)法實現(xiàn)起來技術(shù)水平要求高,存在對已有系統(tǒng)的改造工作量和兼容問題,還有對新系統(tǒng)的標(biāo)準(zhǔn)規(guī)范要求和接口問題。

綜上所述,第二種方案即賬戶映射方法更加適合作為鐵路內(nèi)部WEB系統(tǒng)實現(xiàn)單點登錄的解決方案。以車務(wù)段為例,我們將OA系統(tǒng)作為門戶網(wǎng)站,在首頁添加其他WEB系統(tǒng)的鏈接,并在這些WEB系統(tǒng)中做賬戶映射,將OA系統(tǒng)的用戶解釋成WEB系統(tǒng)的用戶。這樣,用戶只要能成功登錄辦公網(wǎng)系統(tǒng),并被這些WEB系統(tǒng)授權(quán),就可以直接進(jìn)入這些WEB系統(tǒng),無需再次進(jìn)行登錄。

3 實現(xiàn)技術(shù)分析

賬戶映射法實現(xiàn)起來不難,關(guān)鍵在于如何在各個WEB系統(tǒng)之間正確獲取用戶信息來進(jìn)行認(rèn)證。以下探討了獲取用戶信息的幾種方法。

3.1 通過鏈接參數(shù)傳遞用戶信息

當(dāng)用戶轉(zhuǎn)入另一個WEB系統(tǒng)時,WEB系統(tǒng)通過傳過來的鏈接參數(shù)來獲取用戶信息。例如http://127.0.0.1/webpages/index.aspx?user=name1,其中name1就是用戶名。查找用戶映射表,如果name1對映的用戶名name2被授權(quán)就可訪問相應(yīng)的頁面,而無需再次到登錄頁面進(jìn)行登錄,一切由系統(tǒng)自動判斷。

但是,直接在鏈接中傳遞用戶名存在很大的安全問題。未授權(quán)用戶很容易偽造鏈接來非法登錄WEB系統(tǒng)。因此,必須要對用戶信息進(jìn)行加密傳遞。有以下三種方案:

方案一,在門戶系統(tǒng)中加密然后傳遞給其他應(yīng)用系統(tǒng),如果門戶系統(tǒng)與要轉(zhuǎn)入的應(yīng)用系統(tǒng)的加解密算法不兼容,則會存在一個不能解密的問題。這樣,用戶信息就不能還原,應(yīng)用系統(tǒng)就不能識別用戶,授權(quán)肯定失敗。

方案二,加密和解密都在一臺服務(wù)器上進(jìn)行。在這臺服務(wù)器上分別提供加密和解密的Web Services,分別供門戶系統(tǒng)用來加密用戶信息和要進(jìn)入的WEB系統(tǒng)解密傳遞來的用戶信息。這樣,就可以相對安全的傳遞用戶信息了。但是,防君子不防小人,一旦知道了密鑰和加解密算法也很容易破解。所以,我們打算采用非對稱的RSA算法,只在客戶端留下加密用的公匙,這樣理論上密文即使被截獲了也不可能破解出來的。MD5不行,它是不可逆的。

方案三,將要傳遞的用戶信息生成摘要,再與要登錄系統(tǒng)的所有用戶信息摘要(必須是同一方法)直接比對。相對來說,方案三的工作量要大很多,因此不予采納。

3.2 通過Session ID傳遞用戶信息

用戶訪問一個網(wǎng)站時往往需要瀏覽許多網(wǎng)頁,建立許多連接,用戶和服務(wù)器的通信是通過HTTP完成的,由于HTTP無狀態(tài)記憶的特點,此次連接無法得到上次連接的狀態(tài)。因此,上次連接的合法化并不能保證下次連接也合法。

Session就是一個可以用來保存整個會話(包括從打開瀏覽器連接到服務(wù)器的某個頁面,到關(guān)閉瀏覽器整個過程)的對象。因此,可以將各個連接要用到的全局變量存儲在Session中,如用戶信息。而Session ID則是由服務(wù)器分配用來標(biāo)識Session的。每個Session ID對應(yīng)一個Session對象。這樣,只要用戶不注銷,任何頁面都可以通過Session ID獲知當(dāng)前用戶身份。

這對于所有WEB系統(tǒng)都在同一臺應(yīng)用服務(wù)器上是可行的,但對于分布式的WEB系統(tǒng)以及分布在不同服務(wù)器上的各個WEB系統(tǒng)來說,就無法通過Session ID來傳遞用戶信息。因為,每個Session ID只對應(yīng)自己服務(wù)器上的Session對象,而Session對象里的用戶信息是存儲在分配ID的服務(wù)器內(nèi)存中的。也就是說,通過程序傳遞過來的Session ID不可能在另一臺服務(wù)器內(nèi)存中找到相應(yīng)的用戶信息。我們的門戶WEB系統(tǒng)與其它WEB系統(tǒng)一般都分布在不同的服務(wù)器上,無法獲取用戶信息,也就無法對其進(jìn)行身份認(rèn)證。因此,不能僅僅傳遞Session ID,而必須傳遞Session中的用戶信息。

3.3 通過Cookie傳遞用戶信息

既然需要保存的是Session中的用戶信息,那不如直接用Cookie來保存,也省去創(chuàng)建Session對象的開銷。

實現(xiàn)起來可以分兩步:首先,在用戶成功登陸門戶系統(tǒng)A時,在用戶本地建立Cookie,保存用戶身份信息;然后,在用戶點擊另一個WEB系統(tǒng)B的鏈接時,B系統(tǒng)把保存在用戶機(jī)器上的Cookie提取出來進(jìn)行驗證,如果Cookie有效則將用戶定向到要訪問的頁面上,無效則拒絕用戶訪問請求資源并要求用戶重新登錄。

Cookie是在HTTP協(xié)議下服務(wù)器或腳本維護(hù)客戶機(jī)上信息的一種方式,Cookie以文件形式保存在客戶機(jī)的硬盤上,從安全性分析,極易被被篡改,而且里面保存的用戶隱私也容易被泄露。那么如何保證Cookie的安全性和有效性呢?有兩種方法,一是對Cookie進(jìn)行加密保存,這樣也就需要配套的解密過程;還有一個就是采用SSL等技術(shù)加密Cookie的傳輸通道,并在用戶退出時刪除他本機(jī)上的Cookie。

4 系統(tǒng)設(shè)計

經(jīng)過以上分析與研究,我們選定賬戶映射法來實現(xiàn)單點登錄,并用RSA算法加密后的用戶信息作為鏈接參數(shù)在系統(tǒng)間進(jìn)行傳遞。以車務(wù)段內(nèi)網(wǎng)WEB信息系統(tǒng)改造為例作具體說明。

由于車務(wù)段的OA系統(tǒng)還集成了值班表系統(tǒng)、站長日志、財務(wù)預(yù)算、設(shè)備報修等其他系統(tǒng),用戶量最多,功能最強(qiáng)大,使用率最高,因此,將其作為單點登錄系統(tǒng)的門戶系統(tǒng),即將它的用戶登錄頁面作為唯一的登錄入口。然后,在OA系統(tǒng)的首頁加入了公文流轉(zhuǎn)系統(tǒng)、信息共享系統(tǒng)、職工崗位動態(tài)系統(tǒng)、節(jié)能節(jié)支預(yù)警系統(tǒng)的WEB鏈接,并對這些WEB系統(tǒng)進(jìn)行用戶映射改造,最后在應(yīng)用服務(wù)器上部署加解密服務(wù)的Web services。圖1以節(jié)能節(jié)支預(yù)警系統(tǒng)無縫接入OA系統(tǒng)為例,來演示實現(xiàn)單點登錄WEB系統(tǒng)的處理流程。

5 結(jié)束語

最大化方便用戶使用是信息系統(tǒng)設(shè)計的宗旨。信息化領(lǐng)域擴(kuò)大的同時,系統(tǒng)集成也逐漸提上日程,單點登錄既為用戶提供了便捷,也為信息系統(tǒng)集成打下了基礎(chǔ)。和國內(nèi)外流行的單點登錄解決方案相比,賬戶映射法有些過時,但對原有系統(tǒng)改造量最小,實現(xiàn)最容易,仍可作為鐵路內(nèi)網(wǎng)WEB系統(tǒng)實現(xiàn)單點登錄的首選。但是,若從電子商務(wù)與內(nèi)網(wǎng)信息集成發(fā)展的安全性考慮,構(gòu)建第三方統(tǒng)一認(rèn)證授權(quán)平臺,仍需作為日后新系統(tǒng)架構(gòu)形式進(jìn)行部署。

[1]李凡,王流一.《一種基于票據(jù)的單點登錄協(xié)議設(shè)計與實現(xiàn)》.計算機(jī)工程與科學(xué).2012年第2期.

[2]張旋.《一種基于證書的單點登錄方案設(shè)計》.信息技術(shù).2012年第8期.

責(zé)任編輯:王華 王輝

來稿日期:2012-10-31

猜你喜歡
車務(wù)段門戶單點
關(guān)隘:要道門戶
散文(2022年6期)2022-07-28 01:37:58
西域門戶——兩關(guān)遺址
歷元間載波相位差分的GPS/BDS精密單點測速算法
超薄異型坯連鑄機(jī)非平衡單點澆鑄實踐與分析
山東冶金(2019年5期)2019-11-16 09:09:10
渝貴鐵路首個暑運圓滿收官遵義車務(wù)段發(fā)送旅客141.06萬人次
遵義(2018年18期)2018-09-22 08:35:40
安全風(fēng)險管理在礦區(qū)鐵路車務(wù)段中的應(yīng)用
基于內(nèi)外網(wǎng)門戶系統(tǒng)的研究
電子制作(2018年10期)2018-08-04 03:24:34
數(shù)字電視地面?zhèn)鬏斢脝晤l網(wǎng)與單點發(fā)射的效果比較
16噸單點懸掛平衡軸的優(yōu)化設(shè)計
中小型高校圖書館門戶的設(shè)計與實現(xiàn)——以吉林師范大學(xué)圖書館門戶為例
圖書館界(2013年6期)2013-03-11 18:50:40
屯留县| 日喀则市| 平山县| 元朗区| 荔波县| 牡丹江市| 普兰县| 顺义区| 郁南县| 镇沅| 龙游县| 安阳市| 武隆县| 高清| 鄯善县| 清苑县| 福州市| 象山县| 商水县| 永康市| 西藏| 隆子县| 大方县| 灌南县| 子长县| 天长市| 大荔县| 华安县| 修文县| 河北省| 涡阳县| 清远市| 津南区| 盱眙县| 许昌市| 金阳县| 高雄市| 合作市| 剑川县| 洞口县| 盱眙县|