• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于OAUTH2.0高校統(tǒng)一身份認(rèn)證的應(yīng)用研究

    2019-05-22 10:27:32胡貞華陳雪花何創(chuàng)新
    電腦知識與技術(shù) 2019年6期
    關(guān)鍵詞:令牌客戶端統(tǒng)一

    胡貞華 陳雪花 何創(chuàng)新

    摘要:隨著高校信息化建設(shè),已有許多信息化系統(tǒng)得到使用,但由于各系統(tǒng)資源不共享,每個系統(tǒng)的賬戶信息不通用,導(dǎo)致系統(tǒng)業(yè)務(wù)無有效的對接。通過發(fā)揮OAuth2.0認(rèn)證協(xié)議和SSL加密技術(shù)的優(yōu)點(diǎn),既可以解決高校統(tǒng)一身份認(rèn)證平臺建設(shè)過程中與外部系統(tǒng)互通的安全問題,又能達(dá)到校內(nèi)信息與資源共享的目的。

    關(guān)鍵詞:OAuth2.0;統(tǒng)一身份認(rèn)證;授權(quán);協(xié)議;

    中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2019)06-0265-03

    Research on the Application of Unified Identity Authentication in Universities Based on OAUTH2.0

    HU Zhen-hua, CHEN Xue-hua, HE Chuang-xin

    (Network and Educational Technology Center Shaoguan University, Shaoguan 512005, China)

    Abstract: With the construction of information technology in colleges and universities, many information systems have been used, but because the system resources are not shared, the account information of each system is not universal, resulting in no effective interconnection of system services. By utilizing the advantages of OAuth2.0 authentication protocol and SSL encryption technology, it can not only solve the security problem of intercommunication with external systems in the process of building a unified identity authentication platform, but also achieve the purpose of sharing information and resources within the school.

    Key words: OAuth2.0; uniform identity authentication; authorization; protocol;

    1 背景

    高校的信息化建設(shè)隨著信息技術(shù)發(fā)展在不斷前進(jìn),學(xué)校各級部門的應(yīng)用系統(tǒng)越來越多。但由于各系統(tǒng)互相獨(dú)立,賬戶資源不共享,導(dǎo)致用戶在使用多個系統(tǒng)時,需要設(shè)置多個賬戶密碼。通過建立一個統(tǒng)一的認(rèn)證中心,保證賬戶數(shù)據(jù)的一致性,不僅能減少開發(fā)成本,同時也方便了用戶,從而使系統(tǒng)間安全細(xì)粒度的業(yè)務(wù)集成成為可能。在OAuth2.0出現(xiàn)之前,高校的統(tǒng)一認(rèn)證一般采用openid的集成方式,該方式通過一個共用的密匙來確認(rèn)授權(quán)。但該方式容易被監(jiān)控,安全性較低,不能夠滿足當(dāng)今高校的業(yè)務(wù)應(yīng)用需求。

    OAuth2.0是當(dāng)前互聯(lián)網(wǎng)統(tǒng)一認(rèn)證授權(quán)中應(yīng)用最為廣泛的,國內(nèi)外知名的社交媒體,如twitter、facebook、sina等,都有用到OAuth2.0作為統(tǒng)一認(rèn)證協(xié)議[1]。通過將OAuth2.0作為認(rèn)證協(xié)議,建立統(tǒng)一的認(rèn)證中心,保證賬戶數(shù)據(jù)的一致性,減少開發(fā)成本,使系統(tǒng)變的更加安全。

    2 OAuth2.0認(rèn)證授權(quán)技術(shù)

    OAuth(開放授權(quán))協(xié)議是一個開放標(biāo)準(zhǔn),它是OpenID的一個補(bǔ)充完善,允許用戶在不提供用戶名和密碼的情況下,讓第三方應(yīng)用能夠訪問自己在某一網(wǎng)站上的資源,如用戶昵稱,頭像等信息[2]。

    OAuth2.0認(rèn)證授權(quán)技術(shù)是以原OAuth協(xié)議為基礎(chǔ),將重點(diǎn)放在開發(fā)的簡易性上而進(jìn)行的版本升級,但OAuth2.0不向下兼容OAuth1.0的協(xié)議。OAuth2.0通過允許第三方應(yīng)用來代表用戶獲得授權(quán),或者是資源所有者與HTTP服務(wù)商之間所授權(quán)批準(zhǔn)的交互動作代表用戶,同時為Web應(yīng)用、桌面應(yīng)用、手機(jī)和智能家居設(shè)備提供專門的認(rèn)證流程。OAuth2.0定義了四個角色:資源擁有者、資源服務(wù)器、客戶端、授權(quán)服務(wù)器,其工作流如圖1所示[3]。

    具體的工作流程是客戶端先從資源所有者處獲得授權(quán),才能使用授權(quán)服務(wù)器進(jìn)行身份驗證。授權(quán)服務(wù)器檢查從客戶端那邊收到的授權(quán)認(rèn)可,如果檢查無誤,則將分配令牌給客戶端。最后,資源服務(wù)器檢驗從客戶端那邊收到的令牌,若有效則返回客戶端所請求的資源。

    在OAuth2.0中,客戶端需要先從資源所有者中獲取授權(quán)碼,然后再使用授權(quán)碼與授權(quán)服務(wù)器交換訪問令牌。如果從一開始就直接返回訪問令牌,則會減少認(rèn)證時間,提高認(rèn)證性能,為什么OAuth2.0不這樣做呢?原因是客戶端與資源所有者通訊時采用重定向鏈接不是個安全的通訊通道,這種方式不適合進(jìn)行加密數(shù)據(jù)的傳輸,也就不適合傳輸訪問令牌。通過OAuth2.0的驗證方式,可以保證授權(quán)碼只能在客戶端中起作用,并且在最后訪問令牌的唯一持有方(客戶端)保證令牌不被泄露。

    3 OAuth2.0與統(tǒng)一身份認(rèn)證的結(jié)合

    3.1 賬戶存儲形式變更

    要將OAuth2.0與統(tǒng)一身份認(rèn)證平臺相結(jié)合,需要先轉(zhuǎn)變現(xiàn)有的用戶賬戶的數(shù)據(jù)存儲形式,將用戶的賬戶數(shù)據(jù)由一個統(tǒng)一的宿主平臺負(fù)責(zé)存儲,本地的系統(tǒng)只需要通過授權(quán)協(xié)議OAuth2.0即可使用[4]。用戶只需要登錄到宿主平臺,即可分權(quán)使用所有校園業(yè)務(wù)系統(tǒng)。

    3.2 選取可靠的宿主平臺

    選取一個穩(wěn)定性好,安全性高的宿主平臺十分重要,優(yōu)秀的宿主平臺能夠額外提供一些能夠幫助到信息化建設(shè)的應(yīng)用。從用戶的角度出發(fā),還要考慮到高校各類業(yè)務(wù)系統(tǒng)的使用頻率,建議將使用頻繁使用的系統(tǒng)作為宿主平臺的首選。

    3.3 OAuth2.0開放授權(quán)

    OAuth2.0的開放授權(quán)模式,實際上是通過從資源宿主平臺中獲取用戶的身份驗證信息和需要共享的數(shù)據(jù)資源,并且將此數(shù)據(jù)授權(quán)給其他系統(tǒng)應(yīng)用。被授權(quán)的系統(tǒng)也擁有自己獨(dú)有的數(shù)據(jù)資源,由用戶決定是否將這些資源共享出去。例如,在網(wǎng)絡(luò)教學(xué)平臺中,因為一些原因,系統(tǒng)希望部分網(wǎng)絡(luò)教學(xué)資源只保留在本地系統(tǒng)。此時通過開放授權(quán)協(xié)議,老師可以將其他系統(tǒng)上的教學(xué)資源共享到本地的網(wǎng)絡(luò)教學(xué)平臺上,此時學(xué)生可以通過網(wǎng)絡(luò)教學(xué)平臺,同時訪問本地的教學(xué)資源與其他系統(tǒng)上的教學(xué)資源。

    4 基于OAuth2.0統(tǒng)一身份認(rèn)證的系統(tǒng)設(shè)計

    高校各類系統(tǒng)業(yè)務(wù)系統(tǒng)應(yīng)歸集到統(tǒng)一身份認(rèn)證平臺中,各類業(yè)務(wù)系統(tǒng)的數(shù)據(jù)如用戶身份、訪問權(quán)限等信息均需通過統(tǒng)一身份認(rèn)證平臺進(jìn)行管理與共享,并由統(tǒng)一身份認(rèn)證系統(tǒng)來統(tǒng)一授權(quán)訪問,實現(xiàn)用戶數(shù)據(jù)統(tǒng)一管理。

    4.1 統(tǒng)一身份認(rèn)證平臺的系統(tǒng)構(gòu)架

    各子應(yīng)用系統(tǒng)在接入到統(tǒng)一認(rèn)證中心前,需要向認(rèn)證中心申請認(rèn)證,提供應(yīng)用名稱、應(yīng)用網(wǎng)址、應(yīng)用類型等基本應(yīng)用信息。因為OAuth2.0 核心流程所需要的數(shù)據(jù)均保存在認(rèn)證服務(wù)器數(shù)據(jù)庫中,所以每一個需要接入的子應(yīng)用系統(tǒng)都需要在統(tǒng)一身份認(rèn)證服務(wù)器注冊用于標(biāo)示該應(yīng)用信息,包括appid(客戶端id)、appsceret(App密匙)、appname(App名稱)、appuri(App回調(diào)安全url)等信息[5]。申請通過后,子系統(tǒng)管理員通過獲取管理地址,管理接入?yún)?shù)與權(quán)限,接入流程見圖2。

    統(tǒng)一認(rèn)證提供統(tǒng)一的用戶資源數(shù)據(jù),和統(tǒng)一的授權(quán)管理。每一個應(yīng)用通過統(tǒng)一認(rèn)證進(jìn)行接入,統(tǒng)一認(rèn)證中心是整個數(shù)字化校園平臺的核心。統(tǒng)一身份認(rèn)證中心利用LDAP目錄數(shù)據(jù)庫對高校用戶、高校組織機(jī)構(gòu)、信息資源等進(jìn)行統(tǒng)一存儲。統(tǒng)一身份認(rèn)證平臺工作流程如圖3所示:

    統(tǒng)一身份認(rèn)證平臺的工作流程如下:用戶訪問應(yīng)用系統(tǒng)A,應(yīng)用系統(tǒng)A定位到統(tǒng)一身份認(rèn)證平臺,用戶將登錄名、登錄口令、設(shè)備名稱等登錄信息提交給統(tǒng)一身份認(rèn)證平臺。通過驗證之后返回平臺返回一個ticket給用戶,并向應(yīng)用系統(tǒng)A返回用戶信息,由應(yīng)用系統(tǒng)A授權(quán)用戶訪問。用戶攜帶返回的ticket訪問應(yīng)用系統(tǒng)B,通過驗證之后應(yīng)用系統(tǒng)B授權(quán)用戶,用戶成功訪問應(yīng)用系統(tǒng)B。統(tǒng)一身份認(rèn)證平臺統(tǒng)一管理用戶信息并進(jìn)行統(tǒng)一認(rèn)證與授權(quán),避免了各應(yīng)用系統(tǒng)單獨(dú)授權(quán)。通過 webservice 松耦合的方式將單點(diǎn)登錄、授權(quán)、認(rèn)證等相對獨(dú)立的功能連接起來,既保證各功能在平臺上的獨(dú)立性,又能提高整個統(tǒng)一身份認(rèn)證平臺的安全性。

    4.2 基于OAuth2.0 機(jī)制認(rèn)證的實現(xiàn)

    第一步,獲取 access_token 訪問令牌。通過認(rèn)證接口接入第三方應(yīng)用時,可設(shè)置以下參數(shù):需設(shè)置client_id,該值為應(yīng)用在接入系統(tǒng)申請時,獲得的appid; response_type為必須設(shè)置,值為token;接著設(shè)置重定向路徑redirect_uri,需包含在申請時appuri的開始部分,否則參數(shù)無效;outer_type為非必須參數(shù),用于啟動如微博、QQ等類型的賬號登錄。

    4.3 系統(tǒng)安全性設(shè)計

    為保護(hù)客戶端Cookie信息的有效性和安全性,需對Cookie內(nèi)容進(jìn)行有效加密。采用SSL技術(shù)在客戶端和注冊應(yīng)用系統(tǒng)中加密通道,協(xié)助完成用戶的身份認(rèn)證,實現(xiàn)用戶登錄信息和用戶登錄憑證的加密傳輸,可有效地保證傳輸中安全。為加強(qiáng)用戶密碼的安全性,可以通過md5加鹽加密算法進(jìn)一步保全。首先,隨機(jī)的生成一個16位的字符串,然后將這字符串和用戶所輸入的密碼進(jìn)行MD5加密,接著將這字符串按照一個規(guī)則放入到50位的字符串中,在驗證時使用相同的規(guī)則將16位字符串取出來,對比 MD5 摘要,如果相同則密碼正確。通過這種加密設(shè)計即使數(shù)據(jù)庫泄露,用戶密碼也不會被查出來[6]。

    5 結(jié)束語

    在業(yè)務(wù)繁多的高校進(jìn)行信息化建設(shè)是比較復(fù)雜的,基于OAuth2.0的統(tǒng)一認(rèn)證可以集成開放平臺的賬號登錄,實現(xiàn)校內(nèi)外各個業(yè)務(wù)系統(tǒng)的統(tǒng)一認(rèn)證。特別是在本地化定制的教學(xué)平臺中,充分利用師生已有的微博、微信進(jìn)行綁定認(rèn)證,既可登錄本地教學(xué)資源又可以充分利用互聯(lián)網(wǎng)已有的學(xué)習(xí)資源,實現(xiàn)了信息與資源互通共享的目的。充分體現(xiàn)了基于OAuth2.0的統(tǒng)一授權(quán)認(rèn)證能夠為用戶提供更好的服務(wù)和功能體驗,幫助用戶對各類應(yīng)用進(jìn)行分類權(quán)限管理。

    參考文獻(xiàn):

    [1] 王力猛, 陳鵬, 楊小軍. OAuth2.0協(xié)議認(rèn)證授權(quán)實現(xiàn)方案研究[J]. 電腦編程技巧與維護(hù), 2015(10): 21-22, 43.

    [2] 陳偉, 楊伊彤, 牛樂園. 改進(jìn)的OAuth2.0協(xié)議及其安全性分析[J]. 計算機(jī)系統(tǒng)應(yīng)用, 2014, 23(3): 25-30, 39.

    [3] Hardt D. The OAuth 2.0 authorization framework[R].[s.l.]:[s.n.],2012

    [4] 田嵩, 雷東升. 開放授權(quán)協(xié)議在云學(xué)習(xí)中的應(yīng)用研究[J]. 數(shù)學(xué)的實踐與認(rèn)識, 2013, 43(4):108-116.

    [5] 劉姚. 基于Spring和OAuth2.0的第三方授權(quán)框架[J]. 計算機(jī)技術(shù)與發(fā)展, 2017, 27(3):167-170.

    [6] 趙素萍. MD5加密算法的改進(jìn)及應(yīng)用[J]. 現(xiàn)代計算機(jī): 專業(yè)版, 2017(15):60-62.

    【通聯(lián)編輯:謝媛媛】

    猜你喜歡
    令牌客戶端統(tǒng)一
    稱金塊
    堅持嚴(yán)管和厚愛相統(tǒng)一的著力點(diǎn)
    活力(2021年6期)2021-08-05 07:23:54
    碑和帖的統(tǒng)一,心和形的統(tǒng)一,人和藝的統(tǒng)一
    基于路由和QoS令牌桶的集中式限速網(wǎng)關(guān)
    統(tǒng)一數(shù)量再比較
    動態(tài)令牌分配的TCSN多級令牌桶流量監(jiān)管算法
    縣級臺在突發(fā)事件報道中如何應(yīng)用手機(jī)客戶端
    傳媒評論(2018年4期)2018-06-27 08:20:24
    孵化垂直頻道:新聞客戶端新策略
    傳媒評論(2018年4期)2018-06-27 08:20:16
    基于Vanconnect的智能家居瘦客戶端的設(shè)計與實現(xiàn)
    電子測試(2018年10期)2018-06-26 05:53:34
    堅持“四納入” 實施“四統(tǒng)一”
    中國火炬(2013年7期)2013-07-24 14:19:23
    丰台区| 恩施市| 宁陕县| 班玛县| 乌兰县| 彩票| 双流县| 隆昌县| 宣威市| 江达县| 札达县| 咸阳市| 平塘县| 资阳市| 四会市| 齐河县| 安丘市| 锦州市| 皋兰县| 惠州市| 潞城市| 台东市| 柞水县| 松原市| 历史| 钦州市| 石景山区| 安塞县| 九江市| 酒泉市| 平潭县| 和顺县| 自贡市| 突泉县| 冷水江市| 喀喇沁旗| 南京市| 六枝特区| 永修县| 奉新县| 中江县|