[發(fā)明專利]一種數(shù)據(jù)訪問權(quán)限控制方法有效
| 申請?zhí)枺?/td> | 201410375662.7 | 申請日: | 2014-08-01 |
| 公開(公告)號: | CN104156640B | 公開(公告)日: | 2017-04-12 |
| 發(fā)明(設(shè)計(jì))人: | 蔡衛(wèi)衛(wèi);董玉全;魏子重 | 申請(專利權(quán))人: | 浪潮軟件股份有限公司 |
| 主分類號: | G06F21/30 | 分類號: | G06F21/30 |
| 代理公司: | 濟(jì)南信達(dá)專利事務(wù)所有限公司37100 | 代理人: | 姜明 |
| 地址: | 250101 山東*** | 國省代碼: | 山東;37 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù) 訪問 權(quán)限 控制 方法 | ||
?
技術(shù)領(lǐng)域
本發(fā)明涉及一種數(shù)據(jù)的訪問控制方法,具體地說是一種數(shù)據(jù)訪問權(quán)限控制方法。
背景技術(shù)
現(xiàn)代軟件系統(tǒng)中用戶趨于多樣化,業(yè)務(wù)邏輯復(fù)雜,對數(shù)據(jù)安全及保密的要求越來越高。不同的用戶訪問不同的類型數(shù)據(jù);對于同一種數(shù)據(jù),某些用戶可以訪問其中一部分,或者某些用戶只能夠訪問數(shù)據(jù)的某些屬性。系統(tǒng)為了滿足上述的數(shù)據(jù)訪問需求,往往把數(shù)據(jù)訪問控制邏輯和業(yè)務(wù)邏輯混編在一起,造成邏輯不清晰,維護(hù)繁瑣、困難,并且工作量較大。
現(xiàn)有技術(shù)中的數(shù)據(jù)訪問控制方法通常存在以下不足:(一)數(shù)據(jù)模型抽象度不夠:大多以關(guān)系數(shù)據(jù)庫為基礎(chǔ),依托數(shù)據(jù)庫表實(shí)現(xiàn),使用復(fù)雜、繁瑣,不易擴(kuò)展。在傳統(tǒng)的關(guān)系數(shù)據(jù)庫中同類數(shù)據(jù)可能存儲于不同的數(shù)據(jù)表中,這樣在定義數(shù)據(jù)訪問權(quán)限控制時(shí)需要在不同的表上定義相同的數(shù)據(jù)訪問權(quán)限控制,修改、維護(hù)時(shí)亦很繁瑣,需要改動多處。(二)權(quán)限上下文模型的抽象度不夠:大多建立幾個(gè)固定的數(shù)據(jù)模型,如用戶、部門,造成數(shù)據(jù)訪問控制需求發(fā)生變化時(shí),修改和擴(kuò)展困難。(三)依賴數(shù)據(jù)的存儲方式和數(shù)據(jù)庫產(chǎn)品,當(dāng)數(shù)據(jù)存儲方式或數(shù)據(jù)庫變化時(shí),原來定義的數(shù)據(jù)訪問權(quán)限控制或方法將不能使用或需要進(jìn)行修改。
發(fā)明內(nèi)容
本發(fā)明的技術(shù)任務(wù)是針對上述現(xiàn)有技術(shù)的不足,提供一種易用的、可擴(kuò)展的、可移植的、與業(yè)務(wù)邏輯分離,對開發(fā)者透明的數(shù)據(jù)訪問權(quán)限控制方法。
本發(fā)明的技術(shù)任務(wù)是按以下方式實(shí)現(xiàn)的:一種數(shù)據(jù)訪問權(quán)限控制方法,其特點(diǎn)是數(shù)據(jù)訪問權(quán)限與業(yè)務(wù)邏輯分離,使用代理方式實(shí)現(xiàn),對開發(fā)者透明。
上述方法具體包括以下步驟:
a)建立數(shù)據(jù)模型
把數(shù)據(jù)抽象為數(shù)據(jù)類型和數(shù)據(jù)對象,所述數(shù)據(jù)類型描述具有相同屬性的數(shù)據(jù)的集合;數(shù)據(jù)對象是數(shù)據(jù)類型的一個(gè)實(shí)例,或者數(shù)據(jù)庫中的一條記錄;
b)建立數(shù)據(jù)類型之間的繼承體系
首先建立根類型,所有數(shù)據(jù)類型都直接或間接繼承根類型,然后數(shù)據(jù)類型之間根據(jù)性質(zhì)不同建立繼承關(guān)系;
c)建立用戶模型
所述用戶模型用于描述及限定用戶范圍;?
d)創(chuàng)建數(shù)據(jù)訪問權(quán)限領(lǐng)域?qū)S谜Z言;
e)定義數(shù)據(jù)訪問權(quán)限
使用步驟d中數(shù)據(jù)訪問權(quán)限領(lǐng)域?qū)S谜Z言結(jié)合步驟a、步驟b中建立的數(shù)據(jù)模型及步驟c中建立的用戶模型描述具體的數(shù)據(jù)訪問權(quán)限,并將其持久化;
f)建立數(shù)據(jù)訪問代理
使用代理模式封裝原有的數(shù)據(jù)訪問組件,提供和原有數(shù)據(jù)訪問組件完全一樣的接口及功能,用戶對數(shù)據(jù)的所有訪問請求都經(jīng)過該數(shù)據(jù)訪問代理,數(shù)據(jù)訪問代理可對所有數(shù)據(jù)訪問請求進(jìn)行攔截、監(jiān)控及修改;
g)進(jìn)行權(quán)限判斷
在數(shù)據(jù)被用戶訪問時(shí),數(shù)據(jù)訪問代理首先判斷被訪問的數(shù)據(jù)的類型;確定類型后查找此類型上的定義的數(shù)據(jù)訪問權(quán)限,若此類型上沒有定義數(shù)據(jù)訪問權(quán)限,則繼續(xù)查找其父類型上是否定義了數(shù)據(jù)訪問權(quán)限,直至查詢到跟類型,若沒有定義數(shù)據(jù)訪問權(quán)限則執(zhí)行原有邏輯;若定義了數(shù)據(jù)訪問權(quán)限,則使用數(shù)據(jù)訪問權(quán)限領(lǐng)域?qū)S谜Z言解析權(quán)限,增加數(shù)據(jù)訪問過濾或判斷用戶是否有權(quán)限訪問此數(shù)據(jù);
h)將結(jié)果通過數(shù)據(jù)訪問代理返回給用戶。
為了便于實(shí)現(xiàn)擴(kuò)展,對不同的數(shù)據(jù)庫類型或者數(shù)據(jù)訪問方式,可實(shí)現(xiàn)不同的數(shù)據(jù)訪問代理。
步驟a中,系統(tǒng)中的數(shù)據(jù)類型為數(shù)據(jù)庫表、對象實(shí)體類型、或虛擬類型(抽象的數(shù)據(jù)集合)。
步驟b中,根類型的基本屬性包括唯一標(biāo)識、名稱、代碼和描述。
步驟c中,所述用戶模型包括用戶、角色、用戶所屬組織和與用戶相關(guān)的能夠影響用戶訪問數(shù)據(jù)的相關(guān)對象。
步驟d中,使用步驟c中建立的用戶模型,結(jié)合a、b中建立的數(shù)據(jù)模型及運(yùn)算符組成數(shù)據(jù)訪問權(quán)限領(lǐng)域?qū)S谜Z言的表達(dá)式語言。
步驟e中定義數(shù)據(jù)訪問控制權(quán)限時(shí)可以在類型的父類型上定義,并可控制子類型是否能夠使用父類型上設(shè)置的權(quán)限。
本發(fā)明的數(shù)據(jù)訪問權(quán)限控制方法與現(xiàn)有技術(shù)相比具有以下突出的有益效果:
(一)把數(shù)據(jù)抽象為數(shù)據(jù)類型和數(shù)據(jù)對象,并引入虛擬類型的概念,建立類型繼承體系,因此可以把眾多類型的數(shù)據(jù)歸納到一個(gè)虛擬的父類型上,若這些類型上需要定義相同的數(shù)據(jù)訪問控制權(quán)限,只需要在它們的虛擬父類型上定義即可;
(二)進(jìn)一步可以在數(shù)據(jù)抽象模型之上建立數(shù)據(jù)對象管理,從而控制單個(gè)對象的數(shù)據(jù)訪問;
(三)統(tǒng)一的用戶模型內(nèi)置了常用的對象和屬性,開箱即用,并可以靈活、方便的擴(kuò)展,并且不影響原有模型及功能;
(四)數(shù)據(jù)訪問權(quán)限領(lǐng)域?qū)S谜Z言簡化了數(shù)據(jù)訪問控制權(quán)限的定義,開發(fā)人員或?qū)嵤┤藛T經(jīng)過短時(shí)培訓(xùn)即可熟練使用;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于浪潮軟件股份有限公司,未經(jīng)浪潮軟件股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410375662.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F21-00 防止未授權(quán)行為的保護(hù)計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)的安全裝置
G06F21-02 .通過保護(hù)計(jì)算機(jī)的特定內(nèi)部部件
G06F21-04 .通過保護(hù)特定的外圍設(shè)備,如鍵盤或顯示器
G06F21-06 .通過感知越權(quán)操作或外圍侵?jǐn)_
G06F21-20 .通過限制訪問計(jì)算機(jī)系統(tǒng)或計(jì)算機(jī)網(wǎng)絡(luò)中的節(jié)點(diǎn)
G06F21-22 .通過限制訪問或處理程序或過程
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 存儲器訪問調(diào)度裝置、調(diào)度方法與存儲器訪問控制系統(tǒng)
- 一種限制用戶訪問的方法和裝置
- 一種訪問信息提供方法及系統(tǒng)
- 數(shù)據(jù)訪問權(quán)限的控制方法及裝置
- 基于智能家居系統(tǒng)的訪問授權(quán)方法、裝置及設(shè)備
- 網(wǎng)站訪問請求的動態(tài)調(diào)度方法及裝置
- 基于訪問頻率的監(jiān)測方法、裝置、設(shè)備和計(jì)算機(jī)存儲介質(zhì)
- 訪問憑證驗(yàn)證方法、裝置、計(jì)算機(jī)設(shè)備及存儲介質(zhì)
- 一種應(yīng)用訪問控制方法、系統(tǒng)和介質(zhì)
- 異常訪問行為的檢測方法、裝置、電子設(shè)備及存儲介質(zhì)
- 一種對權(quán)限進(jìn)行操作的方法和裝置
- 實(shí)現(xiàn)權(quán)限項(xiàng)動態(tài)調(diào)整的方法、裝置及系統(tǒng)
- 用戶權(quán)限驗(yàn)證方法及裝置
- 權(quán)限管理方法、服務(wù)器及系統(tǒng)
- 一種權(quán)限配置方法
- 應(yīng)用的權(quán)限設(shè)置方法和裝置
- 一種用戶權(quán)限控制方法及系統(tǒng)
- 一種檔案使用權(quán)限管理系統(tǒng)
- 系統(tǒng)權(quán)限管理方法、裝置、介質(zhì)及電子設(shè)備
- 權(quán)限信息處理方法及系統(tǒng)





