亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

位置敏感且基于角色的訪問控制方法、裝置和系統(tǒng)的制作方法

文檔序號(hào):7916931閱讀:231來源:國知局
專利名稱:位置敏感且基于角色的訪問控制方法、裝置和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及訪問控制,更具體地涉及利用自動(dòng)建立的位置敏感且基于 角色的訪問控制模型對(duì)目標(biāo)資源進(jìn)行訪問控制的方法、裝置和系統(tǒng)。
背景技術(shù)
隨著基于位置服務(wù)(LBS)的普及,位置敏感-基于角色的訪問控制 (LRBAC)在諸如機(jī)密會(huì)議、公司信息安全、金融機(jī)構(gòu)的數(shù)據(jù)安全等的許 多應(yīng)用中都有很好的前景。特定的應(yīng)用場合(例如通信網(wǎng)絡(luò)、公司、醫(yī)院等)通常涉及各種用 戶,其中,這些用戶可以按相互關(guān)系或者用戶在該應(yīng)用場合中充當(dāng)?shù)慕巧?來成組或歸類。角色之間通常具有層級(jí)關(guān)系并且各個(gè)角色通常承擔(dān)不同的 職能職責(zé),因而各個(gè)用戶可能需要與其角色相關(guān)聯(lián)地訪問特定資源。另 外,出于安全、隱私或其它因素的考慮,可能需要按角色限制用戶對(duì)特定 資源的訪問。于是希望開發(fā)基于用戶角色的訪問控制機(jī)制。此外,可以使用位置信息來提供額外的安全措施,因而服務(wù)的可訪問 性也可以取決于用戶的位置。例如,對(duì)于特定的目標(biāo)資源,僅當(dāng)用戶位于 該目標(biāo)資源所在位置時(shí)才允許該用戶對(duì)其進(jìn)行訪問。因此,很重要的是對(duì) 訪問控制機(jī)制的傳統(tǒng)概念進(jìn)行擴(kuò)展,以考慮用戶在有界空間的假設(shè)下的移 動(dòng)性??赡苡捎谝韵聨追N原因而使空間有界化因?yàn)槲锢砗图夹g(shù)限制(例 如,辦公空間、公園邊界、網(wǎng)絡(luò)范圍等),或者因?yàn)闋I銷抉擇(例如,賦 予到訪者的區(qū)域越大,則到訪者支付費(fèi)用也越多),或者出于安全的考慮 (例如,軍事區(qū)內(nèi)的服務(wù))。出于以上考慮,LRBAC系統(tǒng)使用用戶的位置和角色信息作為判斷依 據(jù)來授予用戶訪問許可?,F(xiàn)有的LRBAC系統(tǒng)是基于LRBAC模型來管理 用戶對(duì)目標(biāo)資源的訪問的。LRBAC模型的核心思想是通過建立許可分配(PA, permission assignment)關(guān)系來模型化從角色、位置到許可的分 配。PA限定了當(dāng)針對(duì)特定角色的許可根據(jù)該角色所關(guān)聯(lián)用戶的位置而動(dòng) 態(tài)變化時(shí)的安全策略。
LRBAC模型的建立可以追溯到由R. Sandhu、 D. Ferraiolo和R. Kuhn 在論文"The NIST Model for Role Based Access Control: Towards a Unified Standard, Proceedings of 5th ACM Workshop on Role Based Access Control, July 26-27, 2000 "中提出的RBAC模型(Role-Based Access Control model) 。 RBAC模型將用戶的角色視為訪問控制的唯一判斷依據(jù)。
基于RBAC,通過引入用戶的位置信息作為訪問控制的附加判斷依 據(jù),提出了各種位置敏感-基于角色的訪問控制(LRBAC)模型。例如, 在F. Hansen禾口 V. Oleshchuk的論文"Spatial role-based access control model for wireless networks, Proceedings of Vehicular Technology Conference, 2003"中,RBAC被擴(kuò)展以克服無線計(jì)算環(huán)境中的空間需求并限定基于位 置的安全策略。在Indrakshi Ray、 Mahendm Kumar和Lijun Yu的論文"A Location-Aware Role-Based Access Control Model, Proceedings of ICISS 2006: 147-161"中提出了一種LRBAC模型,用以示出RBAC模型中的不同分量 如何與位置相關(guān),以及該位置信息如何用于判斷用戶是否可以訪問給定目 標(biāo)。在M丄.Damiani、 E.Bertino 、 B.Catania禾卩P.Perlasca的論文"A Spatially Aware RBAC, ACM TISSEC, February 2007"中提出了一種GEO-RBAC模型,用以利用OGC (開放地理空間信息聯(lián)盟)標(biāo)準(zhǔn)來模型化位置 信息。空間實(shí)體被用于模型化目標(biāo)、用戶位置、和地理上有界的角色。
可見,以上的位置敏感-基于角色的訪問控制主要集中于對(duì)使用角色和 位置兩者作為判斷依據(jù)的訪問控制模型的描述和公式表示,因此這樣的模 型是很難付諸實(shí)際應(yīng)用的。具體而言,當(dāng)特定應(yīng)用環(huán)境需要位置敏感-基于 角色的訪問控制時(shí),將需要花費(fèi)大量精力來分析并定義從角色、位置到許 可的多對(duì)多分配。
因?yàn)長RBAC模型中的角色-位置-許可事實(shí)上是三維映射關(guān)系,因此 對(duì)于大規(guī)模的基于位置的應(yīng)用而言,LRBAC模型的建立處理是復(fù)雜、不 用戶友好,且極其困難的。這使得基于這種現(xiàn)有技術(shù)LRBAC模型的訪問控制是高成本且不用戶友好的。

發(fā)明內(nèi)容
基于以上分析,本發(fā)明希望提供簡單、用戶友好且自動(dòng)化的訪問控制 方法、裝置和系統(tǒng)。
根據(jù)本發(fā)明一個(gè)方面,提供了一種訪問控制方法,其中,目標(biāo)空間被 劃分為若干位置區(qū)域,每一位置區(qū)域具有相應(yīng)的位置敏感許可集,目標(biāo)空 間中的用戶被劃分為一種或多種角色,并且每一角色與一位置區(qū)域相映 射,該方法包括以下步驟獲取各個(gè)角色之間的組織關(guān)系和表示各個(gè)位置 區(qū)域的位置向量;基于位置區(qū)域的位置向量分析這些位置區(qū)域相互之間的 覆蓋關(guān)系從而建立位置偏序關(guān)系;濾除位置偏序關(guān)系中的傳遞覆蓋關(guān)系以 獲得位置鄰接關(guān)系;將各個(gè)角色之間的組織關(guān)系中的角色鄰接關(guān)系添加到 位置鄰接關(guān)系中從而建立位置-角色鄰接關(guān)系;基于位置-角色鄰接關(guān)系來 計(jì)算位置-角色偏序關(guān)系;以及參考所述位置-角色偏序關(guān)系來確定是否授 權(quán)用戶的訪問。
在一個(gè)示例中,各個(gè)角色之間的組織關(guān)系用矩陣、表格或Hasse圖表 示。在一個(gè)示例中,位置偏序關(guān)系、位置鄰接關(guān)系、位置-角色鄰接關(guān)系 和位置-角色偏序關(guān)系中的每一個(gè)都用矩陣表示。
根據(jù)本發(fā)明另一個(gè)方面,提供了一種訪問控制裝置,其中,目標(biāo)空間 被劃分為若干位置區(qū)域,每一位置區(qū)域具有相應(yīng)的位置敏感許可集,目標(biāo) 空間中的用戶被劃分為一種或多種角色,并且每一角色與一位置區(qū)域相映 射,該裝置包括獲取部分,被配置為獲取各個(gè)角色之間的組織關(guān)系和表 示各個(gè)位置區(qū)域的位置向量;位置偏序關(guān)系建立部分,被配置為基于位置 區(qū)域的位置向量來分析位置區(qū)域相互之間的覆蓋關(guān)系從而建立位置偏序關(guān) 系;位置鄰接關(guān)系建立部分,被配置為濾除位置偏序關(guān)系中的傳遞覆蓋關(guān) 系以建立位置鄰接關(guān)系;位置-角色鄰接關(guān)系建立部分,被配置為將各個(gè) 角色之間的組織關(guān)系中的角色鄰接關(guān)系添加到位置鄰接關(guān)系中從而建立位 置-角色的鄰接關(guān)系;位置-角色偏序關(guān)系計(jì)算部分,被配置為基于位置-角色鄰接關(guān)系來計(jì)算位置-角色偏序關(guān)系;以及鑒權(quán)部分,被配置為參考 所述位置-角色偏序關(guān)系來確定是否授權(quán)用戶的訪問。
根據(jù)本發(fā)明又一個(gè)方面,提供了一種訪問控制系統(tǒng),其包括客戶 端,用戶使用該客戶端來發(fā)出包括該用戶的角色信息的訪問請(qǐng)求;無線定 位裝置,用于確定該用戶所處的位置;以及根據(jù)本發(fā)明一個(gè)實(shí)施例的訪問 控制裝置,用于根據(jù)從客戶端傳送而來的所述用戶的角色信息以及從無線 定位裝置傳送而來的所述用戶的位置信息來確定是否授權(quán)該用戶的訪問請(qǐng) 求。
通過結(jié)合附圖來閱讀以下詳細(xì)描述,本發(fā)明的其它特征和優(yōu)點(diǎn)對(duì)于本 領(lǐng)域技術(shù)人員而言將變得足夠清楚。


圖l是示出角色、位置區(qū)域、位置許可集和角色許可集之間的對(duì)應(yīng)關(guān)
系的一個(gè)示例的表格;
圖2是示出各個(gè)角色的組織關(guān)系的一個(gè)示例的示圖3是示出根據(jù)本發(fā)明一個(gè)實(shí)施例的LRBAC處理的流程圖4示出了根據(jù)本發(fā)明一個(gè)實(shí)施例、基于角度來判斷一個(gè)點(diǎn)是否落在
一個(gè)凸多邊形區(qū)域內(nèi)的處理的流程圖5示出了某技術(shù)開發(fā)公司C的辦公區(qū)圖6是示出圖5所示公司應(yīng)用場合所涉及的角色、位置區(qū)域、位置許 可集以及角色許可集之間的對(duì)應(yīng)關(guān)系的表格;
圖7是示出圖5所示的公司應(yīng)用場合所涉及的角色之間的組織關(guān)系的 示圖8示出了圖5所示的公司應(yīng)用場合的許可Hasse圖; 圖9示出了根據(jù)本發(fā)明 一個(gè)實(shí)施例的位置敏感-基于角色的訪問控制裝 置的配置;以及
圖10是示出可以實(shí)現(xiàn)本發(fā)明的一個(gè)示例性位置敏感-基于角色的訪問 控制系統(tǒng)的示意圖。
具體實(shí)施例方式
以下將參考附圖來描述本發(fā)明的實(shí)施例。在這里的描述中,提供了許 多具體細(xì)節(jié)以幫助全面理解本發(fā)明的實(shí)施例。但是,本領(lǐng)域的技術(shù)人員將 了解,沒有這些具體細(xì)節(jié)中的一個(gè)或多個(gè)也能實(shí)現(xiàn)本發(fā)明。在其他情況 下,沒有具體地示出或詳細(xì)描述公知的組件或操作,以避免不必要地模糊 本發(fā)明實(shí)施例的各個(gè)方面。
接下來,在詳細(xì)描述根據(jù)本發(fā)明的位置敏感-基于角色的控制
(LRBAC)方法之前,為了便于理解本發(fā)明,將結(jié)合附圖l-2簡要描述本 發(fā)明所涉及的下述概念以及它們的相互關(guān)系角色、位置區(qū)域、位置許可 集、角色許可集和角色之間的組織關(guān)系。其中,圖1是示出角色、位置區(qū) 域、位置許可集和角色許可集之間的對(duì)應(yīng)關(guān)系的一個(gè)示例的表格,而圖2 是示出各個(gè)角色的組織關(guān)系的 一個(gè)示例的示圖。
對(duì)于給定的目標(biāo)空間(例如,網(wǎng)絡(luò)環(huán)境、公司、醫(yī)院等),該目標(biāo)空 間中的用戶可以劃分為一種或多種角色(表示為角色集合R, R包括n、 r2、…、rn, n為自然數(shù)),并且該目標(biāo)空間可以劃分為若干位置區(qū)域(表 示為位置區(qū)域集合L, L包括foCl、 /oc2、…、/ocN, N為自然數(shù))。另 外,在實(shí)際應(yīng)用中,每個(gè)角色通常都擁有其位置區(qū)域。換而言之,每個(gè)角 色可以映射到一位置區(qū)域。例如,角色"經(jīng)理"可以映射到經(jīng)理辦公室, 角色"醫(yī)生"可以映射到"診室"等。但是,反過來,并不是每個(gè)位置區(qū) 域都有對(duì)應(yīng)角色,因而存在n《N。圖1中的表格的前兩行示出了角色與 位置區(qū)域的對(duì)應(yīng)關(guān)系。 在本發(fā)明中,定義了一個(gè)函數(shù)fi。c (ri),用于計(jì)算給定角色&的對(duì)應(yīng) 位置區(qū)域。通過這種方式,角色-位置-許可的三維映射關(guān)系可以縮減為角 色/位置-許可的二維映射關(guān)系。
這里應(yīng)該注意,在實(shí)際應(yīng)用中,劃分得到的位置區(qū)域之間不存在部分 交叉的情形。也就是說,對(duì)于任意兩個(gè)位置區(qū)域,要不兩個(gè)位置區(qū)域互不 交叉,要不一個(gè)位置區(qū)域完全覆蓋另一個(gè)位置區(qū)域。此外,優(yōu)選的是,將 位置區(qū)域數(shù)學(xué)近似為多邊形。此外,對(duì)于該給定目標(biāo)空間,目標(biāo)空間中的資源(例如,文件、軟 件、網(wǎng)頁、打印等)可以被配置為位置敏感,以使得位置區(qū)域集合L中的 各個(gè)位置區(qū)域與預(yù)定安全級(jí)別的資源相關(guān)聯(lián)。即,對(duì)于給定的位置敏感資 源,只有當(dāng)用戶處于該位置敏感資源所關(guān)聯(lián)的位置區(qū)域中時(shí),才允許該用 戶訪問該位置敏感資源。這里,將與位置區(qū)域相關(guān)聯(lián)的預(yù)定安全級(jí)別的資 源稱為位置敏感許可集(以下簡稱為位置許可集)。如上所述的位置區(qū)域 集合L中的各個(gè)位置區(qū)域/0Cl、 /oc2、…、/ocN的對(duì)應(yīng)位置許可集表示為 PerL!、 PerL2、 ...、 PerLN,如圖1中的表格的第三行所示。
角色許可集,是指各個(gè)角色的可能訪問權(quán)限。如上所述的角色集合R 中的各個(gè)角色r!、 r2、…、L的對(duì)應(yīng)角色許可集表示為PerRi、 PerR2、...、 PerRn,如圖l中的表格的第四行所示。在本發(fā)明中,每個(gè)角色許可集由一 個(gè)或多個(gè)位置許可集組成。例如,角色& (i=l、 2、 ...、 n)的角色許可 集PerRi可以包括PerLj (j二l、 2、 ...、 N)。在這種情況下,PerLj是角色 rj的可能訪問權(quán)限,因?yàn)樵诒景l(fā)明中目標(biāo)資源是位置敏感的,所以僅當(dāng)承 擔(dān)角色rj的用戶在位置區(qū)域/oCj中時(shí)才真正具有對(duì)位置許可集PerLj的訪問 權(quán)限。
角色之間的組織關(guān)系是指層級(jí)關(guān)系,例如,公司職員按職能劃分的上 下級(jí)關(guān)系,或者網(wǎng)絡(luò)用戶按服務(wù)級(jí)別劃分的層級(jí)關(guān)系,等等。如上所述的 角色集合R中的各個(gè)角色n、 r2、…、rj列如具有圖2所示的組織關(guān)系。 一般而言,較高級(jí)別的角色具有比較低級(jí)別的角色更多的許可。例如,參 考圖2,對(duì)于角色n和r2,存在PerR2cPerRi。根據(jù)一個(gè)實(shí)施例,該組織 關(guān)系可以用矩陣、表格或Hasse圖來表示。
在本發(fā)明中,角色、位置區(qū)域、位置許可集以及角色之間的組織關(guān)系 是預(yù)先設(shè)定的,而角色許可集是需要計(jì)算得到的。
以下將參考圖3來描述根據(jù)本發(fā)明的位置敏感-基于角色的訪問控制 (LRBAC)處理。圖3是示出根據(jù)本發(fā)明一個(gè)實(shí)施例的LRBAC處理10 的流程圖。如圖3所示,根據(jù)本實(shí)施例的LRBAC處理10從步驟Sll開始。在步 驟Sll中,給定目標(biāo)空間所包括的各個(gè)位置區(qū)域的位置向量以及所涉及的 角色的組織關(guān)系被獲得。
注意,這里所使用的位置向量例如是由多邊形位置區(qū)域的頂點(diǎn)坐標(biāo)組 成的頂點(diǎn)坐標(biāo)向量。例如,對(duì)于有m (m>3)個(gè)頂點(diǎn)的位置區(qū)域,其頂點(diǎn) 坐標(biāo)向量表示為[v(l),v(2),v(3),…v(m)],其中,v(i)是該位置區(qū)域的第i個(gè) 頂點(diǎn)的頂點(diǎn)向量[v"i), vy(i)],并且在頂點(diǎn)向量[v"i), Vy(i)]中,、(i)是該第 i個(gè)頂點(diǎn)的橫坐標(biāo),v"i)是該第i個(gè)頂點(diǎn)的縱坐標(biāo),i=l, 2, 3, ...m。特別 地,在給定位置區(qū)域呈矩形的情況下,該位置區(qū)域的位置向量例如是由左 下頂點(diǎn)和右上頂點(diǎn)限定的對(duì)角向量[/, d, r, t],其中,(/, d)禾Q (r, t)是該矩形位置區(qū)域的左下頂點(diǎn)和右上頂點(diǎn)的坐標(biāo)。當(dāng)然,矩形位置區(qū)域 也可以由左上頂點(diǎn)和右下頂點(diǎn)限定的對(duì)角向量來表示。
在獲得各個(gè)位置區(qū)域的位置向量和各個(gè)角色的組織關(guān)系之后,圖3所 示的處理10前進(jìn)到步驟S12。
在步驟S12中,通過分析各個(gè)位置區(qū)域的覆蓋關(guān)系來建立位置偏序關(guān) 系。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)了解,覆蓋關(guān)系具有自反性、反對(duì)稱性和傳遞 性,因此覆蓋關(guān)系是一種偏序關(guān)系。對(duì)于任意兩個(gè)位置區(qū)域fo。和/0Cj,
如果區(qū)域fo。完全包含在區(qū)域foCj中,則可以確定區(qū)域/0Cj覆蓋區(qū)域fo。, 表示為/0C/0Cj。特別地,對(duì)于任意兩個(gè)凸多邊形位置區(qū)域foCi和/0Cj, 如果區(qū)域/0Ci的所有頂點(diǎn)都落在區(qū)域/0Cj的范圍內(nèi),則可以確定 /OCi《/OCj。在這種情況下,關(guān)鍵問題是如何確定一個(gè)點(diǎn)是否落在一個(gè)位置 區(qū)域內(nèi)。
以下將參考圖4來描述根據(jù)本發(fā)明一個(gè)實(shí)施例的基于角度來判斷一個(gè) 點(diǎn)(假定為X)是否落在一個(gè)凸多邊形區(qū)域R內(nèi)的處理,其中,該凸多邊 形區(qū)域R的位置向量為[v(l),v(2),v(3),…,v(m)], m為該凸多邊形區(qū)域的頂 點(diǎn)數(shù)目。
如圖4所示,首先在步驟S51中將點(diǎn)X的坐標(biāo)初始化為零,即 v[X]=(0,0),也就是說,重新定義了一個(gè)原點(diǎn)為X的新坐標(biāo)系;并且定義以下新的變量Angle=0, i=l, fK)。然后在步驟S52中,確定區(qū)域R的各 個(gè)頂點(diǎn)在新坐標(biāo)系中所處的象限。
接下來,在步驟S53中,從第一個(gè)頂點(diǎn)v(l)開始順序地獲取區(qū)域R的 兩個(gè)頂點(diǎn)v(i)和v(i+l)。在步驟S54中判斷這兩個(gè)頂點(diǎn)是否處于同一個(gè)象 限,如果它們處于同一個(gè)象限,則處理前進(jìn)到步驟S64;否則處理進(jìn)一步 判斷頂點(diǎn)v(i)的下一個(gè)頂點(diǎn)v(i+l)是否處于其下一個(gè)象限(S55)。在步驟 S55中,如果頂點(diǎn)v(i+l)處于頂點(diǎn)v(i)的下一個(gè)象限,則將Angle的值加上 (S56),否則進(jìn)一步判斷頂點(diǎn)v(i+l)是否處于頂點(diǎn)v(i)的上一個(gè)象限 (S57)。在步驟S57中,如果判定頂點(diǎn)v(i+l)處于頂點(diǎn)v(i)的上一個(gè)象 限,則將Angle的值減去兀/2 (S58),否則可以判定頂點(diǎn)v(i+l)處于頂點(diǎn) v(i)的對(duì)角象限。在這種情況下,在步驟S59中,計(jì)算變量f的值-
v力'+ W) (1)
其中,(Vx(i),Vy(i))為頂點(diǎn)V(i)在新坐標(biāo)系中的坐標(biāo)。
然后,在步驟S60中,判斷f的值是否大于零。如果判定fX),則在 步驟S61中將Angle的值加上兀,否則進(jìn)一步判斷f是否小于零(S62)。 如果判定fO,則在步驟S63中將Angle的值減去兀,否則可以判定^0并 且處理前進(jìn)到步驟S64。此外,在完成步驟S56、 S58、 S61或S63的計(jì)算 之后,處理也前進(jìn)到步驟S64。在步驟S64中,將i值加1。然后在步驟 S65中判斷此時(shí)的i是否小于區(qū)域R的頂點(diǎn)數(shù)目m,如果判定i<m,則處 理返回到步驟S53以進(jìn)行下一對(duì)頂點(diǎn)的比較。否則,判斷i是否等于m, 也就是判斷是否已經(jīng)到達(dá)最后一個(gè)頂點(diǎn)(S66)。如果答案是肯定的,則 將頂點(diǎn)v(l)賦給此時(shí)的v (i+1)(步驟S67),然后處理返回到步驟 S53,以使得對(duì)區(qū)域R的第m個(gè)頂點(diǎn)和第一個(gè)頂點(diǎn)進(jìn)行比較。否則,區(qū)域 R的所有頂點(diǎn)的比較結(jié)束,于是在步驟S68中根據(jù)最終得到的Angle的值 來判斷點(diǎn)X是否落在區(qū)域R的范圍內(nèi)。具體而言,如果Angl^2",則點(diǎn) X在區(qū)域R內(nèi);如果Angle-Ji,則點(diǎn)X在區(qū)域R的一條邊上;否則,點(diǎn) X在區(qū)域R的范圍之外。通過上述基于角度的處理,對(duì)于任意兩個(gè)凸多邊形區(qū)域/0Ci和/0Cj, 如果區(qū)域/0Ci的所有頂點(diǎn)都落在區(qū)域foCj的范圍內(nèi),則可以確定
現(xiàn)在返回到圖3,在步驟S12中,在感興趣的位置區(qū)域呈矩形時(shí),可 以通過對(duì)矩形位置區(qū)域的對(duì)角向量進(jìn)行比較來確定這些矩形位置區(qū)域的覆 蓋關(guān)系,從而簡化確定任意兩個(gè)位置區(qū)域的覆蓋關(guān)系的處理。在一個(gè)實(shí)施
例中,對(duì)于任意兩個(gè)矩形位置區(qū)域/0Ci和foCj,
如果7 ' , 7 ,,貝U/oCi、/oCj (2)
其中,i、 j = l, 2, ..., N, N為位置區(qū)域的數(shù)目。
應(yīng)當(dāng)注意,在步驟S12中,根據(jù)一個(gè)實(shí)施例,可以用N申N矩降Rl來 表示位置偏序關(guān)系,其中,N為位置區(qū)域的數(shù)目。矩降Rl中的各個(gè)元素按 下式來取值。
7^,力=0否則
在矩陣Rl中,行1、 2、 ...、 N分別對(duì)應(yīng)于位置區(qū)域/0Cl、 foc2、…、 /ocN,并且列l(wèi)、 2、 ...、 N分別對(duì)應(yīng)于位置區(qū)域/od、 /oc2、…、/ocN。 以上雖然描述了用矩陣表示位置偏序關(guān)系的示例,但是,這僅僅是例示性 的而非限制性的。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)了解,也可以用二叉樹之類的樹等 來表示位置偏序關(guān)系。
還應(yīng)當(dāng)注意,位置區(qū)域的覆蓋關(guān)系暗示了位置許可集的覆蓋關(guān)系。對(duì) 于任意兩個(gè)位置區(qū)域/oq和/ocj,它們的位置許可集分別為PerLi和PerLj, 如果存在/oci《/ocj,貝l」PerLjcPerLi為真。這很容易理解,例如,當(dāng)一個(gè) 用戶處于位置區(qū)域foci中時(shí),其具有的位置許可集為PerLi,而當(dāng)其處于位 置區(qū)域focj中時(shí),其具有的位置敏感許可集合為PerLj。此時(shí),如果存在
/0?!?/0Cj,則當(dāng)用戶處于/0Ci中時(shí),他也處于/0Cj中,那么必然會(huì)有
PerLjcPerLi。因此,對(duì)于矩陣Rl中的各個(gè)元素,可以理解為
(3)i^(Z,y〕 = l如果尸e《〕尸e廠丄j (4) )丄0》')=0否則
本領(lǐng)域公知的是,覆蓋關(guān)系可以分為直接覆蓋和傳遞覆蓋(transitive coverage)。顧名思義,直接覆蓋指的是一個(gè)區(qū)域直接被另一個(gè)區(qū)域覆 蓋,而傳遞覆蓋指的是間接覆蓋。例如,如果存在覆蓋關(guān)系
/0Ci一/0Cj《/0Ck,則區(qū)域/0Ci被區(qū)域/0Cj直接覆蓋,并且被區(qū)域/0Ck傳遞覆
蓋,這兩種覆蓋關(guān)系都包括在步驟S12所建立的位置偏序關(guān)系中。但是, 事實(shí)上,傳遞覆蓋是可以從直接覆蓋關(guān)系推導(dǎo)得到的。所以可以濾除該位 置偏序關(guān)系中的傳遞覆蓋關(guān)系,以便于下一步處理。
在步驟S12中建立各個(gè)位置區(qū)域的位置偏序關(guān)系之后,圖3所示的處 理10前進(jìn)到步驟S13。
在步驟S13中,通過濾除步驟S12所建立的位置偏序關(guān)系中的傳遞覆 蓋關(guān)系來獲得僅指示出直接覆蓋關(guān)系的位置鄰接關(guān)系。具體而言,在
/0Ci《/0Ck的情況下,如果存在/0Ci《foCj和/0Cj《/0Ck,則刪除/0Q和/0Ck的 覆蓋關(guān)系/0Ci《/。Ck。
根據(jù)本發(fā)明一個(gè)實(shí)施例,可以用矩陣AL來表示所述位置鄰接關(guān)系。
但是本領(lǐng)域技術(shù)人員應(yīng)當(dāng)了解,這個(gè)實(shí)施例僅僅是例示性的而非限制性 的,例如,也可以用二叉樹之類的樹等來表示位置鄰接關(guān)系。在一個(gè)示例
中,位置鄰接關(guān)系矩陣AL可以基于位置偏序關(guān)系矩陣RL通過以下算法計(jì)
算得到。
1. A鳴
2. for卜l:iV
if A =1
if =1 and if jz =1, j丄(/,_/) =0
else if々(/HA (/,^=0 endfor endif cndfor endfor
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)了解,以上僅僅是從位置偏序關(guān)系矩陣RL推導(dǎo)位置鄰接關(guān)系矩陣Al的一個(gè)示例算法,其僅僅是示意性的而非限制性 的。根據(jù)本發(fā)明所給出的技術(shù)啟示,本領(lǐng)域技術(shù)人員還可以提出許多變形 例和修改例。
在步驟S13中獲得位置鄰接關(guān)系之后,圖3所示的處理10前進(jìn)到步 驟S14。
在步驟S14中,根據(jù)角色與位置區(qū)域的映射關(guān)系(參見圖1中的表格 前兩行),可以將各個(gè)角色之間的鄰接關(guān)系添加到步驟S13所獲得的位置 鄰接關(guān)系中,從而建立位置-角色鄰接關(guān)系。
在步驟S14中,角色之間的鄰接關(guān)系可以通過遍歷步驟Sll所獲得的 各個(gè)角色的組織關(guān)系(例如,如圖2所示)來獲得。例如,在角色之間的 組織關(guān)系用Hasse圖表示的情況下,根據(jù)Hasse圖自身的特性,如果角色 ri和角色rj之間存在鏈路,并且角色ri是角色rj的父角色,則角色&鄰接于 角色rj,并且角色ri的許可直接覆蓋角色fj的許可。此時(shí),根據(jù)角色與位 置區(qū)域的映射關(guān)系,可以將任意兩個(gè)角色之間的鄰接關(guān)系(即,角色許可 的直接覆蓋關(guān)系)添加到所述位置鄰接關(guān)系中的由該任意兩個(gè)角色所對(duì)應(yīng) 的位置區(qū)域限定的位置處。換而言之,可以根據(jù)角色與位置區(qū)域的映射關(guān) 系將角色鄰接關(guān)系與位置鄰接關(guān)系合并以形成位置-角色鄰接關(guān)系。
例如,在用矩陣來表示步驟S13所獲得位置鄰接關(guān)系的情況下,可以 通過下述方式將其更新為位置-角色鄰接關(guān)系矩陣Al,r: 1)將位置鄰接關(guān) 系矩陣AL賦值給位置-角色鄰接關(guān)系矩陣Al,r; 2)遍歷角色的Hasse圖, 如果角色ri和角色fj之間存在鏈路,則使得
ALR /o^)),x(4c(0)) = 1 ( 5 )
其中,fl。e(rO表示角色ri所對(duì)應(yīng)的位置區(qū)域,而算子Idex( )用于提取位置 區(qū)域在矩陣Al,r中的行標(biāo)或列標(biāo)。
應(yīng)當(dāng)注意,因?yàn)槊總€(gè)角色都具有一個(gè)對(duì)應(yīng)位置區(qū)域,所以在位置-角色 鄰接關(guān)系矩陣AL,R中,可以將其行理解為角色&而將其列理解為位置區(qū) 域foCj。在位置敏感-基于角色的訪問控制中,當(dāng)用戶的角色以及該用戶所 處位置確定時(shí),就可以得到該用戶的許可集。因此,如果用戶具有角色& 且其處于位置focj,并且存在AL,R(ri,/0Cj)=l,則此時(shí)該用戶具有許可集合Per (ri,/ocj),而且該許可集合Per (ri5/oc」)被角色許可集PerRi覆蓋。因 此,利用位置-角色鄰接關(guān)系(位置-角色直接覆蓋關(guān)系)矩陣Al,r,可以 列出由位置和角色確定的許可直接覆蓋關(guān)系。
在步驟S14中建立位置-角色鄰接關(guān)系之后,圖3中的處理10前進(jìn)到 步驟S15。
在步驟S15中,基于在步驟S14中建立的位置-角色鄰接關(guān)系來計(jì)算位 置-角色偏序關(guān)系。在本發(fā)明一個(gè)實(shí)施例中,在用矩陣來表示步驟S14所建 立的位置-角色鄰接關(guān)系的情況下,可以通過下式來計(jì)算位置-角色偏序關(guān) 系矩陣Rl,r:
1=脂丄,,《,,..《 (6) 其中,算子 表示邏輯或,N為位置區(qū)域的個(gè)數(shù),I表示單位矩陣,并且 其中A^的k (k=l,2,...N)次冪^^表示矩陣AL,r的邏輯k次冪。矩陣 Al,r的邏輯平方可由下式表示
^2(")=堂 (局',,雄,力) (7)
其中,算子②表示邏輯與。如式(7)所示,矩陣A^的邏輯平方中的第i 行、第j列的元素是將矩陣Al,k的第i行和第j列的對(duì)應(yīng)元素進(jìn)行邏輯與然 后進(jìn)行邏輯或來得到的。通過這種方式,基于式(7)的運(yùn)算,就可以得
到矩陣AL,k的邏輯k次冪。
本領(lǐng)域技術(shù)人員應(yīng)當(dāng)了解,根據(jù)圖論(Graph theory)以及上面的論
述,AL,k表示許可集合的直接覆蓋關(guān)系,乂h表示深度為2的傳遞覆蓋關(guān)
系,而4 表示深度為k的傳遞覆蓋關(guān)系。因此,根據(jù)式(6)可以得到完 備的覆蓋關(guān)系(偏序關(guān)系)。
此外,根據(jù)角色和位置之間的映射關(guān)系,可以認(rèn)為,矩陣RL,n中的每 一行指示角色,而每一列指示位置區(qū)域。而且,如上所述,位置區(qū)域的覆 蓋關(guān)系可以轉(zhuǎn)換為位置許可集的覆蓋關(guān)系,并且角色的鄰接關(guān)系可以轉(zhuǎn)換 為角色許可集的覆蓋關(guān)系。因此,矩陣RL,n指示出了綜合的位置-角色許可 的覆蓋關(guān)系(許可的偏序關(guān)系)。
事實(shí)上,到此為止完成了位置敏感且基于角色的訪問控制模型的建 立。在獲得完備的位置-角色偏序關(guān)系之后,圖3中的處理IO前進(jìn)到步驟S16。
在步驟S16中,通過參考步驟S15所計(jì)算得到的位置-角色偏序關(guān)系來
確定是否授權(quán)用戶的訪問。具體而言,例如可以利用圖4所示的處理來確
定用戶所處的位置落在哪個(gè)或哪些位置區(qū)域中,然后參考在步驟S15中獲
得的位置-角色偏序關(guān)系(位置-角色許可覆蓋關(guān)系)來確定用戶所承擔(dān)的
角色在這個(gè)或這些位置區(qū)域中是否有訪問權(quán)限。
至此,完成了根據(jù)以上實(shí)施例的位置敏感-基于角色的訪問控制處理。
根據(jù)本發(fā)明一個(gè)實(shí)施例,在圖3所示的步驟S16中,還可以基于所計(jì)
算得到的完備位置-角色偏序關(guān)系來確定各個(gè)角色的角色許可集。在一個(gè)示
例中,基于位置-角色偏序關(guān)系矩陣Rl,r,通過以下示例算法來生成各個(gè)角
色的許可集。其中,Per(ri)表示角色許可集PerRi, Per(lj)表示位置許可集
PerL"
For i=l:n
permission sets Per(r,.) = em/ (y
add permission set Per(/》to Per(。)
end if
)++;
end for end for
應(yīng)當(dāng)了解,以上給出的是基于位置-角色偏序關(guān)系來確定各個(gè)角色的角 色許可集的示例算法,其僅僅是示意性的而非限制性的。根據(jù)本發(fā)明所給 出的技術(shù)啟示,本領(lǐng)域技術(shù)人員還可以提出許多變形例和修改例。在各個(gè) 角色的角色許可集被確定的情況下,在圖3的步驟S16中,參考位置-角色 偏序關(guān)系包括查詢各個(gè)角色的角色許可集。
此外,根據(jù)本發(fā)明一個(gè)實(shí)施例,位置敏感-基于角色的訪問控制處理還 包括接收用戶的訪問請(qǐng)求、該用戶的角色信息以及該用戶的位置信息,并 且在授權(quán)用戶的訪問請(qǐng)求時(shí),根據(jù)該用戶的訪問請(qǐng)求、角色信息和位置信 息,參考所述位置-角色偏序關(guān)系來確定是否授權(quán)該用戶進(jìn)行訪問。
此外,根據(jù)本發(fā)明一個(gè)實(shí)施例,位置敏感-基于角色的訪問控制處理還 可以根據(jù)完備的位置-角色偏序關(guān)系,例如根據(jù)上述位置-角色偏序關(guān)系矩陣RL,k來生成并輸出許可Hasse圖。在一個(gè)示例中,首先根據(jù)矩陣Rl,h來 計(jì)算許可覆蓋矩陣CL,R (參見殷劍宏的論文"An efficient algorithm of evaluating Hasse Diagram, Journal of Hefei University of Technology (——禾中生 成Hasse圖的有效算法),Vol.28 No.3, 2005"):
(8)
其中,(RL,R—I) 2表示矩陣(RL,R—I)的邏輯平方;然后根據(jù)以下兩個(gè)
規(guī)則,對(duì)許可覆蓋矩陣CL,k中的每個(gè)元素繪制一個(gè)點(diǎn),并且在這些點(diǎn)之間
繪制線段
1) 對(duì)于許可覆蓋矩陣中的任意兩個(gè)元素x和y,如果存在x《;;,則 在繪圖時(shí)與x相對(duì)應(yīng)的點(diǎn)出現(xiàn)在與y相對(duì)應(yīng)的點(diǎn)的下方;
2) 對(duì)于任意兩個(gè)元素x和y,如果x覆蓋y或者y覆蓋x,則與這兩 個(gè)元素相對(duì)應(yīng)的點(diǎn)之間的線段包括在圖中。
為了便于理解,以下將以公司應(yīng)用場合為例、參考圖5-7并結(jié)合圖3 所示的處理10來描述根據(jù)本發(fā)明一個(gè)實(shí)施例的位置敏感-基于角色的訪問 控制處理。圖5示出了某技術(shù)開發(fā)公司C的辦公區(qū)圖,圖6是示出圖5所 示公司應(yīng)用場合所涉及的角色、位置區(qū)域、位置許可集以及角色許可集之 間的對(duì)應(yīng)關(guān)系的表格,而圖7是示出圖5所示的公司應(yīng)用場合所涉及的角 色之間的組織關(guān)系的示圖。
如圖5所示,該公司包括以下角色經(jīng)理M、項(xiàng)目組長T/1、項(xiàng)目組 長T/2、項(xiàng)目組Tl的軟件工程師Sl、項(xiàng)目組Tl的硬件工程師Hl、項(xiàng)目 組T2的軟件工程師S2和項(xiàng)目組T2的硬件工程師H2。對(duì)于以上的每個(gè)角 色都存在一個(gè)與其相對(duì)應(yīng)的位置區(qū)域(圖中,除經(jīng)理辦公室之外用虛線框 指示的區(qū)域),分別表示為Loc—M、 Loc—T/l、 Loc—T/2、 Loc—Sl 、 Loc—HI 、 Loc—S2和Loc—H2。此外,按照職能分工(例如按照項(xiàng)目分 組),還可以將所述辦公區(qū)劃分為項(xiàng)目組Tl所處位置區(qū)域Loc—Tl、項(xiàng)目 組T2所處位置區(qū)域Loc—T2以及經(jīng)理辦公室Loc_M??梢?,位置區(qū)域 Loc—Tl覆蓋了位置區(qū)域Loc—Sl、 Loc—Hl和Loc—T/l,而位置區(qū)域Loc—T2 覆蓋了位置區(qū)域Loc—S2、 Loc—H2和Loc—T/2。另外,整個(gè)辦公區(qū)可以用 Loc C表示。至此,可以得到角色和位置區(qū)域之間的映射關(guān)系。圖6中的
20表格的前兩行示出了基于圖5的應(yīng)用場合的角色和位置區(qū)域的對(duì)應(yīng)關(guān)系。
此外,圖6中的表格還給出了與各個(gè)位置區(qū)域相對(duì)應(yīng)的位置許可集 PerL—M、 PerL—T/l、 PerL—T/2、 PerL—Sl、 PerL—Hl、 PerL一S2、 PerL—H2、 PerL—Tl、 PerL一T2、 PerL—C等,以及與各個(gè)角色相對(duì)應(yīng)的角色許可集 PerR—M、 PerR—T/l、 PerR一T/2、 PerR—Sl、 PerR一Hl、 PerR—S2、 PerR—H2 等。圖7示出了圖5所示的公司應(yīng)用場合所涉及的角色的示例性組織關(guān) 系。如上所述,較高級(jí)別的角色具有比較低級(jí)別的角色更多的許可。例 如,參考圖7,對(duì)于角色M和T/1,存在PerR—T/lcPerR—M。
現(xiàn)在,將結(jié)合圖3所示的處理10來描述上述公司應(yīng)用場合的位置敏 感-基于角色的訪問控制處理。為了清楚起見,在隨后的描述中提及的偏序 關(guān)系和/或鄰接關(guān)系都用矩陣來表示,但是,這僅僅是例示性的而非限制性 的。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)了解,偏序關(guān)系和/或鄰接關(guān)系也可以用諸如二叉 樹之類的樹來表示。
在圖3的步驟S11中,公司C的辦公區(qū)圖(參見圖5)和公司C中的 各個(gè)角色的組織關(guān)系(參見圖7)被獲得,其中各個(gè)角色的組織關(guān)系是用 Hasse圖表示的。如圖5所示,在本示例中,公司C的各個(gè)位置區(qū)域呈矩 形,因此在步驟S11中獲得了以下位置向量
區(qū)域Loc—C =
區(qū)域Loc—M=
區(qū)域Loc—T1 =
區(qū)域Loc—T2 = [55, 25, 100, 100]
區(qū)域Loc—T/l = [5, 26, 30, 40]
區(qū)域Loc—T/2=[70, 26, 90, 40]
區(qū)域Loc—Hl = [5, 43, 40, 65]
區(qū)域Loc—H2 = [60, 43, 95, 65]
區(qū)域Loc—Sl = [5, 68, 40, 90]
區(qū)域Loc—S2 = [60, 68, 95, 90]
在步驟S12中,對(duì)步驟Sll所獲得的各個(gè)位置區(qū)域的位置向量進(jìn)行比 較,以確定任意兩個(gè)位置區(qū)域的覆蓋關(guān)系,從而建立位置偏序關(guān)系矩陣Rl。例如,對(duì)于區(qū)域Loc_C和區(qū)域Loc—M,通過比較它們的位置向量可
以得到
丄oc _M, S Z^oc—C, 丄oc—> Zoc— 丄oc Mi《丄oc Ci
由此可得Loc—M《Loc—C,因而在矩降Rl中
有Rl (Loc—C, Loc_M) =1。通過這種方式,可以確定公司C中的所有 位置區(qū)域的覆蓋關(guān)系,因而得到位置偏序關(guān)系矩陣rl如下式(9)所示。
Loc C Loc TlLoc T2 Loc M Loc T/l Loc T/2 Loc SI Loc HI Loc S2 Loc H2
及,
ioc —771 .ioc —772
0 0 0
0
1
0
1 1 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
(9)
在步驟S13中,通過濾除步驟S12所建立的位置偏序關(guān)系矩陣Rl中
的傳遞覆蓋關(guān)系來獲得僅指示出位置直接覆蓋關(guān)系的位置鄰接關(guān)系矩陣
AL。例如,在式(9)的矩陣Rl中,存在RL (Loc—T/l, Loc—C) =1 (即,位置區(qū)域Loc—C覆蓋位置區(qū)域Loc—T/l),與此同時(shí),存在Rl (Loc— T/l, Loc—Tl) =1 (即,位置區(qū)域Loc—Tl覆蓋位置區(qū)域 Loc_T/l)禾n RL (Loc_Tl, Loc—C) =1 (即,位置區(qū)域Loc—C覆蓋位置 區(qū)域Loc—Tl)。由此可見,位置區(qū)域Loc—C傳遞覆蓋位置區(qū)域Loc—T/l, 則刪除位置區(qū)域Loc—C和Loc— T/l之間的傳遞覆蓋關(guān)系,即使得Rl (Loc—T/l, Loc_C) 二0。通過這種方式,可以濾除位置偏序關(guān)系矩陣rl 中的所有傳遞覆蓋關(guān)系,并得到位置鄰接關(guān)系矩陣Al,如下式(10)所Loc C Loc TlLoc T2 Loc M Loc T/l Loc T/2 Loc SI Loc HI Loc S2 Loc H2
丄oc —771 ioc—772
0 0 0
0
1
0
1 1 0 0
0 0 0 0
0
1 0
0
1 1
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
(io)
在步驟S14中,根據(jù)角色與位置區(qū)域的映射關(guān)系(參見圖6中的表格 前兩行),可以將各個(gè)角色之間的鄰接關(guān)系添加到步驟S13所獲得的位置 鄰接關(guān)系矩陣AL中。具體而言,遍歷步驟Sll所獲得的各個(gè)角色的Hasse 圖(參見圖7),如果兩個(gè)角色存在鄰接關(guān)系,則將該鄰接關(guān)系添加到位 置鄰接關(guān)系矩陣AL中的與這兩個(gè)角色的位置區(qū)域相對(duì)應(yīng)的位置處。例 如,參見圖7,可見角色M和角色T/1存在鄰接關(guān)系,于是將該鄰接關(guān)系 添加到位置鄰接關(guān)系矩陣A^中的位置區(qū)域Loc—M行和位置區(qū)域Loc—T/l 列的位置處,即,使得(Loc—M, Loc— T/l) =0被更新為Al (Loc—M, Loc—T/l) =1。通過這種方式,可以得到位置-角色鄰接關(guān)系 矩陣A^,如下式(11)所示。
Loc C Loc TlLoc T2 Loc M Loc T/l Loc T/2 Loc SI Loc HI Loc S2 Loc H2
—0000000000
ioc—ri1000000000
1000000000
1000110000
丄oc—7710100001100
丄oc — 7720010000011
丄oc —510100000000
0100000000
0010000000
丄oc0010000000
(11)
在步驟S15中,基于在步驟S14中建立的位置-角色鄰接關(guān)系矩陣 根據(jù)式(6)來計(jì)算完備的位置-角色偏序關(guān)系矩陣Rl,R,如下式(12)所<formula>formula see original document page 24</formula>
最后,在步驟S16中,通過參考步驟S15所計(jì)算得到的位置-角色偏序 關(guān)系矩陣rl,ii來確定是否授權(quán)用戶的訪問。至此,完成了在圖5所示的公 司應(yīng)用場合中的位置敏感-基于角色的訪問控制。
在一個(gè)實(shí)施例中,在圖5所示的公司應(yīng)用場合下,可以基于位置-角色 偏序關(guān)系矩陣Rl,r,利用本領(lǐng)域公知的簡單算法(例如,上面所述的算
法)來確定各個(gè)角色的許可集,如下所示
PerR—M={PerL—M, PerL—T/l, PerL—T/2, PerL_Sl, PerL—Hl, PerL—S2,
PerL一H2, PerL—Tl, PerL_T2, PerL—D}; PerR—T/l={ PerL—T/l, PerL一Sl, PerL—HI, PerL—Tl, PerL—D }; PerR—T/2={ PerL—T/2, PerL一S2, PerL一H2, PerL—T2, PerL—D }; PerR—Sl={ PerL一Sl, PerL—Tl, PerL—D }; PerR_Hl={ PerL—HI, PerL一Tl, PerL_D }; PerR_S2={ PerL—S2, PerL一T2, PerL一D }; PerR_H2= { PerL—H2, PerL—T2, PerL_D }。
在此實(shí)施例中,步驟S16中的參考位置-角色偏序關(guān)系矩陣Rl,k包括査 詢各個(gè)角色的角色許可集。
此外,在一個(gè)實(shí)施例中,在圖5所示的公司應(yīng)用場合下,可以根據(jù)上 述位置-角色偏序關(guān)系矩陣Rw來生成并輸出許可Hasse圖。具體而言,首 先將計(jì)算得到的位置-角色偏序關(guān)系矩陣Rl,h代入式(8),從而計(jì)算得到 許可覆蓋矩陣Cl,r,如下式(13)所示。在式(13)所示的矩陣Cl,r中, 每個(gè)元素表示許可的覆蓋關(guān)系。例如,Cl,r (Loc—Tl, Loc—C) =1表示位 置區(qū)域Loc Tl所對(duì)應(yīng)的位置許可集覆蓋位置區(qū)域Loc C所對(duì)應(yīng)的位置許可集;而Cl,r (Loc—M, Loc—T/l) =1表示位置區(qū)域Loc—M所對(duì)應(yīng)的角色 M的角色許可集覆蓋位置區(qū)域Loc—T/l所對(duì)應(yīng)的角色T/l的角色許可集。 由此可見,在許可覆蓋矩陣Cl,r中,行標(biāo)所對(duì)應(yīng)的許可覆蓋列標(biāo)所對(duì)應(yīng)的
許可。為了便于理解,將式(13)所示的矩陣CL,r中的行標(biāo)和列標(biāo)改變?yōu)?br> 相應(yīng)的許可,如式(14)所示。<formula>formula see original document page 25</formula>
(13)
接下來,基于式(14)所示的許可覆蓋矩陣Cl,r,根據(jù)上述兩個(gè)繪制 Hasse圖的規(guī)則來繪制許可的Hasse圖。例如,從式(14)所示的矩陣可 見,存在Per一C《Per—Tl,則在繪圖時(shí)Per一C出現(xiàn)在Per一Tl的下方,并且 Per—C和Per_Tl之間連接有線段。圖8示出了按這種方式繪制得到的許可 Hasse圖。從該圖中,可以很容易地看出各個(gè)角色的角色許可集。例如, Per—M在許可Hasse圖的最頂點(diǎn),并且Per—M與圖中的所有其它元素之間 都存在一條從上往下的鏈路,因此,角色M的角色許可集覆蓋所有其它許可集。因此,在以圖形方式呈現(xiàn)許可分配的情況下,位置敏感-基于角色的 訪問控制變得更加用戶友好。
以下將詳細(xì)描述根據(jù)本發(fā)明的位置敏感-基于角色的訪問控制裝置。圖
9示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的位置敏感-基于角色的訪問控制裝置90 的配置。訪問控制裝置90包括獲取部分91、位置偏序關(guān)系建立部分92、 位置鄰接關(guān)系建立部分93、位置-角色鄰接關(guān)系建立部分94、位置-角色偏 序關(guān)系計(jì)算部分95和鑒權(quán)部分96。
獲取部分91被配置為獲取給定應(yīng)用環(huán)境(目標(biāo)空間)的位置區(qū)域圖 以及所涉及的角色的組織關(guān)系。其中,位置區(qū)域可以表示為位置向量,組 織關(guān)系可以表示為矩陣、表格或Hasse圖等。
位置偏序關(guān)系建立部分92被配置為基于獲取部分91所獲得的位置區(qū) 域圖,通過分析各個(gè)位置區(qū)域的覆蓋關(guān)系來建立位置偏序關(guān)系。在數(shù)學(xué) 上,任何形狀的位置區(qū)域都可以近似為多邊形區(qū)域。在位置區(qū)域呈凸多邊 形的情況下,位置偏序關(guān)系建立部分92通過判斷一個(gè)凸多邊形位置區(qū)域 的所有頂點(diǎn)是否都落在另一個(gè)凸多邊形位置區(qū)域內(nèi)來確定這兩個(gè)位置區(qū)域 的覆蓋關(guān)系,從而確定所有位置區(qū)域的覆蓋關(guān)系。另一方面,在位置區(qū)域 呈矩形時(shí),通過對(duì)矩形位置區(qū)域的對(duì)角向量進(jìn)行比較來確定這些位置區(qū)域 的覆蓋關(guān)系。根據(jù)本發(fā)明一個(gè)實(shí)施例,可以用矩陣Rl來表示各個(gè)位置區(qū) 域的位置偏序關(guān)系。
位置鄰接關(guān)系建立部分93通過濾除由位置偏序關(guān)系建立部分92建立 的位置偏序關(guān)系中的傳遞覆蓋關(guān)系來建立僅指示出直接覆蓋關(guān)系的位置鄰 接關(guān)系。根據(jù)本發(fā)明一個(gè)實(shí)施例,可以用矩陣AL來表示該位置鄰接關(guān) 系。
位置-角色鄰接關(guān)系建立部分94基于獲取部分91所獲得的各個(gè)角色的 組織關(guān)系,例如通過遍歷角色的Hasse圖來確定各個(gè)角色的鄰接關(guān)系,并 根據(jù)角色與位置區(qū)域的映射關(guān)系(如上所述)將所確定的角色鄰接關(guān)系添 加到位置鄰接關(guān)系建立部分93所計(jì)算得到的位置鄰接關(guān)系中,從而建立 位置-角色鄰接關(guān)系。根據(jù)本發(fā)明一個(gè)實(shí)施例,可以用矩陣A^來表示該 位置-角色鄰接關(guān)系。如上所述,矩陣A^的行標(biāo)可以代表龜色,而其列標(biāo)可以代表位置區(qū)域,并且該矩陣的每一行指示賦予該行所對(duì)應(yīng)的角色ri 的許可集PerRi。因此,利用位置-角色鄰接關(guān)系矩陣Al,r,可以列出由位 置和角色確定的許可直接覆蓋關(guān)系。
位置-角色偏序關(guān)系計(jì)算部分95基于由位置-角色鄰接關(guān)系建立部分94 建立的位置-角色鄰接關(guān)系來計(jì)算完備的位置-角色偏序關(guān)系。位置-角色偏 序關(guān)系包括所有的覆蓋關(guān)系,S卩,直接覆蓋關(guān)系以及任意深度的傳遞覆蓋
關(guān)系。根據(jù)本發(fā)明的一個(gè)實(shí)施例,位置-角色偏序關(guān)系可以用矩陣RL,k來表
示。在這種情況下,可以通過式(6)來計(jì)算位置-角色偏序關(guān)系矩陣
RUR。根據(jù)角色和位置之間的映射關(guān)系,可以認(rèn)為,矩陣RL,k中的每一行
指示角色,而每一列指示位置區(qū)域。根據(jù)上面的論述,可以認(rèn)為矩陣Ri^R 指示出了位置-角色的許可覆蓋關(guān)系。
鑒權(quán)部分96通過參考位置-角色偏序關(guān)系計(jì)算部分95所計(jì)算得到的位 置-角色偏序關(guān)系來確定是否準(zhǔn)許用戶的訪問請(qǐng)求。
根據(jù)本發(fā)明一個(gè)實(shí)施例,位置敏感-基于角色的訪問控制裝置還可以 包括接收部分(未示出),用于接收用戶的訪問請(qǐng)求、該用戶的角色信 息、以及該用戶的位置信息,并且鑒權(quán)部分根據(jù)該用戶的訪問請(qǐng)求、角色 信息和位置信息,參考位置-角色偏序關(guān)系來確定是否授權(quán)該用戶進(jìn)行訪 問。
此外,在根據(jù)本發(fā)明一個(gè)實(shí)施例的位置敏感-基于角色的訪問控制裝置 中,鑒權(quán)部分可以根據(jù)由位置-角色偏序關(guān)系計(jì)算部分95計(jì)算得到的位置-角色偏序關(guān)系,例如根據(jù)位置-角色偏序關(guān)系矩陣Rl,r,利用本領(lǐng)域公知的 簡單算法來確定各個(gè)角色的訪問許可集。在這種情況下,鑒權(quán)部分96通
過查詢角色許可集來確定是否授權(quán)用戶進(jìn)行訪問。
此外,根據(jù)本發(fā)明一個(gè)實(shí)施例,位置敏感-基于角色的訪問控制裝置還 可以包括Hasse圖生成部分(未示出),用于根據(jù)由位置-角色偏序關(guān)系計(jì) 算部分95計(jì)算得到的位置-角色偏序關(guān)系,例如根據(jù)上述位置-角色偏序關(guān) 系矩陣RMi來生成許可Hasse圖。在一個(gè)示例中,首先根據(jù)位置-角色偏序 關(guān)系矩陣rl,n來計(jì)算覆蓋矩陣Cl,r (參見式(8)),然后基于該覆蓋矩 陣CLR、根據(jù)上述兩個(gè)Hasse圖繪制規(guī)則來繪制許可的Hasse圖。圖10示出了可以實(shí)現(xiàn)本發(fā)明的一個(gè)示例性位置敏感-基于角色的訪問
控制系統(tǒng)100。該訪問控制系統(tǒng)100包括客戶端101、網(wǎng)絡(luò)102和106、訪 問控制裝置103、無線定位裝置104、位置服務(wù)器105、以及諸如數(shù)據(jù)庫 107a、打印機(jī)107b、信息服務(wù)器107c等的目標(biāo)資源設(shè)備。
客戶端101例如可以是臺(tái)式計(jì)算機(jī)、便攜式計(jì)算機(jī)、手機(jī)、個(gè)人數(shù)字 助理等,并且客戶端101以有線或無線方式與網(wǎng)絡(luò)102 (稍后將描述)相 耦合??蛻舳?01的用戶(以下稱為用戶A,如圖所示)通過客戶端101 來發(fā)出對(duì)目標(biāo)資源設(shè)備(例如,數(shù)據(jù)庫107a、打印機(jī)107b和信息服務(wù)器 107c等)進(jìn)行訪問的訪問請(qǐng)求,該訪問請(qǐng)求包含客戶端101的用戶A的用 戶ID (標(biāo)識(shí)符)和用戶A的角色信息。
網(wǎng)絡(luò)102例如可以是諸如企業(yè)內(nèi)部網(wǎng)絡(luò)(Intranet)、局域網(wǎng) (LAN)、因特網(wǎng)之類的計(jì)算機(jī)網(wǎng)絡(luò),或者諸如無線局域網(wǎng)(WLAN)、 全球互連微波接入(WiMAX)網(wǎng)絡(luò)和蜂窩網(wǎng)絡(luò)之類的無線接入網(wǎng)絡(luò)。網(wǎng) 絡(luò)102接收從客戶端101傳送而來的用戶的訪問請(qǐng)求,并將該訪問請(qǐng)求轉(zhuǎn) 發(fā)到訪問控制服務(wù)器103 (稍后將描述)。
無線定位裝置104例如可以是全球定位系統(tǒng)(GPS)或者超聲波室內(nèi) 定位系統(tǒng)等,其時(shí)刻跟蹤該定位裝置104的定位范圍內(nèi)的用戶(包括用戶 A)和/或設(shè)備的位置,并將各個(gè)用戶和/或設(shè)備的位置傳送到位置服務(wù)器 105。
位置服務(wù)器105將從無線定位裝置104發(fā)送而來的各個(gè)用戶和/或設(shè)備 的位置與相應(yīng)的用戶ID (標(biāo)識(shí)符)和/或設(shè)備ID相關(guān)聯(lián)地存儲(chǔ)。位置服務(wù) 器105相當(dāng)于一種存儲(chǔ)服務(wù)器,或者也可以是非易失性存儲(chǔ)器。
訪問控制服務(wù)器103包括如上所述根據(jù)本發(fā)明一個(gè)實(shí)施例的位置敏感-基于角色的訪問控制裝置。訪問控制服務(wù)器103在接收到從網(wǎng)絡(luò)102發(fā)送 而來的用戶A的訪問請(qǐng)求之后,基于該訪問請(qǐng)求中包含的用戶A的用戶 ID搜索位置服務(wù)器105中存儲(chǔ)的位置信息以得到用戶A的當(dāng)前位置,并根 據(jù)用戶A的角色信息和當(dāng)前所處位置來判斷是否授權(quán)用戶A的訪問請(qǐng)求。 如果用戶A的訪問請(qǐng)求得到許可,則訪問控制服務(wù)器103將該訪問請(qǐng)求轉(zhuǎn) 發(fā)到網(wǎng)絡(luò)106 (稍后將描述);否則訪問控制服務(wù)器103拒絕用戶A的訪
28問請(qǐng)求,并經(jīng)由網(wǎng)絡(luò)102通過客戶端101來通知用戶A其訪問請(qǐng)求為未得 到許可。訪問控制服務(wù)器103例如由微計(jì)算機(jī)來實(shí)現(xiàn),該微計(jì)算機(jī)包括中 央處理單元(CPU)、只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器 (RAM)、非易失性存儲(chǔ)器、和接口。
網(wǎng)絡(luò)106可以與網(wǎng)絡(luò)102相同,或者可以是不同的網(wǎng)絡(luò)。網(wǎng)絡(luò)106接 收從訪問控制服務(wù)器103傳送而來的用戶A的訪問請(qǐng)求,并將該訪問請(qǐng)求 轉(zhuǎn)發(fā)到其所要去往的目標(biāo)資源設(shè)備。例如,如果用戶A希望訪問數(shù)據(jù)庫 107a中的數(shù)據(jù),則網(wǎng)絡(luò)106將訪問請(qǐng)求轉(zhuǎn)發(fā)到數(shù)據(jù)庫107a;如果用戶A 希望利用打印機(jī)107b來打印文件,則網(wǎng)絡(luò)106將訪問請(qǐng)求轉(zhuǎn)發(fā)到打印機(jī) 107b;或者如果用戶A希望通過信息服務(wù)器107c獲得諸如Web瀏覽、IP 網(wǎng)上語音(VoIP)、電子郵件等的服務(wù),貝ij網(wǎng)絡(luò)106將訪問請(qǐng)求轉(zhuǎn)發(fā)到信 息服務(wù)器107c。
以上描述了可以實(shí)現(xiàn)本發(fā)明的位置敏感-基于角色的訪問控制系統(tǒng)的一 個(gè)具體示例,但是應(yīng)當(dāng)了解,該示例僅僅是示意性的而非限制性的。例 如,在該具體示例中,雖然示出了特定數(shù)目的每種網(wǎng)絡(luò)設(shè)備,但是該訪問 控制系統(tǒng)可以包括任何數(shù)目的每種網(wǎng)絡(luò)設(shè)備。
此外,圖10所示的示例性位置敏感-基于角色的訪問控制系統(tǒng)是一種 集中式的訪問控制系統(tǒng),但是可以實(shí)現(xiàn)本發(fā)明的位置敏感-基于角色的訪問 控制系統(tǒng)也可以是分布式的。例如,在一個(gè)實(shí)施例中,每個(gè)客戶端都可以 集成位置敏感-基于角色的訪問控制裝置。在這種情況下,當(dāng)用戶通過客戶 端作出訪問請(qǐng)求時(shí),客戶端中的訪問控制裝置獲取該用戶的角色信息以及 位置信息,并基于用戶的訪問請(qǐng)求、用戶的角色信息和位置信息來判斷是 否授權(quán)用戶的訪問。
以上已經(jīng)根據(jù)具體實(shí)施例來對(duì)本發(fā)明進(jìn)行了描述,但是本領(lǐng)域技術(shù)人 員應(yīng)當(dāng)了解,這些實(shí)施例僅僅是示意性的而非限制性的。在本發(fā)明的實(shí)質(zhì) 范圍和精神內(nèi),可對(duì)特定組件或要素進(jìn)行許多修改。本發(fā)明將包括落在所 附權(quán)利要求及其等同物的范圍內(nèi)的任何變形例和修改例。應(yīng)當(dāng)了解,這里使用的存儲(chǔ)器例如可以是但不限于是電的、磁的、光 的、電磁的、紅外的或半導(dǎo)體的存儲(chǔ)器件、裝置、系統(tǒng)、傳播介質(zhì)或計(jì)算 機(jī)存儲(chǔ)器。
根據(jù)需要可以用硬件、軟件、固件或其組合來執(zhí)行步驟。注意,在不 脫離本發(fā)明范圍的前提下,可向本說明書中給出的流程圖添加步驟、從中 去除步驟或修改其中的步驟。并且,包含在本說明書中的各種處理并不限 于根據(jù)描述過程按時(shí)間順序來進(jìn)行的那些處理,其還可以按需或者根據(jù)適 于實(shí)現(xiàn)該處理的裝置的處理能力來并行地或單獨(dú)地執(zhí)行上述各種處理。一 般來說,流程圖只是用來指示用于實(shí)現(xiàn)功能的基本操作的一種可能的序 列。
在軟件環(huán)境中實(shí)施本發(fā)明的情況下,可以使用典型操作系統(tǒng)來控制各 種程序的執(zhí)行。任何適當(dāng)?shù)木幊陶Z言都可用來實(shí)現(xiàn)本發(fā)明,所述語言包括
C、 C++、 Java、匯編語言等等??梢允褂貌煌木幊碳夹g(shù),例如過程式的 或面向?qū)ο蟮?。程序可在單個(gè)處理器或多個(gè)處理器上執(zhí)行。
還將意識(shí)到,根據(jù)特定應(yīng)用的需要,附圖中示出的要素中的一個(gè)或多 個(gè)可以按更分離或更集成的方式來實(shí)現(xiàn),或者甚至在某些情況下被去除或 被停用。
此外,附圖中的任何信號(hào)箭頭應(yīng)當(dāng)被認(rèn)為僅是示例性的,而不是限制 性的,除非另有具體指示。
權(quán)利要求
1.一種訪問控制方法,其中,目標(biāo)空間被劃分為若干位置區(qū)域,每一位置區(qū)域具有相應(yīng)的位置敏感許可集,所述目標(biāo)空間中的用戶被劃分為一種或多種角色,并且每一所述角色與一所述位置區(qū)域相映射,所述方法包括以下步驟獲取各個(gè)所述角色之間的組織關(guān)系和表示各個(gè)所述位置區(qū)域的位置向量;基于所述位置區(qū)域的位置向量分析所述位置區(qū)域相互之間的覆蓋關(guān)系從而建立位置偏序關(guān)系;濾除所述位置偏序關(guān)系中的傳遞覆蓋關(guān)系以獲得位置鄰接關(guān)系;將所述各個(gè)角色之間的組織關(guān)系中的角色鄰接關(guān)系添加到所述位置鄰接關(guān)系中從而建立位置-角色鄰接關(guān)系;基于所述位置-角色鄰接關(guān)系來計(jì)算位置-角色偏序關(guān)系;以及參考所述位置-角色偏序關(guān)系來確定是否授權(quán)用戶的訪問。
2. 如權(quán)利要求l所述的方法,其中,所述位置偏序關(guān)系、所述位置 鄰接關(guān)系、所述位置-角色鄰接關(guān)系和所述位置-角色偏序關(guān)系中的每一個(gè) 都用矩陣表示。
3. 如權(quán)利要求l所述的方法,還包括接收用戶的訪問請(qǐng)求、該用戶的角色信息、以及該用戶的位置信息;并且在所述授權(quán)的步驟中,根據(jù)所述用戶的訪問請(qǐng)求、所述用戶的角色信 息和所述用戶的位置信息,參考所述位置-角色偏序關(guān)系來確定是否授權(quán) 該用戶進(jìn)行訪問。
4. 如權(quán)利要求l所述的方法,其中,參考所述位置-角色偏序關(guān)系包 括根據(jù)所述位置-角色偏序關(guān)系來確定各個(gè)角色的角色許可集。
5. 如權(quán)利要求1所述的方法,其中,在所述位置區(qū)域呈凸多邊形 時(shí),所述位置向量是所述位置區(qū)域的頂點(diǎn)坐標(biāo)向量,并且在建立所述位置偏序關(guān)系的步驟中,如果一個(gè)位置區(qū)域的頂點(diǎn)都落在另一個(gè)位置區(qū)域內(nèi), 則判定所述一個(gè)位置區(qū)域被所述另一個(gè)位置區(qū)域覆蓋。
6. 如權(quán)利要求l所述的方法,其中,在所述位置區(qū)域呈矩形時(shí),所 述位置向量是所述位置區(qū)域的對(duì)角向量,并且在建立所述位置偏序關(guān)系的 步驟中,通過對(duì)矩形位置區(qū)域的對(duì)角向量進(jìn)行比較來確定這些矩形位置區(qū) 域的覆蓋關(guān)系。
7. 如權(quán)利要求l所述的方法,其中,在所述獲取位置鄰接關(guān)系的步驟中,如果在所述位置偏序關(guān)系中,存在第一位置區(qū)域覆蓋第二位置區(qū)域 的關(guān)系,并且還存在第一位置區(qū)域覆蓋第三位置區(qū)域且第三位置區(qū)域覆蓋 第二位置區(qū)域的關(guān)系,則確定所述第一位置區(qū)域傳遞覆蓋所述第二位置區(qū) 域。
8. 如權(quán)利要求l所述的方法,其中,在所述建立位置-角色鄰接關(guān)系 的步驟中,通過遍歷所述各個(gè)角色之間的組織關(guān)系來獲取所述角色鄰接關(guān) 系,并根據(jù)所述角色與所述位置區(qū)域的映射關(guān)系將所述角色鄰接關(guān)系與所 述位置鄰接關(guān)系合并以形成所述位置-角色鄰接關(guān)系。
9. 如權(quán)利要求2所述的方法,其中,通過對(duì)表示所述位置-角色鄰接 關(guān)系的位置-角色鄰接關(guān)系矩陣進(jìn)行以下矩陣運(yùn)算來獲得表示所述位置-角色偏序關(guān)系的位置-角色偏序關(guān)系矩陣位置-角色偏序關(guān)系矩陣=/ 々w 《/④…①《/其中,I表示單位矩陣,AL,K表示位置-角色鄰接關(guān)系矩陣,N表示所 述位置區(qū)域的數(shù)目,④表示邏輯或,并且^4,/表示矩陣AL,K的邏輯n次冪,n=l,...,N。
10. 如權(quán)利要求2所述的方法,還包括以下步驟 基于表示所述位置-角色偏序關(guān)系的位置-角色偏序關(guān)系矩陣來計(jì)算許可覆蓋矩陣,并根據(jù)該許可覆蓋矩陣和Hasse圖繪制規(guī)則來生成許可 Hasse圖,并且其中所述許可覆蓋矩陣是通過對(duì)所述位置-角色偏序關(guān)系矩 陣進(jìn)行如下運(yùn)算來獲得的許可覆蓋矩陣=(& ff—I)-(A ff—I)2其中,RL,Il表示所述位置-角色偏序關(guān)系矩陣,I表示單位矩陣,(RL,R—I) 2表示矩陣(RL,R—I)的邏輯平方。
11. 如權(quán)利要求i到io中的任意一項(xiàng)所述的方法,其中,所述各個(gè)角色之間的組織關(guān)系用矩陣、表格或Hasse圖表示。
12. —種訪問控制裝置,其中,目標(biāo)空間被劃分為若干位置區(qū)域,每 一位置區(qū)域具有相應(yīng)的位置敏感許可集,所述目標(biāo)空間中的用戶被劃分為 一種或多種角色,并且每一所述角色與一所述位置區(qū)域相映射,所述裝置 包括獲取部分,被配置為獲取各個(gè)所述角色之間的組織關(guān)系和表示各個(gè)所 述位置區(qū)域的位置向量;位置偏序關(guān)系建立部分,被配置為基于所述位置區(qū)域的位置向量來分 析所述位置區(qū)域相互之間的覆蓋關(guān)系從而建立位置偏序關(guān)系;位置鄰接關(guān)系建立部分,被配置為濾除所述位置偏序關(guān)系中的傳遞覆蓋關(guān)系以建立位置鄰接關(guān)系;位置-角色鄰接關(guān)系建立部分,被配置為將所述各個(gè)角色之間的組織 關(guān)系中的角色鄰接關(guān)系添加到所述位置鄰接關(guān)系中從而建立位置-角色的 鄰接關(guān)系;位置-角色偏序關(guān)系計(jì)算部分,被配置為基于所述位置-角色鄰接關(guān)系 來計(jì)算位置-角色偏序關(guān)系;以及鑒權(quán)部分,被配置為參考所述位置-角色偏序關(guān)系來確定是否授權(quán)用 戶的訪問。
13. 如權(quán)利要求12所述的裝置,其中,所述位置偏序關(guān)系、所述位 置鄰接關(guān)系、所述位置-角色鄰接關(guān)系和所述位置-角色偏序關(guān)系中的每一 個(gè)都用矩陣表示。
14. 如權(quán)利要求12所述的裝置,還包括接收部分,用于接收用戶的訪問請(qǐng)求、該用戶的角色信息、以及該用 戶的位置信息;并且所述鑒權(quán)部分被配置為根據(jù)所述用戶的訪問請(qǐng)求、所述用戶的角色信 息和所述用戶的位置信息,參考所述位置-角色偏序關(guān)系來確定是否授權(quán) 該用戶進(jìn)行訪問。
15. 如權(quán)利要求12所述的裝置,其中,所述鑒權(quán)部分還被配置為根 據(jù)所述位置-角色偏序關(guān)系來確定各個(gè)角色的角色許可集。
16. 如權(quán)利要求12所述的裝置,其中,在所述位置區(qū)域呈凸多邊形 時(shí),所述位置向量是所述位置區(qū)域的頂點(diǎn)坐標(biāo)向量,并且所述位置偏序關(guān) 系建立部分被配置為,如果一個(gè)位置區(qū)域的頂點(diǎn)都落在另一個(gè)位置區(qū)域內(nèi) 則判定所述一個(gè)位置區(qū)域被所述另一個(gè)位置區(qū)域覆蓋。
17. 如權(quán)利要求12所述的裝置,其中,在所述位置區(qū)域呈矩形時(shí), 所述位置向量是所述位置區(qū)域的對(duì)角向量,并且所述位置偏序關(guān)系建立部 分被配置為通過對(duì)矩形位置區(qū)域的對(duì)角向量進(jìn)行比較來確定這些位置區(qū)域 的覆蓋關(guān)系。
18. 如權(quán)利要求12所述的裝置,其中,所述位置鄰接關(guān)系建立部分 被配置為如果在所述位置偏序關(guān)系中,存在第一位置區(qū)域覆蓋第二位置 區(qū)域的關(guān)系,并且還存在第一位置區(qū)域覆蓋第三位置區(qū)域且第三位置區(qū)域 覆蓋第二位置區(qū)域的關(guān)系,則確定所述第一位置區(qū)域傳遞覆蓋所述第二位 置區(qū)域。
19. 如權(quán)利要求12所述的裝置,其中,所述位置-角色鄰接關(guān)系建立 部分被配置為通過遍歷所述各個(gè)角色之間的組織關(guān)系來獲取所述角色鄰接 關(guān)系,并根據(jù)所述角色與所述位置區(qū)域的映射關(guān)系將所述角色鄰接關(guān)系與 所述位置鄰接關(guān)系合并以形成所述位置-角色鄰接關(guān)系。
20. 如權(quán)利要求13所述的裝置,其中,所述位置-角色偏序關(guān)系計(jì)算部分被配置為通過對(duì)表示所述位置-角色鄰接關(guān)系的位置-角色鄰接關(guān)系矩 陣進(jìn)行以下矩陣運(yùn)算來獲得表示所述位置-角色偏序關(guān)系的位置-角色偏序 關(guān)系矩陣位置-角色偏序關(guān)系矩陣=/@4 r④4 Z④…④i, /其中,I表示單位矩陣,Aw表示位置-角色鄰接關(guān)系矩陣,N表示所 述位置區(qū)域的數(shù)目,①表示邏輯或,并且^4,/表示矩陣AL,k的邏輯n次 冪,n=l,...,N。
21. 如權(quán)利要求13所述的裝置,還包括許可Hasse圖生成部分,被配置為基于表示所述位置-角色偏序關(guān)系 的位置-角色偏序關(guān)系矩陣來計(jì)算許可覆蓋矩陣,并根據(jù)該許可覆蓋矩陣 和Hasse圖繪制規(guī)則來生成許可Hasse圖,并且其中,所述許可覆蓋矩陣 是通過對(duì)所述位置-角色偏序關(guān)系矩陣進(jìn)行如下運(yùn)算來獲得的許可覆蓋矩陣=(&廠1)-(A,廠I)2其中,Rui表示所述位置-角色偏序關(guān)系矩陣,I表示單位矩陣, (Rl,r—I) 2表示矩陣(RL,R—I)的邏輯平方。
22. 如權(quán)利要求12到21中的任意一項(xiàng)所述的裝置,其中,所述各個(gè) 角色之間的組織關(guān)系用矩陣、表格或Hasse圖表示。
23. —種訪問控制系統(tǒng),包括客戶端,用戶使用該客戶端來發(fā)出訪問請(qǐng)求,該訪問請(qǐng)求包括所述用戶的角色信息;無線定位裝置,用于確定所述用戶所處的位置;以及如權(quán)利要求12所述的訪問控制裝置,用于根據(jù)從所述客戶端傳送而來的所述用戶的角色信息以及從無線定位裝置傳送而來的所述用戶的位置信息來確定是否授權(quán)所述用戶的訪問請(qǐng)求。
全文摘要
本發(fā)明提供了位置敏感且基于角色的訪問控制方法、裝置和系統(tǒng)。目標(biāo)空間被劃分為若干位置區(qū)域,每一位置區(qū)域具有相應(yīng)的位置敏感許可集,目標(biāo)空間中的用戶被劃分為一種或多種角色,并且每一角色與一位置區(qū)域相映射,訪問控制方法包括獲取各個(gè)角色之間的組織關(guān)系和表示各個(gè)位置區(qū)域的位置向量;基于位置區(qū)域的位置向量分析這些位置區(qū)域相互之間的覆蓋關(guān)系從而建立位置偏序關(guān)系;濾除位置偏序關(guān)系中的傳遞覆蓋關(guān)系以獲得位置鄰接關(guān)系;將各個(gè)角色之間的組織關(guān)系中的角色鄰接關(guān)系添加到位置鄰接關(guān)系中從而建立位置-角色鄰接關(guān)系;基于位置-角色鄰接關(guān)系來計(jì)算位置-角色偏序關(guān)系;以及參考所述位置-角色偏序關(guān)系來確定是否授權(quán)用戶的訪問。
文檔編號(hào)H04L9/32GK101631021SQ20081013202
公開日2010年1月20日 申請(qǐng)日期2008年7月18日 優(yōu)先權(quán)日2008年7月18日
發(fā)明者王永才, 趙軍輝 申請(qǐng)人:日電(中國)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1