999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于用戶信任值的HDFS訪問控制模型研究*

2016-03-19 05:46:30史文浩江國華秦小麟勝南京航空航天大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院南京210016
計算機(jī)與生活 2016年1期

史文浩,江國華,秦小麟,王 勝南京航空航天大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院,南京210016

* The National Natural Science Foundation of China under Grant Nos. 61373015, 61300052, 41301047 (國家自然科學(xué)基金); the Priority Academic Development Program of Jiangsu Higher Education Institutions (江蘇高校優(yōu)勢學(xué)科建設(shè)工程資助項(xiàng)目); the Innovation Program for Graduate Education of Jiangsu Province under Grant No. SJZZ_0043 (江蘇省研究生培養(yǎng)創(chuàng)新工程).

Received 2015-03,Accepted 2015-05.

CNKI網(wǎng)絡(luò)優(yōu)先出版:2015-05-29, http://www.cnki.net/kcms/detail/11.5602.TP.20150529.1137.001.html

ISSN 1673-9418 CODEN JKYTA8

Journal of Frontiers of Computer Science and Technology

1673-9418/2016/10(01)-0025-11

?

基于用戶信任值的HDFS訪問控制模型研究*

史文浩+,江國華,秦小麟,王勝
南京航空航天大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院,南京210016

* The National Natural Science Foundation of China under Grant Nos. 61373015, 61300052, 41301047 (國家自然科學(xué)基金); the Priority Academic Development Program of Jiangsu Higher Education Institutions (江蘇高校優(yōu)勢學(xué)科建設(shè)工程資助項(xiàng)目); the Innovation Program for Graduate Education of Jiangsu Province under Grant No. SJZZ_0043 (江蘇省研究生培養(yǎng)創(chuàng)新工程).

Received 2015-03,Accepted 2015-05.

CNKI網(wǎng)絡(luò)優(yōu)先出版:2015-05-29, http://www.cnki.net/kcms/detail/11.5602.TP.20150529.1137.001.html

ISSN 1673-9418 CODEN JKYTA8

Journal of Frontiers of Computer Science and Technology

1673-9418/2016/10(01)-0025-11

E-mail: fcst@vip.163.com

http://www.ceaj.org

Tel: +86-10-89056056

摘要:目前,越來越多的用戶使用云存儲來保存或備份數(shù)據(jù),以增強(qiáng)數(shù)據(jù)的可移動性,但針對云存儲的安全性問題,研究人員主要關(guān)注隱私泄露、數(shù)據(jù)容災(zāi)、副本消除等方面,對訪問控制的研究較少。在前人研究的基礎(chǔ)上,提出了一種基于用戶信任值的HDFS(Hadoop distributed file system)訪問控制模型。該模型結(jié)合可信book=26,ebook=30賴第三方認(rèn)證系統(tǒng)Kerberos實(shí)現(xiàn)對用戶的認(rèn)證,并為每個用戶設(shè)定一個信任值,通過信任值與信任值閾值的比較動態(tài)控制用戶對HDFS的訪問。實(shí)驗(yàn)結(jié)果表明,該模型不僅可以克服HDFS訪問控制上的缺陷,而且能夠動態(tài)、有效地控制用戶對HDFS中資源的訪問。

關(guān)鍵詞:云存儲;HDFS;訪問控制;信任值

1 引言

云存儲[1]是指通過集群、網(wǎng)格和分布式文件系統(tǒng)等技術(shù),將網(wǎng)絡(luò)中各種不同類型的存儲設(shè)備通過軟件集合起來協(xié)同工作,共同對外提供數(shù)據(jù)存儲和業(yè)務(wù)訪問功能的一種新興的存儲模式,用戶根據(jù)需要付費(fèi)就可以從云存儲服務(wù)提供商處獲得任意大小的存儲空間和企業(yè)級別的服務(wù)質(zhì)量。但云存儲的推廣并非一帆風(fēng)順,Twinstrata公司2012年的云存儲應(yīng)用調(diào)查顯示:只有20%的人愿意將自己的私有數(shù)據(jù)放在云存儲中,大約有50%的人愿意使用云存儲來進(jìn)行數(shù)據(jù)備份、歸檔存儲以及災(zāi)難恢復(fù)等操作[2]。這主要源于在云存儲中,存儲數(shù)據(jù)的物理介質(zhì)不屬于云存儲用戶所有,當(dāng)用戶將數(shù)據(jù)提交給云存儲服務(wù)提供商后,具有數(shù)據(jù)優(yōu)先訪問權(quán)限的并不是相應(yīng)的用戶,而是云存儲服務(wù)提供商。同時,在云存儲平臺中用戶的數(shù)據(jù)處于共享環(huán)境,在這種情況下如何保證用戶數(shù)據(jù)的安全是人們非常關(guān)注的問題[3]。

云存儲的核心實(shí)際上是一個分布式文件系統(tǒng)[4],因此云存儲的數(shù)據(jù)安全性問題實(shí)際上就是分布式文件系統(tǒng)的安全性問題。Hadoop[5]云平臺作為當(dāng)前最流行的云平臺之一,已經(jīng)得到廣泛應(yīng)用,而HDFS[6](Hadoop distributed file system)作為Hadoop的核心模塊,所有的Hadoop應(yīng)用都使用HDFS提供的分布式存儲服務(wù),因此研究云存儲的安全性問題實(shí)質(zhì)上就是研究HDFS的安全性問題。

目前對HDFS安全機(jī)制的研究工作還很少,這是因?yàn)镠DFS在最初設(shè)計時假定其運(yùn)行在封閉的環(huán)境之中,且集群中的所有節(jié)點(diǎn)都是值得信賴的,無需進(jìn)行驗(yàn)證,而HDFS實(shí)際的應(yīng)用環(huán)境是一個開放且非安全的復(fù)雜環(huán)境,若不采取相應(yīng)的安全措施將面臨諸多挑戰(zhàn)。本文提出了一種基于用戶信任值的HDFS訪問控制模型,首先將可信賴第三方認(rèn)證系統(tǒng)Kerberos[7]與HDFS相結(jié)合,解決了HDFS的安全認(rèn)證問題,但其實(shí)現(xiàn)的僅是關(guān)口控制,仍存在合法用戶后期行為可信性缺陷。因此進(jìn)一步引入用戶信任值的概念,通過為每個用戶設(shè)定一個信任值,并根據(jù)用戶行為記錄實(shí)時更新其信任值,實(shí)現(xiàn)了一種細(xì)粒度的可靠靈活的訪問控制機(jī)制,滿足了對用戶訪問的動態(tài)控制需求。

本文組織結(jié)構(gòu)如下:第2章介紹相關(guān)工作;第3章對所提模型的原理及實(shí)現(xiàn)等方面展開討論;第4章通過實(shí)驗(yàn)證明本文模型的可行性與實(shí)用性;第5章對文章進(jìn)行總結(jié),并介紹未來工作。

2 相關(guān)工作

近年來,隨著云計算技術(shù)的快速發(fā)展,Hadoop已經(jīng)在大批互聯(lián)網(wǎng)公司、企業(yè)機(jī)構(gòu)得到了成功的應(yīng)用,成為當(dāng)前最流行的云平臺之一,并受到國內(nèi)外產(chǎn)業(yè)界和學(xué)術(shù)界的廣泛關(guān)注,但目前對Hadoop特別是HDFS的安全機(jī)制研究工作還很少。這是因?yàn)镠DFS最初的設(shè)計是假定其運(yùn)行在安全的封閉環(huán)境中,集群內(nèi)的所有節(jié)點(diǎn)都是可靠且值得信賴的,并提供給一組相互合作的用戶使用[8],所以HDFS在設(shè)計之初主要考慮大規(guī)模數(shù)據(jù)存儲的性能問題,分布式計算環(huán)境中的安全性問題并未得到充分關(guān)注[9]。

Yahoo!的O’Malley等人提出Hadoop的安全設(shè)計[10],通過為Hadoop加入安全模塊,增強(qiáng)了其安全性。但這里所實(shí)現(xiàn)的訪問控制措施實(shí)質(zhì)上是一種門限式的控制管理,用戶一旦通過最初的認(rèn)證獲得權(quán)限,其后期的行為將不再受到監(jiān)控,若用戶在這段時間里進(jìn)行非法操作,將不被集群發(fā)覺。

Yu等人提出采用基于屬性加密(attribute-based encryption,ABE)方案對云端的數(shù)據(jù)進(jìn)行加密[11],用戶在上傳數(shù)據(jù)之前先用屬性作為公鑰對數(shù)據(jù)進(jìn)行加密,能對數(shù)據(jù)進(jìn)行訪問的用戶必須擁有K個屬性才能對數(shù)據(jù)進(jìn)行解密,其中K為能解密該數(shù)據(jù)的屬性個數(shù)閾值。該方案保證了數(shù)據(jù)的安全存儲,同時服務(wù)器也無需為每個用戶保存一份公鑰。但該方案只支持粗粒度的訪問控制,在細(xì)粒度訪問控制方面仍存在局限性。

我國臺灣高雄大學(xué)的Bao等人基于Hadoop云平臺的安全性問題,提出并設(shè)計了一種將指紋鑒定和人臉識別技術(shù)應(yīng)用于Hadoop集群中用戶接入部分的方法[12],來實(shí)現(xiàn)用戶的身份驗(yàn)證。但他們并未設(shè)計出與上述身份驗(yàn)證方法相匹配的權(quán)限管理措施,忽略了訪問控制中非常關(guān)鍵的權(quán)限授予過程,導(dǎo)致該模型仍存在一定的安全隱患。

Kerberos[13-15]作為一種基于可信賴第三方的認(rèn)證系統(tǒng),由麻省理工學(xué)院提出,它提供了一種在開放式網(wǎng)絡(luò)環(huán)境下進(jìn)行身份認(rèn)證的方法,使網(wǎng)絡(luò)上的用戶可以相互證明自己的身份,用戶在對應(yīng)用服務(wù)器進(jìn)行訪問前,必須先從第三方服務(wù)器(Kerberos KDC)獲取該應(yīng)用服務(wù)器的訪問許可證(Ticket)。目前關(guān)于Kerberos的研究已趨于成熟,但是卻未應(yīng)用到分布式計算環(huán)境中。

為克服上述缺點(diǎn),本文結(jié)合Kerberos和用戶信任值的概念,提出了一種基于用戶信任值的HDFS訪問控制模型,不僅實(shí)現(xiàn)了用戶授權(quán)的動態(tài)管理,同時增強(qiáng)了訪問控制機(jī)制的安全性及靈活性。

3 基于用戶信任值的HDFS訪問控制模型

首先介紹基于用戶信任值的訪問控制模型的結(jié)構(gòu),然后對模型中相關(guān)數(shù)據(jù)結(jié)構(gòu)及規(guī)則定義展開描述,最后通過模型的執(zhí)行流程圖闡述模型的實(shí)現(xiàn)細(xì)節(jié)。

3.1模型結(jié)構(gòu)

圖1為基于用戶信任值的訪問控制模型的結(jié)構(gòu)。

圖1中涉及的Client、Kerberos KDC、Token、Session、Operation、HDFS、Confidencethreshold、Permission In Cluster等實(shí)體的具體解釋如下:

(1)Client即HDFS集群中用戶的集合,指代可以獨(dú)立訪問HDFS集群的主體。Client={client1,client2,client3,…,clientn},某一client可以屬于某個組。

Fig.1 Model structure圖1 模型結(jié)構(gòu)

(2)Kerberos KDC即密鑰分發(fā)管理器,指代搭建安全模型下的HDFS集群所使用的可信賴第三方服務(wù)器。KDC由兩部分組成:認(rèn)證服務(wù)器(authentication server,AS)和票據(jù)授予服務(wù)器(ticket granting server,TGS),用于實(shí)現(xiàn)對Client的身份認(rèn)證。

(3)Token即模型中各種令牌的集合,表示用戶授權(quán)過程所使用的訪問令牌,Token={TD-Token,TB-Token}。

①TD-Token是NameNode節(jié)點(diǎn)為用戶頒發(fā)的授權(quán)令牌,在用戶請求使用集群中的HDFS服務(wù)時使用。該令牌的使用,在一定的期限內(nèi)實(shí)現(xiàn)了用戶在申請HDFS服務(wù)時,不再是每次都去KDC上申請認(rèn)證,其格式如下:

TD-Token={TokenIDD,TokenAuthenticatorD}

其中,TokenIDD={ownerIDD,renewerID,issueDate,maxDate,sequenceNumber}。ownerIDD表示授權(quán)令牌所屬用戶;renewerID表示對授權(quán)令牌具有更新操作權(quán)限的用戶;issueDate表示授權(quán)令牌的發(fā)布時間;maxDate表示授權(quán)令牌的最大使用時間;sequenceNumber表示為實(shí)現(xiàn)系統(tǒng)中每個授權(quán)令牌的唯一性而加入其中的隨機(jī)數(shù)。TokenAuthenticatorD=HMAC-SHA1(masterKey,TokenIDD),masterKey是由NameNode節(jié)點(diǎn)隨機(jī)選擇的一個密鑰,用于授權(quán)令牌的生成,周期性地被更新,并且存儲在NameNode的磁盤上。

②TB-Token是用戶請求使用集群中HDFS存儲服務(wù)時,在證實(shí)用戶所提供的TD-Token合法有效的前提下,NameNode節(jié)點(diǎn)給予用戶頒發(fā)的塊訪問授權(quán)令牌,該令牌的頒發(fā)過程實(shí)質(zhì)上就是HDFS存儲服務(wù)的授權(quán)過程。在DataNode節(jié)點(diǎn)上沒有文件的概念,因此不能獨(dú)立地設(shè)置文件許可,只能通過塊訪問授權(quán)令牌實(shí)現(xiàn)對集群中Block的訪問授權(quán)管理,該令牌格式如下:

TB-Token={TokenIDB,TokenAuthenticatorB}

其中,TokenIDB={ownerIDB,expirationDate,keyID,BlockID,Confidence,accessModes}。ownerIDB表示塊訪問授權(quán)令牌所屬的用戶;expirationDate表示塊訪問授權(quán)令牌的過期時間;keyID表示NameNode節(jié)點(diǎn)所選擇的用于生成塊訪問授權(quán)令牌的密鑰;BlockID表示塊訪問授權(quán)令牌是針對哪個塊生成的;Confidence表示用戶當(dāng)前的信任值;accessModes是訪問模式,可以是讀、寫、拷貝、替換中各個操作的任意組合。TokenAuthenticatorB=HMAC-SHA1(keyB,TokenIDB),keyB表示NameNode和DataNode之間關(guān)于構(gòu)造塊訪問授權(quán)令牌的一個共享密鑰。

(4)Session即會話,表示某一個Client和其所申請獲取的服務(wù)對應(yīng)著的一系列令牌,具體表示為一個用戶獲得其某一組服務(wù)訪問令牌的過程。

(5)Operation即操作,表示用戶在HDFS集群中可以執(zhí)行的操作集合,Operation={read,write,copy,replace}。

(6)Confidencethreshold即信任值閾值,表示用戶可以獲得服務(wù)的信任值閾值條件,在模型中,用戶要獲得HDFS的服務(wù),其信任值必須大于或等于信任值閾值。

(7)Permission In Cluster即集群中的權(quán)限,表示用戶對HDFS集群提供的服務(wù)進(jìn)行可信訪問的許可。在本模型中,將權(quán)限定義為pic=(C,S,Op,Confidencethreshold)。其中,C∈Client,代表集群用戶,是獲取HDFS服務(wù)的權(quán)限主體;S∈Service,代表服務(wù),是HDFS提供的具體某一種服務(wù);Op∈Operation,代表操作,對應(yīng)于某一種服務(wù)的具體訪問方式。

3.2模型中相關(guān)數(shù)據(jù)結(jié)構(gòu)及規(guī)則定義

當(dāng)一個用戶訪問HDFS時,由系統(tǒng)根據(jù)其用戶信息,通過可信賴第三方認(rèn)證系統(tǒng)Kerberos檢查其身份是否合法,用戶通過身份檢查后向NameNode節(jié)點(diǎn)申請HDFS服務(wù),NameNode節(jié)點(diǎn)通過存儲在行為數(shù)據(jù)庫中的用戶行為記錄計算得到用戶當(dāng)前的信任值,并與系統(tǒng)設(shè)定的信任值閾值相比較,最終來判斷其是否有合法的訪問權(quán)限。下面給出信任值結(jié)構(gòu)體的定義以及用戶信任值更新公式和算法。

定義1(信任值結(jié)構(gòu)體)信任值結(jié)構(gòu)體是一個二元組Confidence=(ConfidenceID,ConfidenceBody)。其中,ConfidenceID=(clientID,clientIP),表示信任值標(biāo)識字段,clientID表示信任值是對某一具體用戶的行為信任描述,clientIP表示訪問集群服務(wù)時的具體IP地址;ConfidenceBody=(initConfidence,cf),表示信任值主體字段,initConfidence字段表示用戶的初始信任值或歷史信任值,是一個0~1之間的數(shù)值,其取值大小在初始狀態(tài)根據(jù)用戶身份而定,后期隨著每一次信任值更新而改變,cf表示用戶當(dāng)前信任值,存放使用信任值更新算法得到的用戶信任值,也是一個0~1之間的數(shù)值。

信任值更新公式為:

其中,cf表示用戶最新信任值;initConfidence表示用戶的初始信任值或歷史信任值;NOB、NRB、NDB分別表示普通行為、風(fēng)險行為、危險行為這3類用戶行為各自的記錄總數(shù);α、β、γ為系統(tǒng)賦予每種行為類別的信任值評估權(quán)重,且滿足α+β+γ=1的關(guān)系。

從上述公式可以看出,用戶執(zhí)行普通行為可以提高用戶信任值,執(zhí)行風(fēng)險行為或危險行為則會降低用戶信任值。

用戶信任值更新算法ConfidenceUpdate(clientID)的描述如下。

算法1信任值更新算法

算法1中第1~4行主要判斷參數(shù)clientID是否為空,若為空則返回FALSE;第5行調(diào)用函數(shù)readConfidence(clientID)讀取系統(tǒng)中存儲的用戶信任值結(jié)構(gòu)體,并存儲到結(jié)構(gòu)體實(shí)例Confidence中;第6~8行當(dāng)信任值結(jié)構(gòu)體中字段cf為空時,將初始信任值initConfidence賦予cf;第9~19行通過遍歷用戶行為數(shù)據(jù)庫,判斷用戶行為屬于惡意行為還是正常行為,若遍歷到惡意行為,則調(diào)用函數(shù)reduceConfidence(cf,punishCf)降低用戶信任值,若遍歷到正常行為,則調(diào)用函數(shù)increase-Confidence(cf,awardCf)增加用戶信任值;第20~23行將更新完成的用戶信任值寫入到信任值數(shù)據(jù)庫中,并返回該值。

為分析算法的時間復(fù)雜度,定義訪問數(shù)據(jù)庫讀取數(shù)據(jù)的時間開銷為Tread,遍歷行為數(shù)據(jù)庫的時間開銷為Ttraverse。在Hadoop中,Tread為固定常數(shù),而Ttraverse與數(shù)據(jù)庫的大小及存儲方式有關(guān)。算法1中第5、20行訪問數(shù)據(jù)庫,第10行遍歷行為數(shù)據(jù)庫,因此算法1的時間復(fù)雜度為O(T1)=2Tread+Ttraverse。因?yàn)門read是固定常數(shù),所以可以確定時間復(fù)雜度O(T1)是數(shù)據(jù)庫遍歷時間Ttraverse的線性函數(shù)。

為了更好地對模型進(jìn)行描述,給出訪問控制的規(guī)則及算法。

定義2(訪問控制規(guī)則)

(1)CP規(guī)則(ConfidenceFulfilled-Permission):當(dāng)用戶身份合法,服務(wù)票據(jù)合法且信任值大于等于信任值閾值條件時,允許其訪問HDFS中的資源,這一規(guī)則的約束表達(dá)式如下:

(2)CR規(guī)則(ConfidenceInsufficient-Refusal):當(dāng)用戶身份非法,或服務(wù)票據(jù)非法,或信任值小于信任值閾值時,系統(tǒng)拒絕用戶訪問HDFS中的資源,這一規(guī)則的約束表達(dá)式如下:

其中,user為用戶信息;tick為用戶訪問NameNode節(jié)點(diǎn)的服務(wù)票據(jù);cf為用戶最新信任值;Confidencethreshold為信任值閾值;ACCEPT為允許本次訪問操作;DENY為拒絕本次訪問操作。

下面給出基于用戶信任值的HDFS訪問控制算法。

算法2訪問控制算法

算法2中第1~4行主要判斷參數(shù)clientID是否為空,若為空則返回拒絕提供服務(wù)信息DENY;第5~7行調(diào)用函數(shù)hasKDC(user)判斷用戶身份是否合法,若用戶身份合法則調(diào)用函數(shù)getTicks(KDC)為用戶授予服務(wù)票據(jù)Tick;第8~13行調(diào)用函數(shù)hasTicks(tick,Tick)判斷服務(wù)票據(jù)是否合法,若合法則調(diào)用函數(shù)ConfidenceUpdate(clientID)計算得到用戶最新的信任值,并與信任值閾值比較,當(dāng)用戶最新信任值大于等于信任值閾值,即滿足CP規(guī)則時,返回接受服務(wù)請求的信息ACCEPT;第14~20行是用戶滿足CR規(guī)則時,返回拒絕提供服務(wù)信息DENY。

算法2中第5、8行遍歷數(shù)據(jù)庫,第10行訪問數(shù)據(jù)庫并寫入數(shù)據(jù),因此算法2的時間復(fù)雜度為O(T2)= Tread+2Ttraverse,時間復(fù)雜度O(T2)是數(shù)據(jù)庫遍歷時間Ttraverse的線性函數(shù)。

3.3模型的執(zhí)行流程

在HDFS中實(shí)施基于用戶信任值的訪問控制模型,首先要在相應(yīng)的權(quán)限表ACL中添加信任值閾值,這個信任值閾值由服務(wù)提供者設(shè)定。具體執(zhí)行流程如圖2所示。

詳細(xì)的步驟描述如下:

KDC服務(wù)器用于生成并分發(fā)Client-KDC間的共享密鑰K1、NameNode-KDC間的共享密鑰K2、Client-NameNode間的共享密鑰K3。

(1)Client將自己的身份認(rèn)證信息用K1加密后發(fā)送給KDC請求進(jìn)行身份認(rèn)證。

(2)KDC驗(yàn)證Client身份合法有效,給予頒發(fā)票據(jù)授權(quán)票據(jù)TGT,并用K1加密后回傳給Client。

(3)Client持TGT向KDC發(fā)送服務(wù)請求,請求內(nèi)容用K1加密。

(4)KDC接收請求,并且產(chǎn)生服務(wù)票據(jù)Ticket={K3,用戶名,IP,地址,服務(wù)名,有效期,時間戳}。

(5)KDC用K1加密K3,用K2加密Ticket后一并回傳給Client。

Fig.2 Execution flow chart of model圖2 模型的執(zhí)行流程圖

(6)Client解密得到與NameNode節(jié)點(diǎn)之間的會話密鑰K3,并生成Authenticator={(用戶名,IP)K3}。

(7)Client將步驟5中從KDC獲取到的用K2加密的Ticket連同步驟6中生成的Authenticator,以格式{(Ticket)K2,Authenticator}發(fā)送給NameNode節(jié)點(diǎn),申請NameNode節(jié)點(diǎn)上的身份認(rèn)證。

(8)NameNode節(jié)點(diǎn)對所接收到的內(nèi)容進(jìn)行解密,驗(yàn)證Client是否屬于合法用戶。

(9)NameNode節(jié)點(diǎn)驗(yàn)證Client身份合法之后,生成TD-Token并頒發(fā)給Client。

(10)Client持TD-Token向NameNode節(jié)點(diǎn)申請HDFS服務(wù),NameNode節(jié)點(diǎn)使用所接收到的TokenIDD和本地的masterkey計算出TokenAuthenticatorD,在本地再次構(gòu)建一個TD-Token。若NameNode重建的TD-Token在NameNode本地內(nèi)存中具有相同的版本,則認(rèn)定該用戶身份合法有效。

(11)查詢用戶行為數(shù)據(jù)庫,并通過信任值更新算法得到用戶當(dāng)前的信任值。

(12)若用戶信任值滿足要求,則NameNode節(jié)點(diǎn)為用戶生成塊訪問授權(quán)令牌TB-Token。令牌中的AccessModes字段存放當(dāng)前用戶可以對Block執(zhí)行的操作,實(shí)際上就是用戶所具有的權(quán)限。該字段的取值設(shè)定由各個操作自身規(guī)定的信任值閾值來決定:①若步驟11中計算所得信任值大于等于某個操作所規(guī)定的信任值閾值,字段AccessModes取值加入該操作;②若步驟11中計算所得信任值小于某個操作所規(guī)定的信任值閾值,字段AccessModes取值為空,不加入該操作。

(13)當(dāng)用戶滿足CP規(guī)則時,NameNode節(jié)點(diǎn)將生成的TB-Token分發(fā)給Client。

(14)Client持TB-Token向NameNode節(jié)點(diǎn)告知的所有DataNode節(jié)點(diǎn)請求所需服務(wù)。

(15)DataNode節(jié)點(diǎn)接收到Client的請求后,首先判斷TB-Token是否合法有效,再決定是否給用戶提供AccessModes字段所規(guī)定的操作。

(16)Client從DataNode節(jié)點(diǎn)獲取AccessModes字段規(guī)定的操作,或者當(dāng)用戶滿足CR規(guī)則時,給用戶發(fā)送拒絕提供服務(wù)的提示信息。

(17)DataNode節(jié)點(diǎn)在最近的下一次心跳中,將Client在其上面的所有操作行為記錄反饋給NameNode節(jié)點(diǎn)。

(18)NameNode節(jié)點(diǎn)將反饋得到的用戶操作行為記錄保存到行為數(shù)據(jù)庫中。

綜上所述,基于用戶信任值的訪問控制模型,在用戶通過Kerberos的身份認(rèn)證后,向NameNode節(jié)點(diǎn)申請HDFS服務(wù),NameNode節(jié)點(diǎn)在為用戶生成TB-Token時通過讀取信任值數(shù)據(jù)庫中存儲的該用戶的信任值信息,并與配置文件中集群所設(shè)定的各種操作的信任值閾值相比較,從而判斷是否為其生成具有有效AccessModes字段的令牌。用戶信任值是通過讀取行為數(shù)據(jù)庫中用戶行為記錄來實(shí)時計算得到的,而這些用戶行為記錄都是伴隨DataNode節(jié)點(diǎn)的心跳進(jìn)行更新的,因此信任值也隨之實(shí)現(xiàn)更新,一旦集群獲取到用戶的非法操作行為,其信任值必定快速下降。因此,結(jié)合用戶信任值的概念實(shí)現(xiàn)了一種實(shí)時動態(tài)、更細(xì)粒度、更加靈活的訪問控制機(jī)制,能夠更加安全、合理地為用戶分配合適的權(quán)限。

4 實(shí)驗(yàn)結(jié)果及分析

本章主要對所提模型進(jìn)行功能驗(yàn)證和性能評估。首先介紹實(shí)驗(yàn)環(huán)境及實(shí)驗(yàn)設(shè)計,然后通過3組實(shí)驗(yàn)對模型的訪問控制能力和對系統(tǒng)的性能影響展開測試評估。

4.1實(shí)驗(yàn)環(huán)境

開發(fā)環(huán)境為Cent OS 6.4+Eclipse 4.4.1,在該平臺上進(jìn)行實(shí)驗(yàn),并對Hadoop-2.3.0代碼實(shí)施改進(jìn)。測試平臺為宿主計算機(jī)+VMware Workstation 10.01+客戶計算機(jī),其中宿主計算機(jī)為ThinkServer RD630,客戶計算機(jī)為1個master節(jié)點(diǎn),60個slave節(jié)點(diǎn)。

本實(shí)驗(yàn)以用戶訪問一個搭建好的Hadoop集群,向集群提交作業(yè),在作業(yè)的處理過程中,對集群中HDFS服務(wù)進(jìn)行訪問的過程來說明該模型的具體應(yīng)用,如圖3所示。

本實(shí)驗(yàn)主要用于驗(yàn)證在用戶訪問Hadoop集群所提供的HDFS服務(wù)時,在幾種常用命令ls、mkdir、cat、put執(zhí)行的過程中,該模型實(shí)現(xiàn)的訪問控制機(jī)制所起到的作用。其中,各命令對應(yīng)的用戶行為及行為類別如表1所示。

Fig.3 Model of experimental application圖3 實(shí)驗(yàn)應(yīng)用模型

Table 1 Comparison table of common commands and user behaviors表1 常用命令與用戶行為對照表

表中,read、write、copy、replace分別表示用戶對HDFS內(nèi)部Block文件塊的4種操作行為,收集到的用戶行為記錄根據(jù)模型定義保存到行為數(shù)據(jù)庫中,并將計算得到的用戶信任值存儲到信任值數(shù)據(jù)庫中。

針對用戶訪問服務(wù)的具體操作行為,通過對比實(shí)驗(yàn)來對用戶的信任值閾值進(jìn)行設(shè)置。

(1)由于read操作行為屬于普通行為,將其信任值閾值區(qū)間設(shè)為0.10~0.40,并通過用戶成功訪問HDFS的次數(shù)百分比進(jìn)行對比實(shí)驗(yàn),選出最佳的信任值閾值為0.30,對比實(shí)驗(yàn)的結(jié)果如圖4所示。

Fig.4 Comparison of trust value threshold for read behavior圖4 read操作行為的信任值閾值比較

信任值閾值的具體格式如下:

表示當(dāng)Client所申請的服務(wù)包含有對HDFS內(nèi)部的Block文件塊進(jìn)行read操作時,其當(dāng)前的信任值必須保證大于或等于0.30,才具有權(quán)限執(zhí)行該操作。

(2)由于write操作行為屬于危險行為,將其信任值閾值區(qū)間設(shè)為0.70~0.95,并通過用戶成功訪問HDFS的次數(shù)百分比進(jìn)行對比實(shí)驗(yàn),選出最佳的信任值閾值為0.90,對比實(shí)驗(yàn)的結(jié)果如圖5所示。

信任值閾值的具體格式如下:

表示當(dāng)Client所申請的服務(wù)包含有對HDFS內(nèi)部的Block文件塊進(jìn)行write操作時,其當(dāng)前的信任值必須保證大于或等于0.90,才具有權(quán)限執(zhí)行該操作。

Fig.5 Comparison of trust value threshold for write behavior圖5 write操作行為的信任值閾值比較

由于在配置文件中,關(guān)于每個信任值閾值的規(guī)定實(shí)現(xiàn)到每一個服務(wù)操作行為上,數(shù)量較多,這里不再一一列舉。

4.2實(shí)驗(yàn)設(shè)計

本實(shí)驗(yàn)通過改進(jìn)Hadoop-2.3.0的程序源碼,在其分布式文件系統(tǒng)HDFS上實(shí)現(xiàn)了基于用戶信任值的訪問控制模型,具體涉及如下改進(jìn)工作。

(1)在hadoop/hdfs目錄下面添加3個xml文件,作為模型的關(guān)鍵配置文件。

①user-behavior-database.xml,存儲用戶行為監(jiān)控數(shù)據(jù);

②confidence-policy.xml,存儲集群為各種行為操作設(shè)定的信任值閾值;

③user-confidence-database.xml,存儲計算得到的用戶信任值。

(2)功能測試實(shí)驗(yàn)設(shè)計。本實(shí)驗(yàn)首先在相同的虛擬機(jī)環(huán)境下,搭建3種集群,分別是common cluster(普通集群)、safe cluster(安全模式的集群)、trust cluster(加入用戶信任值的集群)。以下是本實(shí)驗(yàn)具體設(shè)置的3種實(shí)驗(yàn)情景:

①在上述trust cluster中,設(shè)置配置文件userconfidence-database.xml與confidence-policy.xml,主要對用戶的初始信任值和信任值閾值進(jìn)行設(shè)置,使得用戶當(dāng)前信任值小于信任值閾值,讀取存放在HDFS文件系統(tǒng)中的文件/test/example.txt,檢查shell終端是否給出程序所設(shè)定的提示信息;

②設(shè)置配置文件confidence-policy.xml,主要是對其中操作行為的信任值閾值進(jìn)行設(shè)置,保證用戶當(dāng)前的信任值不小于信任值閾值,使得上述3種集群在相同的條件下,各自正常運(yùn)行一段時間,收集在這段時間內(nèi)執(zhí)行cat命令所需的時間并進(jìn)行對比;

③設(shè)置配置文件confidence-policy.xml,主要是對其中操作行為的信任值閾值進(jìn)行設(shè)置,保證用戶當(dāng)前的信任值不小于信任值閾值,收集在上述3種集群里運(yùn)行4個常用命令ls、mkdir、put、cat的執(zhí)行時間并進(jìn)行對比。

4.3實(shí)驗(yàn)結(jié)果及分析

當(dāng)用戶當(dāng)前信任值小于系統(tǒng)設(shè)定的信任值閾值即滿足CR規(guī)則時,執(zhí)行cat命令欲讀取并顯示存放在HDFS文件系統(tǒng)中的文件/test/example.txt的內(nèi)容,在shell終端給出的提示信息如圖6所示。由圖中內(nèi)容可知,基于用戶信任值的訪問控制模型能成功地阻止信任度不夠高的用戶訪問HDFS中的文件,并且能夠根據(jù)訪問需求給出特定的提示信息。

Fig.6 Prompt message of access failure圖6 訪問失敗提示信息

在HDFS中cat命令在相同條件下運(yùn)行在3種集群內(nèi)的執(zhí)行時間對比如圖7,此時用戶滿足CP規(guī)則,因cat命令執(zhí)行的結(jié)果是對HDFS中某個Block塊的訪問,其中涉及到TB-Token的申請與使用過程。由圖中結(jié)果可知:未啟用安全機(jī)制模塊來運(yùn)行的common cluster,其命令運(yùn)行效率明顯高于加入了安全機(jī)制的集群,因此加入信任值檢測模塊會帶來一定的時間消耗及效率損失,但是與safe cluster相比,在可以接受的范圍內(nèi)。

Fig.7 Execution time comparison of cat command圖7 cat命令執(zhí)行時間對比

圖8所示在HDFS中執(zhí)行4個常用命令ls、mkdir、put、cat,并對比它們各自在3種集群中的執(zhí)行時間。從圖中mkdir命令的執(zhí)行時間統(tǒng)計可以發(fā)現(xiàn),該命令在具有信任值驗(yàn)證的trust cluster中的執(zhí)行時間略大于其在safe cluster中的執(zhí)行時間,從而可以證明,基于用戶信任值的訪問控制模型不會對集群帶來嚴(yán)重的運(yùn)行負(fù)擔(dān)。

Fig.8 Execution time comparison of 4 common commands圖8 4個常用命令的執(zhí)行時間對比

5 結(jié)束語

本文的主要貢獻(xiàn)是針對HDFS訪問控制薄弱的問題,提出了一種基于用戶信任值的訪問控制模型。本文模型結(jié)合可信賴第三方認(rèn)證系統(tǒng)Kerberos實(shí)現(xiàn)對用戶的認(rèn)證,并在此基礎(chǔ)上加入用戶信任值的概念,對用戶訪問實(shí)現(xiàn)了動態(tài)控制,提高了HDFS訪問控制機(jī)制的安全性。實(shí)驗(yàn)結(jié)果表明,本文模型能夠?qū)崟r地監(jiān)控和收集用戶行為,并根據(jù)用戶行為記錄算得用戶信任值,再通過用戶信任值與信任值閾值的比較來動態(tài)控制用戶對集群的訪問,并且不會對集群的性能造成嚴(yán)重影響。本文模型適用于采用云存儲的分布式系統(tǒng),如Hadoop、OpenStack等,也可將信任模型進(jìn)行改進(jìn),應(yīng)用于其他傳統(tǒng)數(shù)據(jù)庫的訪問控制中。

Kerberos KDC服務(wù)器作為密鑰分發(fā)管理的中心服務(wù)器,當(dāng)用戶請求增多,服務(wù)器壓力增大時,其處理能力會減弱,因此Kerberos KDC服務(wù)器在性能方面會成為瓶頸。下一步研究工作將針對Kerberos KDC單服務(wù)器的性能瓶頸問題提出優(yōu)化解決方案。

References:

[1] Wang Cong, Chow S S M, Wang Qian, et al. Privacy-preserving public auditing for secure cloud storage[J]. IEEE Transactions on Computers, 2013, 62(2): 362-375.

[2] Twinstrata[EB/OL]. (2012-05-10)[2015-01-28]. http://twinstrata.com.

[3] Hou Qinghua, Wu Yongwei, Zheng Weimin, et al. A method on protection of user data privacy in cloud storage platform[J]. Journal of Computer Research and Development, 2011, 48(7): 1146-1154.

[4] Ghemawat S, Gobioff H, Leung ST.The Google file system[C]// Proceedings of the 19th ACM Symposium on Operating Systems Principles, Lake George, USA, Oct 2003. New York, USA:ACM, 2003: 29-43.

[5] White T. Hadoop: the definitive guide[M]. Sebastopol, CA, USA: O'Reilly Media, Inc, 2012: 43-79.

[6] Shvachko K V. HDFS scalability: the limits to growth[J]. Login, 2010, 35(2): 6-16.

[7] Yang Xiaojie. Secure analysis of Kerberos protocol[J]. Computer Security, 2013(6): 17-21.

[8] Shvachko K, Kuang H, Radia S, et al. The Hadoop distributed file system[C]//Proceedings of the 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies. Piscataway, USA: IEEE, 2010: 1-10.

[9] Wang Yijie, Sun Weidong, Zhou Song, et al. Key technologies of distributed storage for cloud computing[J]. Journal of Software, 2012, 23(4): 962-986.

[10] O’Malley O, Zhang Kan, Radia S, et al. Hadoop security design[R]. Yahoo, Inc, 2009: 1-19.

[11] Yu Shucheng, Wang Cong, Ren Kui, et al. Achieving secure, scalable, and fine-grained data access control in cloud computing[C]//Proceedings of the 2010 IEEE Conference on Computer Communications (INFOCOM), San Diego, USA, Mar 14-19, 2010. Piscataway, USA: IEEE, 2010: 1-9.

[12] Chang B R, Tsai H F, Lin Z Y, et al. Access security on cloud computing implemented in Hadoop system[C]//Proceedings of the 5th International Conference on Genetic and Evolutionary Computing, Xiamen, China, Aug 29-Sep 1, 2011. Piscataway, USA: IEEE, 2011: 77-80.

[13] Kumari A, Kushwaha D S. Kerberos style authentication and authorization through CTES model for distributed systems[C]// Computer Networks and Intelligent Computing: Proceedings of the 5th International Conference on Information Processing, Bangalore, India, Aug 5-7, 2011. Berlin, Heidelberg: Springer, 2011: 457-462.

[14] Nair S, Gautam N, Choudhary M. Using Kerberos with digital signature and AES encryption to provide data security in cloud computing[J]. International Journal of Computer Applications, 2014, 95(18): 25-29.

[15] Woo J L T, Tripunitara M V. Composing Kerberos and multimedia internet keying (MIKEY) for authenticated transport of group keys[J]. IEEE Transactions on Parallel and Distributed Systems, 2014, 25(4): 898-907.

附中文參考文獻(xiàn):

[3]侯清鏵,武永衛(wèi),鄭緯民,等.一種保護(hù)云存儲平臺上用戶數(shù)據(jù)私密性的方法[J].計算機(jī)研究與發(fā)展, 2011, 48(7): 1146-1154.

[7]楊曉婕. Kerberos協(xié)議安全性分析[J].計算機(jī)安全, 2013 (6): 17-21.

[9]王意潔,孫偉東,周松,等.云計算環(huán)境下的分布存儲關(guān)鍵技術(shù)[J].軟件學(xué)報, 2012, 23(4): 962-986.

SHI Wenhao was born in 1988. He is an M.S. candidate at College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics. His research interests include access control and cloud computing, etc.史文浩(1988—),男,河北衡水人,南京航空航天大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院碩士研究生,主要研究領(lǐng)域?yàn)樵L問控制,云計算技術(shù)等。

JIANG Guohua was born in 1963. He is an associate professor and M.S. supervisor at Nanjing University of Aeronautics and Astronautics. His research interests include software testing and Internet of things engineering, etc.

江國華(1963—),男,江西婺源人,南京航空航天大學(xué)副教授、碩士生導(dǎo)師,主要研究領(lǐng)域?yàn)檐浖y試,物聯(lián)網(wǎng)工程等。

QIN Xiaolin was born in 1953. He is a professor and Ph.D. supervisor at Nanjing University of Aeronautics and Astronautics, and the senior member of CCF. His research interests include spatial and spatio-temporal databases, data management and security in distributed environment, etc.

秦小麟(1953—),男,江蘇南京人,南京航空航天大學(xué)教授、博士生導(dǎo)師,CCF高級會員,主要研究領(lǐng)域?yàn)榭臻g與時空數(shù)據(jù)庫,分布式環(huán)境數(shù)據(jù)管理與安全等。

WANG Sheng was born in 1991. He is an M.S. candidate at College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics. His research interests include database amd cloud computing, etc.

王勝(1991—),男,湖北黃岡人,南京航空航天大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院碩士研究生,主要研究領(lǐng)域?yàn)閿?shù)據(jù)庫,云計算技術(shù)等。

Access Control Model Research for HDFS Based on User Trust Value*

SHI Wenhao+, JIANG Guohua, QIN Xiaolin, WANG Sheng
College of Computer Science and Technology, Nanjing University ofAeronautics andAstronautics, Nanjing 210016, China
+ Corresponding author: E-mail: shiwh0707@foxmail.com

SHI Wenhao, JIANG Guohua, QIN Xiaolin, et al. Access control model research for HDFS based on user trust value. Journal of Frontiers of Computer Science and Technology, 2016, 10(1):25-35.

Abstract:At present, more and more people employ cloud storage to store or backup data in order to enhance the data removability. For the security of cloud storage, researchers mainly focus on privacy disclosure, data disaster tolerance, duplication eliminating and so on. However, few researchers pay attention to access control technology. On the basis of previous research, this paper proposes an access control model for HDFS (Hadoop distributed file system) based on user trust value. The model uses the trusted third party authentication system Kerberos for user authentication, sets a trust value for each user, and controls user access to HDFS dynamically by comparing the trust value and trust threshold. The experimental results show that the model overcomes the shortages of HDFS access control, furthermore, it can also control user access to the HDFS resources dynamically and effectively.

Key words:cloud storage; Hadoop distributed file system (HDFS); access control; trust value

文獻(xiàn)標(biāo)志碼:A

中圖分類號:TP311

doi:10.3778/j.issn.1673-9418.1503027

主站蜘蛛池模板: 亚洲天堂区| 伦伦影院精品一区| 国产亚洲欧美日本一二三本道| 亚洲区欧美区| 国产精品嫩草影院av| 天天综合色网| 日本三级欧美三级| 欧美日一级片| av在线手机播放| 97在线国产视频| 手机看片1024久久精品你懂的| 性视频一区| 欧美高清国产| 欧美a级完整在线观看| 日本精品一在线观看视频| 国产午夜精品一区二区三| 夜夜爽免费视频| 亚洲日韩AV无码精品| 欧美一区二区三区国产精品| 熟妇丰满人妻| 亚洲黄色网站视频| 精品三级网站| 夜夜操国产| 亚洲一区精品视频在线 | 福利在线一区| 欧美日韩成人在线观看| 国产在线视频导航| 中文字幕欧美日韩高清| 青青草原偷拍视频| 黄色免费在线网址| 精品99在线观看| 成人在线天堂| 911亚洲精品| 久久网欧美| 久久五月视频| igao国产精品| 精品欧美视频| 毛片网站在线看| 伊人中文网| 久久综合干| 国产成人精品18| 狠狠综合久久久久综| 国产麻豆永久视频| 日韩精品成人在线| 国产精品欧美日本韩免费一区二区三区不卡| 国产高清自拍视频| 国产成人艳妇AA视频在线| 日韩成人在线视频| 久久精品女人天堂aaa| 国产精品无码一二三视频| 热这里只有精品国产热门精品| 青草视频网站在线观看| 日本欧美视频在线观看| 无码一区18禁| 久久精品一品道久久精品| 亚洲V日韩V无码一区二区| 午夜国产在线观看| 青青草欧美| 亚洲一级毛片免费观看| 青青极品在线| 特黄日韩免费一区二区三区| 国产精品hd在线播放| 亚洲黄色成人| 免费无码在线观看| 久久综合伊人 六十路| 在线观看国产精美视频| 亚洲精品麻豆| 男女精品视频| 91亚洲精选| 天天色天天操综合网| 日本高清在线看免费观看| 无码AV日韩一二三区| 国产一级α片| 91美女视频在线| 欧美日韩精品一区二区在线线| 久草热视频在线| 手机成人午夜在线视频| 国产精品亚洲αv天堂无码| 欧美在线视频不卡第一页| 国产浮力第一页永久地址| 亚洲美女视频一区| 国产激爽大片高清在线观看|