吳永軍,馮濤,王燕午
(天津市測繪院,天津 300381)
土地置業(yè)GIS管理平臺(tái)中用戶權(quán)限管理的研究與實(shí)現(xiàn)
吳永軍?,馮濤,王燕午
(天津市測繪院,天津 300381)
基于角色的訪問控制(RBAC)是一種方便、安全、成熟、高效的訪問控制機(jī)制。本文針對城投集團(tuán)城市綜合開發(fā)業(yè)務(wù)中涉及的數(shù)據(jù)資源種類多、面向的用戶層次多等特點(diǎn),運(yùn)用基于角色的用戶權(quán)限管理參考模型,提出了一種對應(yīng)用系統(tǒng)功能與數(shù)據(jù)資源統(tǒng)一訪問控制的權(quán)限管理方案,設(shè)計(jì)了對應(yīng)的數(shù)據(jù)模型,同時(shí)給出了在城投集團(tuán)土地置業(yè)GIS管理平臺(tái)中的實(shí)現(xiàn)。
基于角色的訪問控制;角色;資源;數(shù)據(jù)模型
“城市綜合開發(fā)”是天津城投集團(tuán)的主要業(yè)務(wù)之一,主要包含了土地整理、房屋拆遷、項(xiàng)目管理、資金預(yù)算、收益與投入的平衡等多個(gè)方面。集團(tuán)下屬具有土地整理、房地產(chǎn)開發(fā)資質(zhì)的子公司需要定期向集團(tuán)上傳土地整理、房地產(chǎn)置業(yè)項(xiàng)目開展期間的各種要件,填報(bào)項(xiàng)目相關(guān)業(yè)務(wù)信息,而集團(tuán)的土地置業(yè)部負(fù)責(zé)對子公司上傳的要件進(jìn)行檔案管理,業(yè)務(wù)數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析,為領(lǐng)導(dǎo)提供決策依據(jù)。城投集團(tuán)土地置業(yè)GIS管理平臺(tái)(以下簡稱土地置業(yè)平臺(tái))的建立,實(shí)現(xiàn)了城投集團(tuán)無紙化辦公、業(yè)務(wù)流程化管理、信息互通、數(shù)據(jù)共享,大大提高了生產(chǎn)與工作的效率。
土地置業(yè)平臺(tái)的用戶是城投集團(tuán)的所有職員,因?yàn)橛脩羲幍穆毮軑徫徊煌瑢ο到y(tǒng)功能、數(shù)據(jù)資源的操作權(quán)限也有很大區(qū)別。然而,目前多數(shù)管理軟件僅僅做到應(yīng)用系統(tǒng)功能的權(quán)限控制,而沒有做到數(shù)據(jù)資源訪問的權(quán)限控制,所以,本文在基于角色的訪問控制(RBAC)的基本思想的基礎(chǔ)上,提出了一種對應(yīng)用功能、數(shù)據(jù)資源統(tǒng)一訪問控制的權(quán)限管理方案,并給出了具體的實(shí)現(xiàn)方法。
基于角色的訪問控制(Role-Based Access Control,RBAC)是一種成熟的權(quán)限管理機(jī)制,典型的有Ravi Sandhu等提出的RBAC 96模型[1]和美國國家標(biāo)準(zhǔn)與技術(shù)局(NIST)研究小組提出的RBAC 2000模型[2]等等,這些模型在訪問控制領(lǐng)域已經(jīng)得到了廣泛的應(yīng)用。
在RBAC的核心模型中,用戶和角色之間是多對多的關(guān)系,一個(gè)用戶可以擁有多個(gè)角色,一個(gè)角色也可以同時(shí)由多個(gè)用戶擁有,這就是角色分配(UA)的過程。同樣,角色和權(quán)限之間也是多對多的關(guān)系,一個(gè)角色至少擁有一項(xiàng)權(quán)限,一個(gè)權(quán)限也可以同時(shí)賦予多個(gè)不同的角色,這就是權(quán)限分配(PA)的過程[3]。在RBAC的核心模型中,我們可以得出,要判斷某個(gè)用戶可以訪問的系統(tǒng)資源和對系統(tǒng)資源可以進(jìn)行的操作,通過角色這個(gè)中介進(jìn)行中轉(zhuǎn),只需要判斷該用戶所具有的角色的權(quán)限即可,如圖1所示。
圖1 RBAC核心模型結(jié)構(gòu)
3.1 設(shè)計(jì)思想
土地置業(yè)平臺(tái)中的功能大多數(shù)都是對數(shù)據(jù)資源的操作,如對海河公司的土地整理項(xiàng)目進(jìn)行信息匯總等,這就要求土地置業(yè)平臺(tái)的權(quán)限訪問控制,不僅僅要做到應(yīng)用系統(tǒng)功能層的控制(如功能模塊的調(diào)用、菜單的顯示等),還要做到數(shù)據(jù)資源層的控制(如能否訪問土地整理項(xiàng)目的成本類信息等)。由圖1可以知道,RBAC核心模型由5個(gè)基本要素組成,分別是用戶(Users)、角色(Roles)、對象(Objects/Resource)、操作(Operations)、權(quán)限(Permissions)。根據(jù)RBAC的核心思想[4~6],筆者將這5個(gè)要素設(shè)計(jì)如下:
用戶:任何直接使用計(jì)算機(jī)系統(tǒng)的實(shí)體,可以是人,也可以是機(jī)器、網(wǎng)絡(luò)或智能體。土地置業(yè)平臺(tái)中是具體的系統(tǒng)用戶。
角色:是一個(gè)抽象的概念,表示系統(tǒng)或組織中某一特定任務(wù)的責(zé)任和權(quán)利。土地置業(yè)平臺(tái)中根據(jù)實(shí)際的崗位職能進(jìn)行劃分。
對象:是任何系統(tǒng)要進(jìn)行控制的資源。筆者將功能模塊、菜單、數(shù)據(jù)資源都視為資源。筆者認(rèn)為任何資源都是有歸屬的,通俗地說就是資源的“發(fā)布者”或是“擁有者”。比如,土地交易信息管理(系統(tǒng)功能)是“系統(tǒng)”發(fā)布的,XX土地整理項(xiàng)目是海河公司發(fā)布,所以土地交易信息管理的歸屬是“系統(tǒng)”,XX土地整理項(xiàng)目的歸屬是“海河公司”。土地置業(yè)平臺(tái)中討論的對象由資源的歸屬與具體資源組成,并且規(guī)定如果某一資源沒有明確的發(fā)布者,那么該資源的歸屬都是“系統(tǒng)”。
操作:是程序可執(zhí)行的反映,響應(yīng)用戶指定的某些功能。例如土地整理項(xiàng)目信息可能的操作有瀏覽、修改、審核、匯總等,系統(tǒng)功能可能的操作有開啟等。
權(quán)限:是對對象所屬資源執(zhí)行操作的許可,即:權(quán)限=操作+對象的資源。例如,對海河公司XX項(xiàng)目成本信息的修改操作。
3.2 數(shù)據(jù)模型設(shè)計(jì)
為了實(shí)現(xiàn)基于角色的權(quán)限管理,需要?jiǎng)?chuàng)建用戶表、角色表、權(quán)限表、用戶-角色映射表、角色-權(quán)限映射表[7]。土地置業(yè)平臺(tái)中的權(quán)限管理數(shù)據(jù)模型是根據(jù)RBAC核心模型的思想進(jìn)行設(shè)計(jì)的,并在此基礎(chǔ)上進(jìn)行了擴(kuò)充。
土地置業(yè)平臺(tái)中的權(quán)限管理數(shù)據(jù)庫包括用戶表(Users),部門表(Departments),角色表(Roles),權(quán)限表(Permissions),資源表(Resources)、資源歸屬表(ResourceOwners),操作表(Operations),用戶_角色映射表(User_Role),角色_權(quán)限映射表(Role_Permission),用戶_部門映射表(User_Department),部門_角色映射表(Department_Role)等11個(gè)數(shù)據(jù)表。需要說明的是,資源表存儲(chǔ)的系統(tǒng)的功能權(quán)限信息和數(shù)據(jù)資源信息。權(quán)限管理數(shù)據(jù)庫的數(shù)據(jù)模型如圖2所示。
圖2 權(quán)限管理數(shù)據(jù)庫數(shù)據(jù)模型結(jié)構(gòu)圖
權(quán)限管理數(shù)據(jù)庫中共包含了11個(gè)數(shù)據(jù)表,數(shù)據(jù)模型顯示了這些數(shù)據(jù)表之間的關(guān)系。表1對數(shù)據(jù)表進(jìn)行了簡要介紹。
權(quán)限管理數(shù)據(jù)庫中表的介紹 表1
續(xù)表1
城投集團(tuán)土地置業(yè)GIS管理平臺(tái)的用戶權(quán)限管理子系統(tǒng)由權(quán)限管理與訪問控制兩部分組成,模塊結(jié)構(gòu)如圖3所示。
圖3 用戶權(quán)限管理結(jié)構(gòu)
系統(tǒng)管理員可以在權(quán)限管理模塊中進(jìn)行用戶信息維護(hù)和權(quán)限管理。權(quán)限管理模塊所實(shí)現(xiàn)的功能分別為:
(1)用戶管理。該模塊用于對用戶信息的維護(hù)、用戶與角色之間的映射管理。它包括了增加用戶、刪除用戶、用戶信息瀏覽、用戶信息修改、角色分配管理等子模塊。該模塊不僅能夠獲得某一用戶所擁有的角色信息,還能通過角色獲得該用戶的權(quán)限信息。
(2)權(quán)限管理。該模塊用于定義、維護(hù)系統(tǒng)的權(quán)限信息,管理資源與資源歸屬的映射關(guān)系。它包括了增加資源歸屬、刪除資源歸屬、瀏覽權(quán)限信息、修改權(quán)限信息、管理資源與資源歸屬的映射關(guān)系等子模塊。
(3)角色管理。系統(tǒng)管理員可以在該模塊中,根據(jù)企業(yè)結(jié)構(gòu)組織進(jìn)行角色的創(chuàng)建、角色與權(quán)限之間的映射管理。它包括增加、刪除、修改角色,瀏覽角色信息,映射角色與權(quán)限的關(guān)系等功能。
訪問控制模塊用于處理在用戶發(fā)出登錄請求后進(jìn)行身份驗(yàn)證以及發(fā)出操作請求后權(quán)限認(rèn)證。
(1)身份驗(yàn)證。身份驗(yàn)證是實(shí)現(xiàn)授權(quán)的前提,也是訪問控制安全系統(tǒng)中不可缺少的關(guān)鍵環(huán)節(jié)。系統(tǒng)根據(jù)用戶ID、經(jīng)過MD 5加密后的密碼和加密密鑰信息進(jìn)行對用戶身份的驗(yàn)證。
(2)權(quán)限認(rèn)證。權(quán)限認(rèn)證是建立在用戶身份驗(yàn)證的基礎(chǔ)上的,合法用戶登錄后,將獲取到的角色信息和個(gè)人權(quán)限緩存到系統(tǒng)中,如果要判斷用戶是否具有某個(gè)功能或數(shù)據(jù)資源的操作權(quán)時(shí),只需要到緩存的權(quán)限列表中查找即可,而不必再到數(shù)據(jù)庫中讀取權(quán)限信息。這樣可以極大減輕服務(wù)器端的壓力,也避免了因?yàn)轭l繁操作數(shù)據(jù)庫而影響系統(tǒng)的性能。
(3)邏輯處理。該模塊處理身份驗(yàn)證、權(quán)限認(rèn)證過程中的一系列邏輯信息。包括認(rèn)證失敗后的信息提示、權(quán)限認(rèn)證成功后的系統(tǒng)初始化等操作。
本文提供的應(yīng)用系統(tǒng)功能和數(shù)據(jù)資源統(tǒng)一訪問控制的解決方法,是RBAC的進(jìn)一步擴(kuò)展和延伸,即在功能權(quán)限的基礎(chǔ)上增加了數(shù)據(jù)資源權(quán)限的管理,實(shí)現(xiàn)了數(shù)據(jù)資源權(quán)限和功能權(quán)限的集中處理,滿足了多層次組織中權(quán)限管理方面的集中控制。
[1] Ravi Ssndhu.Role-based Access Control Models[J].IEEE Computer,1996,29(2):21~23.
[2] Ferraiolo D F,Sandhu R,Gavrila S,etal.Proposed NISTStandard for Role-Based Access Control[J].ACM Transactions on Information and System Security,2001,4(3):224~274.
[3] 毛先成,陳振,華萍.地質(zhì)礦產(chǎn)資料管理系統(tǒng)中用戶權(quán)限管理的研究與實(shí)現(xiàn)[J].西部探礦工程,2008(12):246~249.
[4] 杜詩軍.基于角色的訪問控制研究[D].鄭州:鄭州大學(xué),2006.
[5] 丁勝,陳建勛.基于RBAC模型的安全訪問機(jī)制建模研究[J].計(jì)算機(jī)應(yīng)用與軟件,2005,22(11):115~117.
[6] 普繼光.基于角色的訪問控制系統(tǒng)的設(shè)計(jì)和應(yīng)用[D].成都:電子科技大學(xué),2004.
[7] 丁振國,吳環(huán)宇.RBAC在管理信息系統(tǒng)中的應(yīng)用[J].微計(jì)算機(jī)信息,2007,23(18):4~5.
Research and Implement of User Rights M anagement System in Land and Property Information M anagement Platform
Wu Yongjun,F(xiàn)eng Tao,Wang Yanwu
(Tianjin Surveying and Mapping Institution,Tianjin 300381,China)
Role-based access control(RBAC)is a convenient,safe and efficientaccess controlmechanism.Because there aremany types of data resources and many user levels involved in the comprehensive urban exploitation business,this paper brings forward a rightsmanagement program of Unified access to system functionality and data resources based on RBACmodel,designs a corresponding datamodel.Finally,the paper implements the program in TianJin infrastructure construction and investment group land and property information management platform.
SQL Server;index;maintenance;performance
1672-8262(2013)03-43-03
P208.2
B
2012—07—31
吳永軍(1983—),男,工程師,主要從事GIS軟件開發(fā)。