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

        ?

        Web服務(wù)訪問控制規(guī)范及其實(shí)現(xiàn)*

        2011-08-14 01:12:36張賽男
        關(guān)鍵詞:訪問控制調(diào)用視圖

        張賽男

        (中國人民解放軍理工大學(xué) 理學(xué)院,江蘇 南京 211100)

        隨著Web服務(wù)的廣泛應(yīng)用,Web服務(wù)中的訪問控制策略描述及實(shí)現(xiàn)顯得尤為重要。目前,Web服務(wù)安全標(biāo)準(zhǔn)以及其實(shí)現(xiàn)并不完善,Web服務(wù)安全多數(shù)交由作為應(yīng)用程序服務(wù)器的Web服務(wù)器的安全機(jī)制管理。例如,Tomcat服務(wù)器為用戶、組、角色的管理和為訪問Java-Web應(yīng)用程序的權(quán)限提供了安全管理。但是,Tomcat中的授權(quán)是粗粒度的,也就是說,Tomcat不可能限制對(duì)Web服務(wù)的單個(gè)的訪問操作。

        本文通過示例,探討如何把一種新的安全模型應(yīng)用到Web服務(wù)中。這種新的安全模型提供了一種規(guī)范語言——視圖策略語言,其授權(quán)可以在Web服務(wù)單個(gè)的操作層次上細(xì)粒度地指定,同時(shí)授權(quán)還可以通過操作的調(diào)用動(dòng)態(tài)地改變。這種模型和Web服務(wù)相結(jié)合,能夠?qū)崿F(xiàn)Web服務(wù)下安全訪問控制權(quán)限的動(dòng)態(tài)改變,改善目前靜態(tài)訪問控制的問題。

        1 Web服務(wù)訪問控制規(guī)范

        1.1圖書中心系統(tǒng)

        圖書中心系統(tǒng)是一個(gè)Web服務(wù)的簡單應(yīng)用,其結(jié)構(gòu)如圖1所示。

        圖書中心系統(tǒng)主要提供書店注冊服務(wù)、書店客戶注冊服務(wù)、書店處理客戶注冊請(qǐng)求服務(wù)、書店管理客戶借閱圖書信息服務(wù)和為所有的用戶查詢圖書信息的服務(wù)。其中書店注冊是其他所有服務(wù)的前提條件。

        1.2系統(tǒng)中的訪問控制需求

        圖書中心系統(tǒng)的訪問控制需求描述如下:

        BusinessRegistration:書店經(jīng)理注冊自己的書店。這個(gè)注冊是其他所有服務(wù)的前提條件。

        CustomerRegistration:書店的客戶向書店提交注冊申請(qǐng)。

        CustomerRegistrationProcess:書店處理客戶的注冊申請(qǐng)。

        CustomerBookList:書店僅能為自己的客戶使用此服務(wù)??蛻艨梢圆樵兗航栝喦鍐?,但不能在此清單上添加新的請(qǐng)求,只有店員可以添加客戶的借閱清單。

        BookSearch:店員和客戶都能使用此服務(wù)查詢圖書信息。

        1.3系統(tǒng)中的訪問控制

        基于視圖的訪問控制VBAC(View-BasedAccess Control)模型是專門用于支持分布式訪問控制策略的設(shè)計(jì)和管理的模型[1],圖2是VBAC的簡易模型。VBAC模型可以看成是基于角色的訪問控制RBAC(Role-Based Access Control)模型的擴(kuò)展,VBAC增加了視圖以及模式的概念。視圖描述的是對(duì)訪問對(duì)象的授權(quán),視圖被分配給角色。如果一個(gè)主體所扮演的角色擁有對(duì)某個(gè)對(duì)象訪問的視圖,則這個(gè)主體就可以訪問此對(duì)象。如果這個(gè)角色沒有這個(gè)視圖,則這個(gè)主體就不能訪問此對(duì)象。模式描述的是視圖和角色動(dòng)態(tài)的分配以及刪除。

        圖2 VBAC模型

        視圖策略語言VPL(View Policy Language)是一種說明性的語言,用于描述VBAC策略。VPL用于描述角色、視圖以及模式。角色在角色聲明roles之后,視圖以及模式聲明使用關(guān)鍵字view和schema。

        角色聲明描述了策略中的角色以及這些角色初始擁有的視圖。圖3是圖書中心的角色聲明。這個(gè)例子中有customer和staff兩個(gè)角色。 staff繼承了customer,customer能夠調(diào)用的操作,staff也可以調(diào)用。staff擁有初始視圖 BusinessRegistratoin,關(guān)鍵字holds來說明角色擁有視圖,而customer沒有初始視圖。

        圖3 VPL角色聲明

        圖4是圖書中心的訪問控制需求的VPL視圖聲明,關(guān)鍵字controls引導(dǎo)的是一個(gè)類或者接口。例如,視圖BusinessRegistration允許調(diào)用類BusinessRegistration的操作processRegisterRequest。VPL視圖可以靜態(tài)地被限制給特定的角色,這些角色羅列在關(guān)鍵字restricted to后面。例如,視圖BusinessRegistration只能被賦給角色staff而不能賦給 customer。

        VPL對(duì)被描述的授權(quán)操作的參數(shù)沒有限制,即不需要全部參數(shù)才能調(diào)用某個(gè)操作。例如,調(diào)用操作getCustomerGUID僅需要書店的loginBusinessID就能獲取到自己書店的所有客戶的信息。因?yàn)?,書店在注冊以后有?duì)應(yīng)的loginBusinessID。由于基于CORBA的應(yīng)用程序,都會(huì)采取為每個(gè)客戶端在服務(wù)器端創(chuàng)建一個(gè)對(duì)象的設(shè)計(jì)模式。因此,客戶端與創(chuàng)建的對(duì)象進(jìn)行通信無需身份驗(yàn)證。例如,在這個(gè)例子中,每個(gè)客戶端在服務(wù)器端都有一個(gè)CustomerRegistrationProcess對(duì)象,由于SOAP對(duì)面向?qū)ο笾С值木窒扌?,將loginBusinessID作為一個(gè)參數(shù)給出。

        圖4 VPL視圖定義

        因此,研究擴(kuò)展VPL來說明操作被調(diào)用的時(shí)候所必須具備的條件是在操作后添加if caller=param來指定必備條件。這個(gè)表達(dá)式中,關(guān)鍵字caller表示此操作調(diào)用者的ID,param表示操作的實(shí)參。調(diào)用者由一個(gè)整數(shù)表示其身份。如果操作的某個(gè)參數(shù)不是必須的,用”-”表示;如果視圖中操作參數(shù)沒有任何條件限制,則VPL視圖中僅有操作名稱的標(biāo)識(shí)符,而沒有參數(shù)列表。例如,視圖BusinessRegistration中的操作processRegisterProcess就屬于這一類型。

        依據(jù)服務(wù) CustomerBookList,角色 staff和 customer有不同的訪問需求。staff可以調(diào)用processAddRequest以及processQueryRequest兩個(gè)操作,但是customer僅能調(diào)用processQueryRequest。視圖CustomerBookListFull確定其使用角色是staff,可以擁有兩個(gè)操作,而CustomerBookListRestricted沒有角色的限制。如果視圖被調(diào)用,customer僅能查詢自己借閱的書。

        VPL模式(VPL Schema)為動(dòng)態(tài)訪問控制建立模型。它描述給定的操作被調(diào)用后帶來角色授權(quán)的改變,而角色不能擁有某個(gè)視圖,用assign視圖from角色表示;反之,用assign視圖to角色表示。圖5表示調(diào)用完操作processRegisterRequest后,將CustomerRegistrationProcess等視圖授權(quán)給角色staff,而將CustomerBookListRestricted等視圖授權(quán)給角色customer,即表示了訪問控制權(quán)限動(dòng)態(tài)地改變。

        圖5 VPL模式聲明

        2訪問控制策略的執(zhí)行

        這部分描述在Web服務(wù)下執(zhí)行VPL表示的訪問控制策略的基礎(chǔ)結(jié)構(gòu)。這個(gè)結(jié)構(gòu)中包含了執(zhí)行VPL所描述策略的Raccoon[2]結(jié)構(gòu)。

        2.1 Raccoon結(jié)構(gòu)

        Raccoon結(jié)構(gòu)包含了處理VPL策略的開發(fā)工具以及定義角色視圖的存儲(chǔ)庫(即角色、視圖服務(wù)器)。視圖角色服務(wù)器可以使用圖形管理工具來處理,訪問控制決策依據(jù)這些存儲(chǔ)庫來決定。

        圖6為Raccoon結(jié)構(gòu)的主要部分。角色服務(wù)器包含了用戶所有的角色證書,當(dāng)一個(gè)客戶在系統(tǒng)中認(rèn)證時(shí),客戶得到所有屬于自己的角色證書;而當(dāng)客戶端調(diào)用服務(wù)器端的某個(gè)操作時(shí),相應(yīng)的角色證書被傳送。此調(diào)用由攔截器攔截,攔截器傳送客戶端信息給訪問決策對(duì)象。如果客戶端被準(zhǔn)許調(diào)用此操作,訪問決策對(duì)象依據(jù)給出的角色以及策略來決策。請(qǐng)求策略分布在服務(wù)器上,如果策略允許客戶調(diào)用操作,那么攔截器給服務(wù)器發(fā)送一個(gè)請(qǐng)求;如果不允許,則此訪問被拒絕。

        圖6 Raccoon結(jié)構(gòu)

        2.2 Web服務(wù)訪問控制的實(shí)現(xiàn)

        Web服務(wù)訪問控制的實(shí)現(xiàn)使用Raccoon來管理和執(zhí)行VPL策略,即通過獲取SOAP消息,讓Raccoon做出訪問控制的決策,依賴于Raccoon的決策,來拒絕或者發(fā)送SOAP消息。因?yàn)橄⒃诜?wù)器端加密,客戶證書在服務(wù)器端傳輸,因此把HTTP作為傳輸協(xié)議。

        2.2.1 Web服務(wù)部署

        此結(jié)構(gòu)中,把Web服務(wù)部署在Apache Tomcat服務(wù)器上,同時(shí)使用Axis引擎。Axis本質(zhì)上是一個(gè)SOAP引擎,提供創(chuàng)建服務(wù)器端、客戶端和網(wǎng)關(guān)SOAP操作的基本框架[3]。使用 Axis是為了利用 Axis handler概念。handler是SOAP消息的特殊部分,例如,handler可以控制消息發(fā)送方在允許消息被服務(wù)器處理之前對(duì)其執(zhí)行身份驗(yàn)證。

        2.2.2策略部署

        Web服務(wù)的VPL策略部署在策略服務(wù)器中。由于Raccoon是基于CORBA的,所以部署VPL策略需要CORBA接口庫。接口使用IDL語言描述,IDL語言由WSDL演變而來。這種演變可以由XSL樣式表轉(zhuǎn)換,例如,WSDL中 portTypes對(duì)應(yīng)了 IDL的 interfaces,operations對(duì)應(yīng)了 IDL的operations,WSDL操作中<input>元素對(duì)應(yīng)了 IDL中的參數(shù) in,<o(jì)utput>對(duì)應(yīng)了 IDL中的參數(shù) out。

        2.2.3用于訪問決策的Axis handler

        Axis handler充當(dāng)CORBA客戶端與角色以及策略服務(wù)器通信的中介。當(dāng) SOAP消息通過 handler,handler從SOAP消息中獲取用戶信息(如證書)以及請(qǐng)求的方法名以及參數(shù)。這些證書用于從Raccoon角色服務(wù)器中獲取用戶的角色證書。角色服務(wù)器中存放了用戶證書和角色之間的關(guān)系。策略服務(wù)器包含了視圖以及視圖和角色之間的關(guān)聯(lián)?;诳蛻艚巧琱andler決定是否允許訪問Web服務(wù)操作。如果訪問被拒絕,將拋出異常;否則,SOAP消息被發(fā)送給Web服務(wù)。

        本文使用VPL來描述Web服務(wù)的訪問控制需求。VPL以及相應(yīng)的訪問控制模型來源于基于CORBA的應(yīng)用。通過擴(kuò)展VPL來覆蓋所有的Web服務(wù)需求。提出了一種用于實(shí)現(xiàn)基于Web應(yīng)用的訪問控制策略的結(jié)構(gòu),同時(shí)也為Web服務(wù)安全管理提供部署和管理工具。

        VPL可以用于描述XACML規(guī)范,可以通過樣式表將VPL轉(zhuǎn)換成XACML。后期工作主要集中于將Raccoon結(jié)構(gòu)轉(zhuǎn)化為XACML模型,為其他系統(tǒng)提供互操作性,例如 jiffyXACML或者 sun’sXACML。

        [1]張賽男.軟件系統(tǒng)UML建模與其安全建模的集成[J].計(jì)算機(jī)工程,2007,33(8),86-88.

        [2]BROSE G.Raccoon-an infrastructure for managing access control in CORBA[C].Proceeding Conference on Distributed Applications and Interoperable Systems (DAIS), Paris,F(xiàn)rance,2004.

        [3]PAPAZOGLOU M P.Web服務(wù):原理與技術(shù)[M].龔玲,張?jiān)茲?,譯.北京:機(jī)械工業(yè)出版社,2010.

        猜你喜歡
        訪問控制調(diào)用視圖
        核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        5.3 視圖與投影
        視圖
        Y—20重型運(yùn)輸機(jī)多視圖
        SA2型76毫米車載高炮多視圖
        ONVIF的全新主張:一致性及最訪問控制的Profile A
        基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
        動(dòng)態(tài)自適應(yīng)訪問控制模型
        淺析云計(jì)算環(huán)境下等級(jí)保護(hù)訪問控制測評(píng)技術(shù)
        亚洲av无码一区二区乱孑伦as | 久久se精品一区精品二区国产| 亚洲欧美日韩高清专区一区| 中文字幕亚洲无线码a| 国产黄色三级三级三级看三级| 精品麻豆一区二区三区乱码| 久久成人成狠狠爱综合网| 九一九色国产| 久久精品国产91久久性色tv| 国产精品成人黄色大片| 国产精品高清视亚洲乱码| 又色又爽又高潮免费视频观看| 一二三四在线视频观看社区| 日本高清不卡二区| 国产日产免费在线视频| 在线观看的a站免费完整版 | 91三级在线观看免费| 国产h视频在线观看| 手机看片久久国产免费| 亚洲高清精品50路| 中文字幕综合一区二区| 成年女人vr免费视频| 亚洲国产综合人成综合网站| 国产一区二区三区高清视频| 日本一区二区国产精品| 亚洲av无码专区亚洲av伊甸园| 免费又黄又爽又猛的毛片| 欧美牲交videossexeso欧美| 一区二区三区视频在线观看| 国产97在线 | 日韩| 丰满少妇被猛烈进入无码| 在线观看国产精品91| 日本一区二区三区在线观看免费| 日本人妖一区二区三区| 精品国产午夜肉伦伦影院| 大肉大捧一进一出好爽视色大师 | 亚洲AV色欲色欲WWW| 极品美女调教喷水网站| 99久久精品免费看国产| 人妻无码人妻有码中文字幕| 91亚洲人成手机在线观看|