數(shù)據(jù)持久層在統(tǒng)一安全框架中的研究與應(yīng)用_第1頁
數(shù)據(jù)持久層在統(tǒng)一安全框架中的研究與應(yīng)用_第2頁
數(shù)據(jù)持久層在統(tǒng)一安全框架中的研究與應(yīng)用_第3頁
數(shù)據(jù)持久層在統(tǒng)一安全框架中的研究與應(yīng)用_第4頁
數(shù)據(jù)持久層在統(tǒng)一安全框架中的研究與應(yīng)用_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、數(shù)據(jù)持久層在統(tǒng)一安全框架中的研究與應(yīng)用文章標(biāo)題不超過20字王自強(qiáng),段晉鵬不同作者用逗號(hào)分開(西北工業(yè)大學(xué)軟件與微電子學(xué)院,陜西西安 710065)單位全名 部門(系)全名,省 市(或直轄市) 郵政編碼摘要:根據(jù)統(tǒng)一安全框架的特點(diǎn),本文借鑒了Hibernate持久化技術(shù)框架,提出了適用于統(tǒng)一安全框架的安全上下文持久層的設(shè)計(jì)方案,并有效的提高了安全上下文的高可用性。精練,180字以內(nèi),第三人稱主動(dòng)態(tài)表述。摘要內(nèi)容(包括目的、方法、結(jié)果和結(jié)論四要素) 關(guān)鍵詞:統(tǒng)一安全框架;安全上下文;Hibernate;持久層;序列化一般可選38個(gè)關(guān)鍵詞,用中文表示,分號(hào)隔開中圖法分類號(hào):TP311中國圖書館分類法

2、(第4版)中查詢 文獻(xiàn)標(biāo)識(shí)碼: AResearch and Application of Persistence Layer in Common Security FrameworkZiqiang,Wang, Jinpeng,Duan(Software and Microelectronics college, Northwest Polytechnical University, Xian Shanxi 710065)Abstract: Based upon the characteristic of Common Security Framework, and referring to t

3、he persistence technique of Hibernate, this paper designs a security context persistence layer for Common Security Framework , and it reinforces the high-availability (HA) requirements of security context.與中文部分對(duì)應(yīng)Keywords: Common Security Framework; Security Context; Hibernate;Persistence Layer; Seri

4、alization與中文關(guān)鍵詞對(duì)應(yīng),字母小寫(縮略詞除外)1. 引言統(tǒng)一安全框架CSF(Common Security Framework)是針對(duì)目前普遍應(yīng)用于分布式系統(tǒng)安全和用戶身份認(rèn)證的分散登陸和分散管理技術(shù),所存在各子系統(tǒng)缺乏良好通用性,紛繁身份注冊(cè)等問題所提出的一種統(tǒng)一安全機(jī)制。 通常,統(tǒng)一安全框架圍繞安全上下文(Security Context)來構(gòu)建,以訪問不同系統(tǒng)資源,實(shí)現(xiàn)多任務(wù)處理。因此,安全上下文的高可用性和持久化即成為衡量統(tǒng)一安全框架的一個(gè)重要標(biāo)準(zhǔn)?,F(xiàn)行持久化技術(shù)中,Hibernate以其開源性,易操作性(對(duì)JDBC的輕量級(jí)對(duì)象封裝),受到j(luò)ava開發(fā)人員的喜愛,但由于CS

5、F需要提供多種存儲(chǔ)方式(內(nèi)存、文件系統(tǒng)、數(shù)據(jù)庫),其安全上下文可以跨越多種java虛擬機(jī)(JVM)且不存在事務(wù)性要求,如若采用Hibernate技術(shù)設(shè)計(jì)安全上下文數(shù)據(jù)持久層便會(huì)存在難以維護(hù)、移植以及可修改性和可再用性差等問題。針對(duì)該問題,本文借鑒Hibernate的框架結(jié)構(gòu),提出了一種適用于統(tǒng)一安全框架的安全上下文數(shù)據(jù)持久層的設(shè)計(jì)方案。 2. 統(tǒng)一安全框架(CSF)統(tǒng)一安全框架將不同應(yīng)用系統(tǒng)、資源的認(rèn)證、授權(quán)、訪問控制等進(jìn)行統(tǒng)一的管理控制,將相應(yīng)的安全模塊集成到一個(gè)單一安全架構(gòu)中。該CSF支持單點(diǎn)登陸(SSO)、集中的身份管理、認(rèn)證、授權(quán)、傳輸中的加密和解密等。圖1為CSF客戶端的簡(jiǎn)單示意圖,

6、其主要包括客戶端接口、安全提供者等幾個(gè)部分。圖1 CSF 的Client 示意圖統(tǒng)一安全框架的實(shí)現(xiàn)需要以安全上下文為基礎(chǔ)。上下文(Context)是指與用戶、應(yīng)用程序及所處的環(huán)境之間交互相關(guān)的任何信息1,而安全上下文(Security Context)則是安全相關(guān)的各種信息。具體實(shí)現(xiàn)時(shí),當(dāng)一個(gè)新用戶通過客戶端提出請(qǐng)求時(shí),SCF通過客戶端接口產(chǎn)生一個(gè)新的上下文實(shí)例,通過安全提供者(CSF Provider)經(jīng)過操作相應(yīng)的安全上下文來完成對(duì)該用戶的認(rèn)證、授權(quán)、加密和解密等,用戶則可通過此上下文訪問相應(yīng)的系統(tǒng)或資源。3. 持久化數(shù)據(jù)持久化,即把數(shù)據(jù)(如內(nèi)存中的對(duì)象)保存到可永久保存的如數(shù)據(jù)庫、磁盤文

7、件等存儲(chǔ)設(shè)備中以實(shí)現(xiàn)其長(zhǎng)期存儲(chǔ)。這樣便可保證數(shù)據(jù)在應(yīng)用程序終止之后,依然被保留以供下一次運(yùn)行時(shí)使用,同時(shí)實(shí)現(xiàn)不同應(yīng)用程序之間的數(shù)據(jù)共享。持久化數(shù)據(jù)根據(jù)其需要存儲(chǔ)的內(nèi)容通常被分為部分持久數(shù)據(jù),持久數(shù)據(jù)以及完全持久數(shù)據(jù)三類2,本文的上下文數(shù)據(jù)持久層即針對(duì)部分持久數(shù)據(jù)設(shè)計(jì)的。4. 統(tǒng)一安全框架的持久層框架結(jié)構(gòu)本文在上述統(tǒng)一安全框架的基礎(chǔ)上,參照Hibernate的實(shí)現(xiàn)機(jī)制3,運(yùn)用面向?qū)ο蟮姆椒ǎ芯亢驮O(shè)計(jì)了統(tǒng)一安全框架的安全上下文數(shù)據(jù)持久層。圖2為統(tǒng)一安全框架的持久層框架結(jié)構(gòu)圖,可以看出。該框架分為兩層,分別為安全上下文的管理層和安全上下文的存儲(chǔ)層。安全上下文的管理層包含三個(gè)重要接口,分別為安全上下

8、文接口(Security Context interface)、安全上下文工廠接口(SecContext Factory interface)和配置接口(Configration interface),同時(shí)包含了兩個(gè)重要的安全上下文API: serialization() 和checkConfigrationCompatibility()。 安全上下文存儲(chǔ)層提供統(tǒng)一的存儲(chǔ)管理方法,同時(shí)支持內(nèi)存存儲(chǔ)(Memory Store)、文件系統(tǒng)存儲(chǔ)(File-system Store)和JDBC數(shù)據(jù)庫存儲(chǔ)(Database Store)的三種存儲(chǔ)方式。圖2 統(tǒng)一安全框架的持久層框架結(jié)構(gòu)圖圖題名4.1 序

9、列化(serialization)序列化是持久化的前提。本論文的設(shè)計(jì)方案沿用了Hibernate 的java序列化機(jī)制。將一個(gè)實(shí)例對(duì)象的狀態(tài)信息寫入一個(gè)字節(jié)流中,使其可以通過socket進(jìn)行傳輸、或者持久化存儲(chǔ)到數(shù)據(jù)庫或文件系統(tǒng)中,在需要時(shí),可根據(jù)字節(jié)流中的信息重構(gòu)一個(gè)相同的對(duì)象。此外,方案中還提供了loadcontext()和storetext()兩個(gè)方法,用于將安全上下文序列化的同時(shí),從安全數(shù)據(jù)流讀、寫context,以實(shí)現(xiàn)持久化存儲(chǔ)。本設(shè)計(jì)支持的三種存儲(chǔ)方式中,除內(nèi)存存儲(chǔ)之外,其余皆需要將對(duì)象進(jìn)行序列化處理。4.2 安全上下文管理層設(shè)計(jì)安全上下文管理層主要用于生成、管理、維護(hù)安全上下文對(duì)

10、象??紤]到Factory模式能為創(chuàng)建對(duì)象實(shí)例提供良好的策略,該層借鑒Hibernate的設(shè)計(jì)模式采用Factory的模式設(shè)計(jì)4。同時(shí)根據(jù)數(shù)據(jù)對(duì)象依據(jù)不同數(shù)據(jù)源而表現(xiàn)不同的實(shí)現(xiàn),而數(shù)據(jù)訪問對(duì)象的接口卻統(tǒng)一,因此在設(shè)計(jì)上采用配置文件來配置不同的實(shí)現(xiàn)。具體處理過程為,首先通過Configuration類的buildSecContextFactory方法獲得一個(gè)SecContextFactory類的實(shí)例,把Configuration對(duì)象包含的所有配置信息拷貝到SecContextFactory對(duì)象的緩存中。再通過SecContextFactory類的newContext方法獲得SecContext實(shí)例

11、,然后借用該實(shí)例來獲得授權(quán),訪問各種安全資源。4.2.1 安全上下文接口(SecContext interface) 安全上下文接口在安全上下文管理層中主要負(fù)責(zé)安全上下文的各種操作。借助該接口我們可以獲得相應(yīng)上下文中用戶的基本信息、可訪問資源以及對(duì)某一資源的訪問方式、權(quán)限等。表1為SecContext接口提供的獲取安全上下文數(shù)據(jù)的方法。表1 SecContext接口的方法方法描述checkAccess查看user 對(duì)特定資源是否具有相應(yīng)的訪問方式。checkRole查看user 是否有相應(yīng)的訪問權(quán)限。listRoles列舉該context 所具有的所有權(quán)限。listResources列舉該co

12、ntext 可能訪問的所有資源。getResource獲得特定資源的引用,借助該引用可以進(jìn)行checkAccess()操作。getSubject獲得相應(yīng)的主體對(duì)象,該主體對(duì)象等價(jià)一個(gè)user, 可以利用該引用得到user 的name, email address 等信息。getProfile獲得 profile 信息。getCipher根據(jù)特定的profile 獲得 javax.crypto.Cipher 對(duì)象listProfiles列舉該context 所知道的所有profile 信息。getID獲得context 的唯一ID.表題名、三線表格式4.2.2 安全上下文工廠接口(SecCont

13、extFactory interface)安全上下文工廠接口是安全上下文管理層的核心,負(fù)責(zé)基本的創(chuàng)建管理安全上下文對(duì)象。為了保證創(chuàng)建的對(duì)象準(zhǔn)確無誤,該接口增添了兩個(gè)機(jī)制:A)安全上下文導(dǎo)入導(dǎo)出機(jī)制:該機(jī)制確保本接口為安全上下文的唯一出口、為進(jìn)行復(fù)雜邏輯的上下文持久設(shè)計(jì)提供了可能,為兼容性檢查提供了可能,同時(shí)能夠防止非法安全上下文的訪問。該機(jī)制是通過增加loadContext()、storeContext()方法來實(shí)現(xiàn)的。其簡(jiǎn)單的讀/寫I/O數(shù)據(jù)流的方式如下:/* Load a context from a stream. * throws SecException if the configu

14、ration hash does not match * or other error occurs */SecContext loadContext(InputStream is) throws SecException;/* Store a context to a stream */void storeContext(SecContext ctx, OutputStream os) throws SecException;B)兼容性確認(rèn)機(jī)制:考慮到統(tǒng)一安全框架需要在不同的系統(tǒng)、資源間建立統(tǒng)一安全訪控制機(jī)制,同時(shí)安全上下文需要在不同的java虛擬機(jī)間傳輸,為了避免不同JVM之間其配置不一致

15、而導(dǎo)致安全上下文不能被新系統(tǒng)自動(dòng)引導(dǎo)。我們?cè)谧x、寫 安全上下文之外引入了確認(rèn)機(jī)制CheckConfigurationCompatibility()。該機(jī)制是通過密碼哈稀函數(shù) (cryptographic hash) 實(shí)現(xiàn)。當(dāng)安全上下文寫入數(shù)據(jù)流存儲(chǔ)時(shí),根據(jù)該系統(tǒng)的屬性配置生成cryptographic hash值,將該hash值與安全上下文一起存儲(chǔ),當(dāng)其它系統(tǒng)再次載入相同的安全上下文時(shí),則用同樣的方法生成新系統(tǒng)的hash值,將兩值比較,匹配時(shí)才可確認(rèn)該安全上下文。4.2.3 配置接口 (Configration interface) 為了實(shí)現(xiàn)配置文件的生成,每次生成新的安全上下文時(shí),安全上下文

16、管理層都會(huì)通過配置接口來生成相應(yīng)的配置文件。該接口提供兩種配置文件,提供者分別為普通配置方式和xml配置方式。5. 安全上下文的存儲(chǔ)層設(shè)計(jì) 安全上下文的存儲(chǔ)直接通過安全上下文存儲(chǔ) 層來管理。持久層通過該管理模塊向上直接提供存儲(chǔ)數(shù)據(jù),向下對(duì)存儲(chǔ)方式進(jìn)行管理。其具體是通過void store(SecStoreKey id, Object data),void update(SecStoreKey id, Object newData),Object load(SecStoreKey id),void delete(SecStoreKey id)四種方法對(duì)三種存儲(chǔ)方式進(jìn)行操作,操作中需要提供用于區(qū)分

17、存儲(chǔ)方式的SecStoreKey和用于指明存儲(chǔ)調(diào)用對(duì)象的Object兩個(gè)參數(shù),值得注意的是,Object一個(gè)序列化的對(duì)象,而對(duì)內(nèi)存存儲(chǔ)而言,對(duì)象則不需要進(jìn)行序列化處理。除此之外還需要在三種存儲(chǔ)方式的配置文件中,設(shè)置安全上下文在存儲(chǔ)層的生命周期:intemLifetime(表示該實(shí)體在內(nèi)存中的持續(xù)時(shí)間,一般以秒計(jì)算每調(diào)用一次安全上下文該值將會(huì)被重新設(shè)置)和cleanupThreshold(該值定義了清除過期安全上下文的時(shí)間,起初設(shè)置一個(gè)計(jì)數(shù)器,在每次生成一個(gè)新的安全上下文實(shí)體時(shí)加1, 當(dāng)其達(dá)到一定限值時(shí), 調(diào)用相應(yīng)的清除程序, 將過期的安全上下文刪除)兩個(gè)參數(shù),來進(jìn)行定期的資源清理。6. 結(jié)語:

18、 本文以統(tǒng)一安全框架為基礎(chǔ),借鑒了Hibernate持久化技術(shù)的設(shè)計(jì)思想,提出了安全上下文導(dǎo)出機(jī)制和兼容性確認(rèn)機(jī)制,并在此基礎(chǔ)上設(shè)計(jì)了統(tǒng)一安全框架的安全上下文持久層框架。該框架結(jié)合了Hinbernate框架的優(yōu)點(diǎn),開發(fā)簡(jiǎn)潔,結(jié)構(gòu)清晰,達(dá)到了安全上下文高可用性的要求,同時(shí)提高了統(tǒng)一安全框架的可重用性,可伸縮性以及可維護(hù)性,非常適合于面向?qū)ο蟮脑O(shè)計(jì)與開發(fā)。該持久層框架已經(jīng)應(yīng)用到CSF中,取得良好的效果。參考文獻(xiàn) 1BREZILLON P. Focusing on context in human- centered computingC. IEEE Intelligent Systems, 200

19、3,18(3). 24-27. 2AMBLER S W.The design of a robust persistence layer for relationaldatabasesEB/OL.(2005-06-21).2005-10-10.http:/www.A3精通 Hibernate: Java 對(duì)象持久化技術(shù)詳解 /孫衛(wèi)琴編著M. 北京:電子工業(yè)出版 社. 2005.54設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ) / Gamma,Richard Helm, Ralph Johnson 等著. 李英軍,馬曉星,蔡敏等譯M. 北京: 機(jī)械工業(yè)出版社,2005 個(gè)人著者采用姓前名后的形式,英文作者

20、姓全部大寫,名可縮寫,省略縮寫點(diǎn);漢語拼音書寫的姓名不得縮寫。著者間以“,”隔開,三人以上者,錄入前三人姓名后加“等”,英文姓名則加“et al”作者簡(jiǎn)介: 王自強(qiáng)(1979- ),男,河北邯鄲,碩士,研究方向?yàn)檐浖こ蹋?段晉鵬(1974-),男,西北工業(yè)大學(xué)軟件與微電子學(xué)院 ,碩士生導(dǎo)師, 研究方向?yàn)檐浖こ绦彰?、出生年、性別、職稱及主要研究方向。如有基金項(xiàng)目支持,請(qǐng)?jiān)谥形念}目上加“*”上標(biāo)標(biāo)注 文獻(xiàn)類型和標(biāo)志代碼1. 文獻(xiàn)類型2. 標(biāo)志代碼3. 普通圖書4. M5. 會(huì)議錄、文集6. C7. 報(bào)紙8. N9. 期刊10. J11. 學(xué)位論文12. D13. 報(bào)告14. R15. 標(biāo)準(zhǔn)16

21、. S17. 專利18. P19. 電子公告20. OL21. 數(shù)據(jù)庫22. DB23. 電子公告24. EB25. 計(jì)算機(jī)程序26. CP電子文獻(xiàn)載體和標(biāo)志代碼27. 載體類型28. 標(biāo)志代碼29. 磁盤(Disk)30. DK 如CP/DK31. 光盤(CD-ROM)32. CD33. 聯(lián)機(jī)網(wǎng)絡(luò)(On-line)34. OL 如 M/OL,EB/OL, J/OL示例如下:A 期刊1盧浩,胡華平,劉波.惡意軟件分類方法研究J.計(jì)算機(jī)應(yīng)用研究,2006,23(9):4-7,12.(卷號(hào)黑體)2VARSHNEY U,VETTER R. Mobile commerce: framework, ap

22、plications and networking supportJ. Mobile Networks and Applications, 2002, 7(3):185-198. (英文期刊名及卷號(hào)黑體) 3李曉東,張慶紅,葉瑾琳.氣候?qū)W研究的若干理論問題J.北京大學(xué)學(xué)報(bào):自然科學(xué)版,1999,35(1):101-106. B 專著4昂溫 G,等.外國出版史M.陳生錚,譯.北京:中國書籍出版社,1988.5ROOD H J. Logic and structured design for computer programmersM.3rd ed.S.l.:Brooks/Cole-Thomson

23、 Learning,2001.C 論文集、會(huì)議集6YUFIN S A. Geoecology and computer: proceedings of the 3rd International Conference on Advances of Computer Methods in Geotechnical and Geoenvironmental Engineering,Moscow,2000C.Rotterdam: A A balkerma,2000.7辛希孟.信息技術(shù)與信息服務(wù)國際研討會(huì)論文集:A集C.北京:中國社會(huì)科學(xué)出版社,1994.D 專著、論文集中析出的文獻(xiàn)8程根偉.1998

24、年長(zhǎng)江洪水的成因與減災(zāi)對(duì)策M(jìn)/許澤厚,趙其國.長(zhǎng)江流域洪澇災(zāi)害與科技對(duì)策.北京:科學(xué)出版社,1999:32-36.9鐘文發(fā).非線性規(guī)劃在可燃毒物配置中的應(yīng)用C/趙瑋.運(yùn)籌學(xué)的理論與應(yīng)用:中國運(yùn)籌學(xué)會(huì)第五屆大會(huì)論文文集.西安:西安電子科技大學(xué)出版社,1996:468-471.10FOURNEY M E. Advances in holographic photoelasticityC/American Society of Mechanical Engineers. Applied Mechanics Division. Symposium on Applications of Holograp

25、hy in Mechanics,1971,University of Southern California, Los Angeles. New York:ASME,1971:17-38.E 學(xué)位論文、科技報(bào)告(用戶手冊(cè))及技術(shù)標(biāo)準(zhǔn)11史龍.無線傳感器網(wǎng)絡(luò)自身定位算法研究D.西安:西北工業(yè)大學(xué),2005.12World Health Organization. Factors regulating the immune response:report of WHO Science GroupR.Geneva:WHO,1970.13MC8100 RSIC Microprocessor Users manualR. 2nd ed. Englewood Cliffs: Prentice Hall,1990.14全國文獻(xiàn)工作標(biāo)準(zhǔn)化技術(shù)委員會(huì)第七分委員會(huì).GB/T 5795-1986 中國標(biāo)準(zhǔn)書號(hào)S.北京:中國標(biāo)準(zhǔn)出版社,1986.15ISO/IEC 10181-3 Information technology: open system interconne

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論