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

        ?

        基于UCenter的單點登錄系統(tǒng)的設(shè)計與實現(xiàn)

        2015-08-15 00:54:11
        科技視界 2015年1期
        關(guān)鍵詞:跨域服務(wù)器端單點

        王 蕾

        (山東工商學(xué)院網(wǎng)絡(luò)中心,山東 煙臺 264005)

        隨著高校數(shù)字化校園建設(shè)的不斷發(fā)展,高校各個部門建設(shè)了各自需要的應(yīng)用系統(tǒng),由于沒有統(tǒng)一的規(guī)劃和設(shè)計,各應(yīng)用系統(tǒng)直接沒有聯(lián)系,各自為營,每個系統(tǒng)都有一套帳號密碼,用戶將不得不按照各個應(yīng)用系統(tǒng)的要求分別登錄進入相應(yīng)的系統(tǒng),這不僅需要多個系統(tǒng)管理員維護管理各個應(yīng)用系統(tǒng)的用戶信息庫,并且用戶需要記憶多個帳戶和口令,使用極為不便,容易混淆,同時具有很大的安全隱患。單點登錄技術(shù)(single sign on,SSO)在數(shù)字化校園信息集成中成為關(guān)鍵技術(shù),用戶只需一次身份驗證,就可對所有被授權(quán)的應(yīng)用系統(tǒng)或資源進行無縫的訪問,從而提高工作效率,降低操作成本,提高系統(tǒng)的整體安全性,而且還能為進一步的應(yīng)用系統(tǒng)集成奠定基礎(chǔ),對高校的信息化建設(shè)和發(fā)展具有十分重要的意義。

        1 單點登錄技術(shù)研究現(xiàn)狀

        國內(nèi)單點登錄技術(shù)研究主要集中在高校和企業(yè),清華大學(xué)、北京大學(xué)、上海交通大學(xué)和華南理工大學(xué)都實現(xiàn)了自己的單點登錄系統(tǒng),這些系統(tǒng)不是很成熟,都沒有公開共享。企業(yè)有吉大正元的JITSSO系統(tǒng)和神舟融信開發(fā)的UTrust SSO系統(tǒng),這些系統(tǒng)都是商業(yè)化解決方案,可以購買使用。國內(nèi)企業(yè)如提供數(shù)字化校園解決方案都實現(xiàn)了單點登錄系統(tǒng),如果北京希爾、沈陽東軟、廣州聯(lián)奕統(tǒng)和金智教育,這些系統(tǒng)解決方法都是在Yale-CAS單點登錄技術(shù)基礎(chǔ)上修改完善實現(xiàn)的。

        國外成熟的單點登錄解決方案中主要有:基于Psssport協(xié)議的單點登錄解決方案、基于SAML協(xié)議的單點登錄解決方案和基于Yale-CAS協(xié)議的單點登錄解決方案。其中微軟公司的基于Psssport協(xié)議的解決方案是基于.NET語言開發(fā)的,只能在Windows服務(wù)器上使用?;赟AML協(xié)議的單點登錄解決方案通過XML規(guī)范傳輸數(shù)據(jù),數(shù)據(jù)流較大時,網(wǎng)絡(luò)開銷比較大。Yale-CAS單點登錄解決方案由于其體系結(jié)構(gòu)設(shè)計合理、開源、配置簡單和客戶端支持廣泛等優(yōu)點而得到廣泛應(yīng)用。

        2 UCenter單點登錄相關(guān)技術(shù)和機制分析

        UCenter中文意思就是“用戶中心”,是北京康盛新創(chuàng)科技有限責(zé)任公司的一款開源的一站式登錄解決方案,基于php開發(fā),擁有完善的接口,通過修改可以掛接不同架構(gòu)第三方web應(yīng)用,實現(xiàn)單點登錄。

        2.1 p3p協(xié)議

        P3P(Platform for Privacy Preferences(隱私設(shè)定平臺規(guī)范)是萬維網(wǎng)聯(lián)盟(W3C)公布的一項隱私保護推薦標(biāo)準(zhǔn),旨在為網(wǎng)上沖浪的Internet用戶提供隱私保護。P3P通過匹配網(wǎng)站的隱私策略(PrivacyPolicy)和用戶瀏覽器的隱私偏好(PrivacyPreference)來決定是否允許將用戶的隱私數(shù)據(jù)提供給網(wǎng)站使用,如果匹配良好,則向網(wǎng)站提供用戶隱私數(shù)據(jù),如不能完全匹配,提示用戶進行處理。從技術(shù)上看,P3P包括了兩個組件:一個放在服務(wù)器端;另外一個放在客戶端,形成一個用戶代理。當(dāng)用戶登陸網(wǎng)站的時候,服務(wù)器端的組件根據(jù)網(wǎng)站的要求,會自動生成XML語言形式的用戶個人處理策略,這就像是貼在商店櫥窗外的公眾告示,而客戶端的組件就將這個“公眾告示”提供給用戶。

        2.2 Cookie文件

        Cookie是用戶訪問過的網(wǎng)站存放在用戶硬盤驅(qū)動器上的小數(shù)據(jù)文件,可使服務(wù)提供者在下次訪問時確認用戶的身份,并能夠用來追蹤用戶瀏覽器軌跡,以此分析用戶的興趣愛好。Cookie由服務(wù)器端生成,通過http協(xié)議的User-Agent字段發(fā)送,瀏覽器會將接收到Cookie保存到某個目錄下的文本文件內(nèi),下次訪問該網(wǎng)站時自動發(fā)送該Cookie給網(wǎng)站。正常的Cookie只能在一個應(yīng)用中共享,即一個Cookie只能由創(chuàng)建它的應(yīng)用獲得,不能跨域設(shè)置,但是單點登錄涉及的系統(tǒng)都是多應(yīng)用、多域名的,能夠通過p3p協(xié)議跨域設(shè)置Cookie。

        2.3 跨域設(shè)置Cookie

        網(wǎng)站程序只需要設(shè)置P3P HTTP Header,跨域設(shè)置Cookie就可以成功。

        asp.net設(shè)置p3p的方法:HttpContext.Current.Response.AddHeader("p3p","CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"")。

        php設(shè)置p3p的方法:header('P3P:CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"')。

        java設(shè)置 p3p的方法:response.addHeader("P3P","CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"")。

        這些標(biāo)簽就是P3P所規(guī)定的,瀏覽器會根據(jù)這些標(biāo)簽決定是否接受 cookie,實踐證明,所有瀏覽器都支持P3P,能夠設(shè)置Cookie,能夠?qū)崿F(xiàn)多域名多應(yīng)用系統(tǒng)單點登錄。

        2.4 UCenter單點登錄機制分析

        2.4.1 UCenter單點登錄流程

        用戶在任一web應(yīng)用登錄界面輸入用戶和密碼進行登錄,通過uc_client文件夾client.php中的uc_user_login函數(shù)進行驗證,通過一系列函數(shù)調(diào)用最終通過socket和UCenter服務(wù)器進行通訊,傳遞數(shù)據(jù)進行驗證。如驗證通過,返回用戶ID,用戶姓名,加密密碼等信息,然后執(zhí)行uc_user_synlogin函數(shù),通過socket和UCenter服務(wù)器通訊傳遞用戶ID,UCenter服務(wù)器執(zhí)行user.php中的onsyslogin函數(shù),通過循環(huán)在UCenter服務(wù)器端下注冊的所有應(yīng)用返回在UCenter服務(wù)器端注冊的所有web應(yīng)用的js調(diào)用,js調(diào)用能夠跨域設(shè)置Cookie,腳本樣式,通過此腳本調(diào)用相應(yīng)web應(yīng)用下uc.php文件中的uc_note類中的synlogin函數(shù),syslogin函數(shù)發(fā)送p3p HTTP Header后,在相應(yīng)web應(yīng)用下添加Cookie(也可以同時設(shè)置Session),實現(xiàn)了所有web應(yīng)用的跨域單點登陸。

        2.4.2 UCenter的單點登錄機制分析

        簡單概況為:跨域設(shè)置用戶信息。任一web應(yīng)用socket遠程打開UCenter服務(wù)器端,認證通過,然后傳輸已經(jīng)登陸的用戶UID,UCenter服務(wù)器端循環(huán)通過JS調(diào)用各應(yīng)用下的api,在各個web應(yīng)用下設(shè)置Cookie,實現(xiàn)單點登錄,而保證Cookie通用的則是P3P協(xié)議的使用。單點登出原理相同。

        UCenter系統(tǒng)中Authcode函數(shù)可以通過一個 KEY,生成動態(tài)的密文,并可以再通過這個KEY來解密,保障了系統(tǒng)傳輸信息的安全性。

        3 Web應(yīng)用單點登錄系統(tǒng)設(shè)計與實現(xiàn)

        3.1 UCenter服務(wù)器端搭建

        首先從北京康盛新創(chuàng)科技有限責(zé)任公司官方網(wǎng)站下載UCenter 1.6.0版本代碼,在服務(wù)器上按照提示安裝,過程簡單明了,然后為UCenter配置域名。UCenter安裝完畢后,添加應(yīng)用和用戶數(shù)據(jù),添加應(yīng)用注意事項:應(yīng)用類型選擇 “其他”,應(yīng)用的主URL類似填寫http://www.xxx.com,通訊密鑰填寫不同字符,最大64字節(jié),應(yīng)用接口文件名稱一般為uc.php,但不限制于此,可根據(jù)實際情況填寫。應(yīng)用添加成功后,生成應(yīng)用配置信息,需要記錄保存。

        3.2 Web應(yīng)用單點登錄功能實現(xiàn)

        3.2.1 基于php語言開發(fā)web應(yīng)用單點登錄實現(xiàn)

        Web應(yīng)用只需修改登錄登出模塊即可,在Web應(yīng)用根目錄復(fù)制粘貼UCenter 1.6.0中的uc_client、api文件夾和添加config.inc.php文件,config.inc.php文件內(nèi)容是在UCenter服務(wù)器端添加應(yīng)用后生成的應(yīng)用配置信息。在Web應(yīng)用登錄模塊中,引入uc_client文件夾中的client.php文件和config.inc.php文件。

        Web應(yīng)用賬戶登錄代碼為:

        list($uid,$username,$password,$email)=uc_user_login($_POST[′username′],$_POST[′password′]);

        setcookie(′Example_auth′,",-86400);

        if($uid>0){

        //用戶登陸成功,設(shè)置 Cookie,加密直接用 uc_authcode函數(shù),用

        戶使用自己的函數(shù)

        setcookie(′Example_auth′,uc_authcode($uid." ".$username,′ENCODE′));

        //生成同步登錄的代碼

        $ucsynlogin=uc_user_synlogin($uid);

        echo ′登 錄 成 功 ′.$ucsynlogin.′
        ′;

        exit;

        }elseif($uid==-1){

        為了在全球經(jīng)濟一體化的大環(huán)境中提高國民競爭力,同時服務(wù)一帶一路的國家戰(zhàn)略,我國的英語人才培養(yǎng)質(zhì)量需要不斷提升。面臨我國學(xué)生在英語學(xué)習(xí)方面高投入、低產(chǎn)出的現(xiàn)狀,需要學(xué)生、教師、學(xué)校、教育界乃至于出版市場,大家各方面形成合力,在教學(xué)資源、評價標(biāo)準(zhǔn)、英語環(huán)境、市場資源等方面進行完善。通過沉浸式英語習(xí)的環(huán)境營造、教學(xué)資源的趣味化,評價標(biāo)準(zhǔn)導(dǎo)向的多元化,以及市場資源的豐富化。我們期待,在不久的將來,可以看到國民英語教育能效實現(xiàn)明顯的提升。

        echo′用戶不存在,或者被刪除′;

        }elseif($uid==-2){

        echo ′密碼錯′;

        }else{

        echo ′未定義′;

        }

        3.2.2 基于java語言開發(fā) web應(yīng)用單點登錄實現(xiàn)

        UCenter系統(tǒng)只提供了php版本的api客戶端,但系統(tǒng)是開源的,完全可以使用java語言實現(xiàn)相應(yīng)功能。本文使用了互聯(lián)網(wǎng)上提供的api代碼,下載地址:http://code.google.com/p/discuz-ucenter-api-forjava/,將下載的java api中的代碼添加到項目中,根據(jù)UCenter服務(wù)器端添加應(yīng)用生成的配置信息修改config.properties,web.xml中添加:

        api

        *.api.UC

        2

        api

        /api/uc.php

        Web應(yīng)用引用java api中的XMLHelper和Client類,賬戶登錄代碼為:

        Client e=new Client();

        String result=e.uc_user_login("username","password");

        LinkedList[String>rs=XMLHelper.uc_unserialize(result);

        if(rs.size()>0){

        int$uid=Integer.parseInt(rs.get(0));

        if($uid>0){

        System.out.println("登錄成功");

        String$ucsynlogin=e.uc_user_synlogin($uid);

        System.out.println("單點登錄成功"+$ucsynlogin);

        //本地登陸代碼 //TODO.......

        }else if($uid==-1){

        System.out.println("用戶不存在,或者被刪除");

        }else if($uid==-2){

        System.out.println("密碼錯");

        }else{

        System.out.println("未定義");

        }

        至此,基于java語言開發(fā)的web應(yīng)用單點登錄功能實現(xiàn),單點登出功能類似。

        4 結(jié)語

        本文基于康盛新創(chuàng)公司的開源產(chǎn)品UCenter系統(tǒng),實現(xiàn)了php語言和java語言開發(fā)web應(yīng)用單點登錄,Asp語言和.net語言開發(fā)web應(yīng)用本文沒有給出代碼,同樣也可以使用此項技術(shù)實現(xiàn)單點登錄,使用單點登錄系統(tǒng)減少了用戶的多次登錄認證,減輕了維護人員數(shù)據(jù)維護工作量,提高了用戶便利性,具有一定的實用和推廣價值。下階段將對單點登錄系統(tǒng)功能、性能和安全性進行深入研究。

        [1]劉峰,王崢,等.基于CAS的門戶單點登錄方案[J].計算機系統(tǒng)應(yīng)用,2011,30(6).

        [2]陳麗,于東海.Kerberos協(xié)議在單點登錄系統(tǒng)中的改進及應(yīng)用[J].計算機系統(tǒng)應(yīng)用,2011,20(1).

        [3]單曙兵,孔磊.基于Acegi授權(quán)管理的高可用單點登錄系統(tǒng)的研究與設(shè)計[J].計算機應(yīng)用與軟件,2013,30(7).

        [4]高昊江,肖田元.基于 SAML改進的單點登錄模型研究[J].計算機工程與設(shè)計,2011,32(3).

        猜你喜歡
        跨域服務(wù)器端單點
        跨域異構(gòu)體系對抗聯(lián)合仿真試驗平臺
        基于多標(biāo)簽協(xié)同學(xué)習(xí)的跨域行人重識別
        為群眾辦實事,嶗山區(qū)打出“跨域通辦”組合拳
        讀報參考(2022年1期)2022-04-25 00:01:16
        G-SRv6 Policy在跨域端到端組網(wǎng)中的應(yīng)用
        歷元間載波相位差分的GPS/BDS精密單點測速算法
        超薄異型坯連鑄機非平衡單點澆鑄實踐與分析
        山東冶金(2019年5期)2019-11-16 09:09:10
        淺析異步通信層的架構(gòu)在ASP.NET 程序中的應(yīng)用
        成功(2018年10期)2018-03-26 02:56:14
        數(shù)字電視地面?zhèn)鬏斢脝晤l網(wǎng)與單點發(fā)射的效果比較
        16噸單點懸掛平衡軸的優(yōu)化設(shè)計
        在Windows中安裝OpenVPN
        成人免费毛片内射美女-百度| 亚洲国产一区二区三区精品| 极品美女扒开粉嫩小泬图片| 久久人妻内射无码一区三区| 手机看片福利盒子久久青| 黑人免费一区二区三区| 中文字幕中文字幕在线中二区 | 亚洲欧美精品91| 日韩少妇人妻一区二区| 亚洲国产中文字幕精品| 正在播放国产多p交换视频| 欧美人与动牲交片免费| 淫妇日韩中文字幕在线| 中文字幕一二三四五六七区| 日日碰狠狠添天天爽五月婷| 波多野结衣亚洲一区二区三区| 人妻少妇久久精品一区二区| 国产乱人精品视频av麻豆网站| 中文在线8资源库| 四虎精品成人免费观看| 国产一区二区一级黄色片| 欧美白人战黑吊| 妓院一钑片免看黄大片| 久久久久人妻精品一区5555| 亚洲av高清不卡免费在线| 国产一区二区三区在线电影| 亚洲肥老熟妇四十五十路在线| 国产av乳头久久一区| 亚洲人不卡另类日韩精品| 无遮无挡爽爽免费毛片| 亚洲国产香蕉视频欧美| 亚洲av成人永久网站一区| 欧美成人看片一区二区三区尤物| 国内露脸中年夫妇交换| 国产一区二区黑丝美女| 亚洲精品国产第一综合色吧| 特级婬片国产高清视频| 久久精品无码一区二区三区不卡| 久久免费亚洲免费视频| 国产激情电影综合在线看| 久久福利资源国产精品999|