亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺析單點(diǎn)登錄系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

        2014-04-29 00:00:00胡朝清

        摘 要:本文首先簡(jiǎn)要介紹了統(tǒng)一認(rèn)證系統(tǒng)的設(shè)計(jì),分析統(tǒng)一認(rèn)證系統(tǒng)的不足,引出單點(diǎn)登錄系統(tǒng)的必要性,敘述了單點(diǎn)登錄系統(tǒng)的設(shè)計(jì)方法,并通過(guò)Shibboleth介紹了單點(diǎn)登錄系統(tǒng)的架構(gòu)以及工作流程。

        關(guān)鍵詞:統(tǒng)一認(rèn)證;單點(diǎn)登錄;中間件;Shibboleth;網(wǎng)絡(luò)安全

        中圖分類號(hào):TP311.52

        在網(wǎng)站建設(shè)的過(guò)程中,多個(gè)應(yīng)用系統(tǒng)的開(kāi)發(fā)都是在不同的時(shí)期完成。由于各應(yīng)用系統(tǒng)在功能側(cè)重上、設(shè)計(jì)方法上和開(kāi)發(fā)技術(shù)上都有所不同,因而就形成了各自獨(dú)立的用戶庫(kù)和用戶認(rèn)證體系。但隨著網(wǎng)站的不斷增加,必然會(huì)出現(xiàn)同一個(gè)用戶會(huì)使用網(wǎng)站的多應(yīng)用系統(tǒng),但在每個(gè)應(yīng)用系統(tǒng)中又有獨(dú)立的賬號(hào),沒(méi)有一個(gè)整體上的網(wǎng)站用戶賬號(hào)的概念,進(jìn)入每一個(gè)應(yīng)用系統(tǒng)前都需要以該應(yīng)用系統(tǒng)的賬號(hào)來(lái)登錄。因此,這樣的用戶在不同的應(yīng)用系統(tǒng)間實(shí)現(xiàn)同步使用用戶名和密碼是一件非常繁瑣的事情,為了改善用戶體驗(yàn),需要設(shè)計(jì)一些機(jī)制來(lái)簡(jiǎn)化用戶名、密碼的同步過(guò)程。

        1 統(tǒng)一認(rèn)證系統(tǒng)

        如果用戶使用同一個(gè)用戶名和密碼就能登錄所有的應(yīng)用系統(tǒng),并且在一個(gè)應(yīng)用系統(tǒng)中修改了密碼后,就能在所有其它應(yīng)用系統(tǒng)中生效,這樣的系統(tǒng)稱為統(tǒng)一認(rèn)證系統(tǒng)。使用統(tǒng)一認(rèn)證可以省去用戶在切換不同應(yīng)用系統(tǒng)間用戶名和密碼的過(guò)程,從而改善用戶的應(yīng)用,但仍然需要用戶使用每一個(gè)應(yīng)用系統(tǒng)的時(shí)候重新登錄。下面列舉案例加以說(shuō)明。

        某一公司同時(shí)提供了門戶網(wǎng)站服務(wù)器與郵箱服務(wù)器的服務(wù),由于門戶網(wǎng)站服務(wù)器與郵箱服務(wù)器是有密切關(guān)系的兩個(gè)網(wǎng)站,因此,使用郵箱服務(wù)器的賬號(hào)是可以登錄門戶網(wǎng)站服務(wù)器的。兩個(gè)服務(wù)器之間統(tǒng)一認(rèn)證是這樣實(shí)現(xiàn)的。

        門戶網(wǎng)站將用戶提交的請(qǐng)求轉(zhuǎn)發(fā)給郵箱服務(wù)器的認(rèn)證模塊,然后郵箱服務(wù)器認(rèn)證用戶的身份后,返回一個(gè)表單,表單中包含有用戶的用戶名和密碼,然后再將該表單通過(guò)JavaScript技術(shù)自動(dòng)向門戶網(wǎng)站服務(wù)器提交。當(dāng)門戶網(wǎng)站服務(wù)器獲得提交的用戶名和密碼后,再次對(duì)用戶的身份進(jìn)行認(rèn)證。

        這樣的做法存在著不安全的因素,所用的用戶名和密碼都是明文發(fā)送給客戶端,然后再由客戶端明文提交給另一個(gè)網(wǎng)站,而且把用戶名和密碼直接寫在表單中,這意味著用戶可以在自己本地計(jì)算機(jī)中找到網(wǎng)頁(yè)緩存文件,就有可能直接導(dǎo)致敏感信息泄露。

        為了避免信息的泄露,需要設(shè)計(jì)一套與注冊(cè)中心的統(tǒng)一認(rèn)證系統(tǒng)。該系統(tǒng)的工作流程是用戶在網(wǎng)站通過(guò)HTTPS表單提交用戶名和密碼,然后網(wǎng)站服務(wù)器端通過(guò)SSL連接將用戶名、密碼提交給注冊(cè)中心,注冊(cè)中心返回認(rèn)證信息。整個(gè)數(shù)據(jù)傳輸過(guò)程都是加密的,而且客戶端也沒(méi)有任何敏感信息保留,整個(gè)傳輸環(huán)境外部是安全的,但用戶名、密碼到達(dá)服務(wù)器端后被解密,然后重新加密,因此在服務(wù)器端內(nèi)部,用戶名、密碼是明文,如果有人在服務(wù)器端上實(shí)施釣魚(yú)式攻擊,很容易獲取所有敏感數(shù)據(jù)。為了規(guī)避釣魚(yú)式攻擊的風(fēng)險(xiǎn),在網(wǎng)頁(yè)面中嵌入一個(gè)表單,把數(shù)據(jù)直接提交給注冊(cè)中心,不再經(jīng)過(guò)服務(wù)器端,認(rèn)證通過(guò)后,注冊(cè)中心服務(wù)器給客戶端返回一個(gè)隨機(jī)字符串,對(duì)應(yīng)注冊(cè)中心服務(wù)端的一個(gè)Session對(duì)象??蛻舳耸褂眠@個(gè)字符串查詢網(wǎng)站的其它頁(yè)面,將字符串傳給服務(wù)器端,然后服務(wù)器端使用這個(gè)字符串向注冊(cè)中心服務(wù)器查詢用戶登錄信息。這樣的認(rèn)證過(guò)程無(wú)論是傳輸途徑還是每個(gè)節(jié)點(diǎn),數(shù)據(jù)均是安全的。

        2 單點(diǎn)登錄系統(tǒng)

        統(tǒng)一認(rèn)證系統(tǒng)雖然解決了在不同站點(diǎn)之間同步用戶名和密碼的問(wèn)題,但當(dāng)用戶訪問(wèn)不同站點(diǎn)的時(shí)候,仍然需要使用同樣的用戶名和密碼再登錄一次。為了進(jìn)一步改善用戶體驗(yàn),需要提出一種更先進(jìn)的單點(diǎn)登錄系統(tǒng)。所謂單點(diǎn)登錄系統(tǒng),就是說(shuō)用戶在該站點(diǎn)聯(lián)盟中的任何一個(gè)站點(diǎn)登錄一次之后,訪問(wèn)其余其它任何一個(gè)站點(diǎn),都不需要再次輸入用戶名、密碼再次登錄。

        單點(diǎn)登錄系統(tǒng)至少需要提供以下幾個(gè)特性:

        (1)加密傳輸數(shù)據(jù),所有敏感數(shù)據(jù)在傳輸過(guò)程中必須加密。

        (2)不泄露敏感數(shù)據(jù),不能在除了認(rèn)證服務(wù)器之外的任何第三方機(jī)器上進(jìn)行解密操作。

        (3)使用、部署方便,不給開(kāi)發(fā)與維護(hù)造成太多困難。

        一個(gè)實(shí)用的單點(diǎn)登錄系統(tǒng)一般需要包括以下三個(gè)部分:認(rèn)證系統(tǒng)、權(quán)限控制系統(tǒng)和資源訪問(wèn)系統(tǒng)。

        2.1 認(rèn)證系統(tǒng)

        認(rèn)證系統(tǒng)的作用是確認(rèn)用戶的身份:即通過(guò)某種方式,確認(rèn)該用戶不是由其它用戶冒充的。目前常用的認(rèn)證方式主要有:

        2.1.1 密碼認(rèn)證,用戶輸入用戶名、密碼,服務(wù)器進(jìn)行認(rèn)證。密碼認(rèn)證使用起來(lái)比較方便,但如果服務(wù)端被攻擊,容易導(dǎo)致在服務(wù)端使用釣魚(yú)式攻擊騙取用戶密碼。

        2.1.2 基于公鑰/私鑰的認(rèn)證:即服務(wù)器持有用戶公鑰,用戶使用私鑰進(jìn)行Challenge的方式確認(rèn)身份。使用該方式驗(yàn)證密碼,服務(wù)端對(duì)客戶端的密鑰完全一無(wú)所知,即使服務(wù)端被攻擊,也無(wú)法通過(guò)任何手段騙取客戶端的密鑰。缺點(diǎn)是使用起來(lái)比較繁瑣。

        為了實(shí)現(xiàn)單點(diǎn)登錄系統(tǒng),我們必須使用第三方的認(rèn)證服務(wù)器,所有的認(rèn)證操作都通過(guò)這臺(tái)服務(wù)器進(jìn)行。并且為了保證數(shù)據(jù)的安全性,認(rèn)證數(shù)據(jù)不應(yīng)該經(jīng)過(guò)其它機(jī)器。

        2.2 權(quán)限控制系統(tǒng)

        權(quán)限控制系統(tǒng)包括授權(quán)系統(tǒng)和控制系統(tǒng)兩部分。授權(quán)系統(tǒng)的作用是把系統(tǒng)中需要特殊權(quán)限的資源授權(quán)給某個(gè)特定用戶,讓該用戶擁有訪問(wèn)該部分資源的能力;控制系統(tǒng)的作用是當(dāng)用戶的身份確定之后,判定用戶擁有哪些權(quán)限,然后對(duì)用戶提出的訪問(wèn)請(qǐng)求采取接納或拒絕策略。

        在許多應(yīng)用場(chǎng)合,為了提高授權(quán)的操作方便性,我們往往會(huì)引入“組”的概念:將用戶加入一個(gè)或多個(gè)組,再針對(duì)組進(jìn)行授權(quán)。

        使用權(quán)限控制系統(tǒng),可以避免資源訪問(wèn)系統(tǒng)直接和用戶個(gè)體打交道,簡(jiǎn)化資源訪問(wèn)系統(tǒng)的設(shè)計(jì),并提高整個(gè)系統(tǒng)的靈活性。

        在單點(diǎn)登錄系統(tǒng)中,權(quán)限控制既可以放在統(tǒng)一的認(rèn)證服務(wù)器上,也可以單獨(dú)存在于每一臺(tái)具體的應(yīng)用服務(wù)器上。如果希望統(tǒng)一對(duì)所有服務(wù)器上的用戶進(jìn)行權(quán)限控制,則將權(quán)限控制服務(wù)器放在統(tǒng)一的認(rèn)證服務(wù)器上;如果將權(quán)限控制分布在每一臺(tái)具體的應(yīng)用服務(wù)器上的話,則認(rèn)證服務(wù)器就只負(fù)責(zé)確認(rèn)用戶的身份,而把用戶能夠做什么樣的操作交給了具體的應(yīng)用服務(wù)器去負(fù)責(zé)了。

        2.3 資源訪問(wèn)系統(tǒng)

        資源訪問(wèn)系統(tǒng)就是進(jìn)行實(shí)際的工作的系統(tǒng)。當(dāng)用戶通過(guò)身份認(rèn)證和授權(quán)認(rèn)證之后,資源訪問(wèn)系統(tǒng)就可以為該用戶服務(wù),進(jìn)行相應(yīng)的操作。

        在單點(diǎn)登錄系統(tǒng)中,資源訪問(wèn)系統(tǒng)就是為用戶提供具體服務(wù)的網(wǎng)站。

        3 Shibboleth單點(diǎn)登錄系統(tǒng)的設(shè)計(jì)

        Shibboleth是一個(gè)針對(duì)SSO的開(kāi)源項(xiàng)目,它是一個(gè)基于Java/JSP的Web單點(diǎn)登錄網(wǎng)絡(luò)中間件。Shibboleth項(xiàng)目主要應(yīng)用在校園內(nèi)web資源共享,以及校園間的應(yīng)用系統(tǒng)的用戶身份聯(lián)合認(rèn)證,目前在瑞士得到了非常廣泛的應(yīng)用,在其它地方也有許多成功的實(shí)例。

        3.1 Shibboleth的架構(gòu)

        shibboleth單點(diǎn)登錄系統(tǒng)分為“認(rèn)證服務(wù)器選擇器”、“認(rèn)證服務(wù)器”和“資源提供商”三個(gè)部分,各部分之間的關(guān)系如圖1所示。

        “認(rèn)證服務(wù)器選擇器”的作用是,如果統(tǒng)一認(rèn)證系統(tǒng)授權(quán)若干臺(tái)服務(wù)器為用戶提供認(rèn)證服務(wù)的話,用戶在登錄的時(shí)候可以通過(guò)認(rèn)證服務(wù)器選擇器來(lái)選擇使用哪一臺(tái)服務(wù)器認(rèn)證自己的身份。如果只使用唯一的一臺(tái)認(rèn)證服務(wù)器的話,這一個(gè)部件可以省略。

        “認(rèn)證服務(wù)器”是為用戶提供具體的認(rèn)證的。根據(jù)實(shí)際項(xiàng)目需要不同,我們可以選擇把權(quán)限控制系統(tǒng)配置在認(rèn)證服務(wù)器上或者在具體的資源提供商中。

        “資源提供商”就是提供具體服務(wù)的模塊。

        3.2 認(rèn)證過(guò)程簡(jiǎn)述

        3.2.1 當(dāng)用戶訪問(wèn)資源提供商提供的一個(gè)受限資源的時(shí)候,資源提供商先檢查Session,判斷用戶是否具有相應(yīng)權(quán)限。如果已經(jīng)登錄且有權(quán)限,認(rèn)證系統(tǒng)生成統(tǒng)一的認(rèn)證標(biāo)識(shí)交給用戶,并對(duì)標(biāo)識(shí)進(jìn)行校驗(yàn),判斷其有效性。

        3.2.2 用戶選擇使用哪臺(tái)服務(wù)器進(jìn)行認(rèn)證,選擇完畢后選擇認(rèn)證服務(wù)器將用戶重定向到相應(yīng)的認(rèn)證服務(wù)器上。

        3.2.3 用戶通過(guò)加密的HTTPS連接訪問(wèn)認(rèn)證服務(wù)器,使用某種方式認(rèn)證自己的身份,Shibboleth支持輸入用戶名、密碼的方式,也支持使用個(gè)人數(shù)字證書(shū)的方式進(jìn)行認(rèn)證。

        3.2.4 如果認(rèn)證成功,則認(rèn)證服務(wù)器創(chuàng)建一個(gè)隨機(jī)字符串作為認(rèn)證信息的句柄,并將句柄返回客戶端。

        3.2.5 客戶端使用旬柄訪問(wèn)相應(yīng)的系統(tǒng)資源提供商。

        3.2.6 資源提供商服務(wù)器創(chuàng)建加密的SSI。連接,通過(guò)Web Service訪問(wèn)認(rèn)證服務(wù)器,使用句柄向認(rèn)證服務(wù)器查詢登錄信息,認(rèn)證服務(wù)器向資源提供商提供XML格式的用戶權(quán)限表。

        3.2.7 認(rèn)證服務(wù)器分析用戶權(quán)限表,判斷用戶是否具有權(quán)限執(zhí)行相應(yīng)操作。

        3.2.8 執(zhí)行相應(yīng)操作為用戶提供服務(wù)。

        4 結(jié)束語(yǔ)

        通過(guò)shibboleth,我們能夠非常方便快捷地實(shí)現(xiàn)一個(gè)強(qiáng)大而高度可擴(kuò)展的統(tǒng)一認(rèn)證系統(tǒng),既可以在每臺(tái)應(yīng)用服務(wù)器上單獨(dú)判定權(quán)限,也可以使用中心認(rèn)證服務(wù)器統(tǒng)一進(jìn)行授權(quán)與權(quán)限控制。該項(xiàng)目體現(xiàn)了網(wǎng)絡(luò)中間件的強(qiáng)大威力,具有很高的學(xué)術(shù)價(jià)值與應(yīng)用價(jià)值。

        參考文獻(xiàn):

        [1]網(wǎng)站用戶單點(diǎn)登錄系統(tǒng)解決方案[EB/OL].http://www.ronghai.com/solution/2004—09/627/627_1.html.

        [2]陳觀林,張泳.企業(yè)信息門戶單點(diǎn)登錄系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2008(08).

        [3]Erdos M.Shibboleth_Architecture DRAFT v04,2001.

        [4]Shibboleth-Specification-DRAFT v10,2001.

        [5]齊鳳亮,薛海峰.數(shù)字化校園中單點(diǎn)登錄系統(tǒng)的實(shí)現(xiàn)[J].天津電大學(xué)報(bào),2011(02).

        作者簡(jiǎn)介:胡朝清(1970-),男,云南保山人,講師,研究方向:計(jì)算機(jī)科學(xué)與技術(shù)。

        作者單位:德宏師范高等??茖W(xué)校,云南德宏 678400

        国内揄拍国内精品少妇| 国产精品亚洲婷婷99久久精品 | 91视色国内揄拍国内精品人妻| 国产高清在线观看av片| 无码av中文一区二区三区| 成人a级视频在线播放| 宅男66lu国产在线观看| 国精品无码一区二区三区在线| 欧美人与动牲猛交xxxxbbbb| 性大片免费视频观看| 亚洲欧美精品伊人久久| 亚洲欧美日韩高清一区二区三区 | 中文字幕亚洲一区二区三区| 欧美熟妇另类久久久久久多毛 | 国产成人无码精品久久二区三区| 人妻aⅴ中文字幕| 亚洲精品无码高潮喷水在线| 无码av永久免费大全| 日本在线一区二区免费| 亚洲国产精品无码一线岛国| 一本一道av无码中文字幕﹣百度 | 亚洲区一区二区中文字幕| 精品一区二区亚洲一二三区| 国产黑丝美女办公室激情啪啪 | 巨爆乳中文字幕爆乳区| 日本少妇比比中文字幕| 国产女同舌吻1区2区| 99久久精品费精品国产一区二| 后入内射国产一区二区| 最新日本一道免费一区二区| 无码丰满熟妇一区二区| 无码av免费一区二区三区| 亚洲AV无码成人精品区天堂| 久久国产A∨一二三| 亚州韩国日本区一区二区片| 久久亚洲av熟女国产| 熟妇人妻精品一区二区视频免费的| 亚洲中文字幕无码爆乳app| 亚洲av无码一区二区三区人| 一卡二卡三卡视频| 日韩人妻高清福利视频|