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

?

基于OAuth2.0的高校數(shù)據(jù)中心Open API的設(shè)計(jì)與實(shí)現(xiàn)

2017-12-19 07:57:20蘇州科技大學(xué)信息建設(shè)與管理中心袁海峰
電子世界 2017年23期
關(guān)鍵詞:公共數(shù)據(jù)服務(wù)端數(shù)據(jù)安全

蘇州科技大學(xué)信息建設(shè)與管理中心 袁海峰 胡 銳

蘇州科技大學(xué)天平學(xué)院 郁 蔥

基于OAuth2.0的高校數(shù)據(jù)中心Open API的設(shè)計(jì)與實(shí)現(xiàn)

蘇州科技大學(xué)信息建設(shè)與管理中心 袁海峰 胡 銳

蘇州科技大學(xué)天平學(xué)院 郁 蔥

隨著校園信息化建設(shè)的發(fā)展,應(yīng)用系統(tǒng)的增加,數(shù)據(jù)共享變的必不可少,建設(shè)共享的公共數(shù)據(jù)平臺(tái)越來(lái)越受到學(xué)校信息化建設(shè)者的青睞。公共數(shù)據(jù)平臺(tái)做為唯一的數(shù)據(jù)出口為第三方應(yīng)用提供數(shù)據(jù)服務(wù),數(shù)據(jù)共享就面臨著數(shù)據(jù)安全問題,如何安全的提供給第三方使用,是現(xiàn)在校園信息化建設(shè)存在的普遍問題。本文提出一種基于OAuth 2.0的校園數(shù)據(jù)安全認(rèn)證系統(tǒng),數(shù)據(jù)的擁有者通過(guò)認(rèn)證服務(wù)器在使用數(shù)據(jù)的過(guò)程中給需要訪問資源的第三方授權(quán)訪問該數(shù)據(jù)的權(quán)限,有效的控制了數(shù)據(jù)安全問題。

OAuth2.0;數(shù)據(jù)安全;認(rèn)證系統(tǒng)

1.引言

近年來(lái),學(xué)校信息化的發(fā)展作為學(xué)校自身發(fā)展一部分,越來(lái)越受到學(xué)校管理者的重視。學(xué)校的數(shù)據(jù)成指數(shù)增長(zhǎng),產(chǎn)生了大量的個(gè)人數(shù)據(jù)和業(yè)務(wù)數(shù)據(jù)[1],這些數(shù)據(jù)存放在公共數(shù)據(jù)平臺(tái)。目前很多學(xué)校都是采用開放訪問公共數(shù)據(jù)平臺(tái)數(shù)據(jù)庫(kù)權(quán)限的方式,給第三方提供數(shù)據(jù)服務(wù),這種方式是非常不安全,使公共數(shù)據(jù)平臺(tái)時(shí)刻處在風(fēng)險(xiǎn)之中。因此開發(fā)一套安全可靠校園數(shù)據(jù)安全認(rèn)證系統(tǒng)是非常用必要的。

根據(jù)OAuth2.0協(xié)議的開發(fā)的公共數(shù)據(jù)平臺(tái)的Open API,其API授權(quán)的方式與以往的授權(quán)方式不同之處是 OAuth 的授權(quán)不會(huì)使第三方觸及到用戶的用戶名與密碼等敏感信息,即第三方無(wú)需使用用戶的用戶名與密碼就可以申請(qǐng)獲得該用戶資源的授權(quán)[2]。

2.相關(guān)技術(shù)

OAuth 2.0是OAuth協(xié)議的下一版本,但不向前兼容 OAuth 1.0。和 OAuth 1.0相比,OAuth 2.0關(guān)注客戶端開發(fā)者的簡(jiǎn)易性,同時(shí)為Web應(yīng)用、桌面應(yīng)用和手機(jī)應(yīng)用提供專門的認(rèn)證流程[3]。2012年10月,OAuth 2.0協(xié)議正式發(fā)布為RFC 6749[4]。

OAuth 2.0有四種角色,分別是資源所有者(Resource Owner),資源服務(wù)器(Resource Server),客戶端(Client)和認(rèn)證服務(wù)器(Authorization Server)[5]。資源所有者:能授權(quán)訪問受保護(hù)資源的一個(gè)實(shí)體[6],如公共數(shù)據(jù)平臺(tái)用戶2153。資源服務(wù)器:存儲(chǔ)資源的服務(wù)器[7],比如存儲(chǔ)2153個(gè)人信息,客戶端通過(guò)出示 Access Token(訪問令牌)進(jìn)行訪問。客戶端:經(jīng)過(guò)授權(quán)后,代表資源所有者訪問資源服務(wù)器上受限制的資源。認(rèn)證服務(wù)器:對(duì)資源所有者進(jìn)行認(rèn)證,向客戶端發(fā)放Access Token(訪問令牌)。

3.公共數(shù)據(jù)平臺(tái)Open API設(shè)計(jì)

3.1 系統(tǒng)架構(gòu)

以蘇州科技大學(xué)為例,Open API是公共數(shù)據(jù)平臺(tái)的基礎(chǔ)搭建設(shè),通過(guò)認(rèn)證服務(wù)器給第三方應(yīng)用授權(quán)訪問公共數(shù)據(jù)平臺(tái) API的權(quán)限,如圖1所示。

(1)公共數(shù)據(jù)平臺(tái)的數(shù)據(jù)是通過(guò)Oracle ODI同步于校內(nèi)各應(yīng)用系統(tǒng),作為校內(nèi)資源存儲(chǔ)者,在這里充當(dāng)Open API系統(tǒng)的資源服務(wù)器。

(2)Web API提供公共數(shù)據(jù)數(shù)據(jù)平臺(tái)API接口給第三方應(yīng)用。

(3)認(rèn)證服務(wù)器給第三方應(yīng)用進(jìn)行認(rèn)證,發(fā)放令牌,授權(quán)訪問公共數(shù)據(jù)數(shù)據(jù)平臺(tái)API。

3.2 認(rèn)證服務(wù)器

通過(guò)OAuth2.0模式打造自己的Web api認(rèn)證服務(wù),用于其第三方訪問我們的api時(shí)進(jìn)行權(quán)限認(rèn)證。

(1)用戶首先要保持登錄,即已認(rèn)證通過(guò)的狀態(tài);

(2)第三方應(yīng)用請(qǐng)求用戶授權(quán)(我理解是彈出一個(gè)顯示的操作界面讓用戶確認(rèn)給第三方授權(quán));

(3)用戶授權(quán)成功之后會(huì)向Authorization Server(認(rèn)證服務(wù)器)請(qǐng)求“授權(quán)碼”(指authorization_code而不是最終的access_token),請(qǐng)求中還會(huì)攜帶redirect_uri(跳轉(zhuǎn)至第三方應(yīng)用的鏈接);

(4)獲得“授權(quán)碼”之后用戶所在的瀏覽器網(wǎng)頁(yè)將跳轉(zhuǎn)到redirect_uri(即第三方應(yīng)用)

(5)第三方應(yīng)用攜帶“授權(quán)碼”和應(yīng)用認(rèn)證信息(client_id &client_secret)到Authorization Server換取access_token;

(6)第三方應(yīng)用就可以在訪問開放平臺(tái)時(shí)帶上access_token。

圖1 Open API結(jié)構(gòu)示意圖

4.公共數(shù)據(jù)平臺(tái)Open API實(shí)現(xiàn)

以開源DotNetOpenAuth為基礎(chǔ)設(shè)計(jì)的基于OAuth2.0的校園認(rèn)證系統(tǒng),包括客戶端,授權(quán)服務(wù)端和資源服務(wù)端三方面的實(shí)同。

(1)對(duì)客戶端來(lái)說(shuō),授權(quán)的過(guò)程就是獲取AccessToken的過(guò)程,DotNetOpenAuth.OAuth2.Client是DotNetOpenAuth給C#客戶端提供的默認(rèn)SDK。

(2)授權(quán)服務(wù)端交互最多是客戶端于是定義一個(gè)client類,調(diào)用DotNetOpenAuth.OAuth2.IClientDescription接口, IClientDescription接口定義。DotNetOpenAuth預(yù)定義了一個(gè)接口——IAuthorization-ServerHost,當(dāng)授權(quán)通過(guò)后,通過(guò)CreateAccessToken生成AccessToken并返回給客戶端,客戶端于是就可以用AccessToken訪問資源服務(wù)端了。AuthorizationServerDescription包含兩個(gè)屬性,AuthorizationEndpoint是用戶顯式授權(quán)的地址,一般即用戶輸用戶名密碼的地;TokenEndpoint是用授權(quán)碼換取AccessToken的地址,注意該地址須用POST請(qǐng)求。

(3)在所有的授權(quán)模式下,資源服務(wù)端都只專注一件和OAuth相關(guān)的事情——驗(yàn)證AccessToken。

授權(quán)服務(wù)地址的 URL地址:http∶//210.*.*.*∶8080/OAuth/tokenclient_id:ustsapp;client_secret:1;grant_type:client_credentialspost 到授權(quán)服務(wù)務(wù)獲得access_token,token_type,expires_in,如圖2所示。

圖2

訪問資源服務(wù)器,URL:http∶// 210.*.*.*∶8070/api/Values?user=user&pwd=passwd

圖3

Authorization:“token_type” + “空格” + “access_token”,如圖3所示。Auth軟件,實(shí)現(xiàn)了對(duì)高校數(shù)據(jù)中惦OpenAPI系統(tǒng)。通過(guò)該系統(tǒng)的為第三訪提供統(tǒng)一數(shù)據(jù)認(rèn)證和數(shù)據(jù)使用授權(quán),極大的保證了數(shù)據(jù)安全性和可信性。同時(shí)該系統(tǒng)具有可擴(kuò)展性、可靠性和經(jīng)濟(jì)性等特點(diǎn),能夠滿足高?,F(xiàn)階段信息化建設(shè)的需求。

[1]胡銳,胡伏原,陳麗春.基于Hadoop的高校公共數(shù)據(jù)平臺(tái)的構(gòu)建[J].蘇州科技學(xué)院學(xué)報(bào)(自然科學(xué)版),2015,32(3):52-53.

[2]時(shí)子慶,劉金蘭,譚曉華.基于OAuth2.0的認(rèn)證授權(quán)技術(shù)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2012,21(3):260-264.

[3]盧慧鋒,趙文濤,孫志峰,游超.社會(huì)化網(wǎng)絡(luò)服務(wù)中OAuth2.0的應(yīng)用研究與實(shí)現(xiàn)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2014(S1):50-54.

[4]IETF:The OAuth 2.0 Authorization Framework[EB/OL].[2012-11].https://tools.ietf.org/html/rfc6749.

[5]俞曉,左友東,YUXiao,ZUOYou-Dong[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2014,23(8):59-62.

[6]沈海波,陳強(qiáng),陳勇昌.基于OAuth2.0擴(kuò)展的客戶端認(rèn)證方案[J].計(jì)算機(jī)工程與設(shè)計(jì),2017,38(2):350-354.

[7]時(shí)子慶,劉金蘭,譚曉華.基于OAuth2_0的認(rèn)證授權(quán)技術(shù)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2012,21(3):260-264.

5.總結(jié)

袁海峰(1977—),男,漢族,河南周口人,大學(xué)本科,工程師;主要研究方向和關(guān)注領(lǐng)域:高校網(wǎng)絡(luò)建設(shè)。

該系統(tǒng)在根據(jù)OAuth2.0的規(guī)范,通過(guò)調(diào)用開源的DotNetOpen-

猜你喜歡
公共數(shù)據(jù)服務(wù)端數(shù)據(jù)安全
公共數(shù)據(jù)使用的路徑探尋
——訪工信部信息通信經(jīng)濟(jì)專家委員會(huì)委員、中國(guó)科協(xié)決策咨詢首席專家王春暉
人民周刊(2023年15期)2023-09-27 07:39:40
制定中國(guó)公共數(shù)據(jù)開發(fā)利用法規(guī)的建議
論公共數(shù)據(jù)管控權(quán)的規(guī)范建構(gòu)
公共數(shù)據(jù)開放許可的規(guī)范建構(gòu)
云計(jì)算中基于用戶隱私的數(shù)據(jù)安全保護(hù)方法
電子制作(2019年14期)2019-08-20 05:43:42
建立激勵(lì)相容機(jī)制保護(hù)數(shù)據(jù)安全
云存儲(chǔ)中基于相似性的客戶-服務(wù)端雙端數(shù)據(jù)去重方法
新時(shí)期《移動(dòng)Web服務(wù)端開發(fā)》課程教學(xué)改革的研究
在Windows Server 2008上創(chuàng)建應(yīng)用
大數(shù)據(jù)云計(jì)算環(huán)境下的數(shù)據(jù)安全
電子制作(2017年20期)2017-04-26 06:57:48
广饶县| 德保县| 阳山县| 长宁县| 衡阳县| 如东县| 文化| 罗江县| 策勒县| 浙江省| 府谷县| 论坛| 准格尔旗| 顺昌县| 保康县| 新郑市| 镇康县| 措美县| 永善县| 平南县| 遂平县| 淄博市| 金门县| 松江区| 武强县| 若羌县| 安龙县| 浙江省| 精河县| 万年县| 渭源县| 来凤县| 武威市| 淮安市| 梅州市| 平利县| 焉耆| 古浪县| 麦盖提县| 乌兰察布市| 江源县|