国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于細(xì)粒度權(quán)限質(zhì)檢管理系統(tǒng)的研究與設(shè)計(jì)

2018-01-02 08:44涂小琴
軟件 2017年12期
關(guān)鍵詞:細(xì)粒度身份驗(yàn)證數(shù)據(jù)表

涂小琴,吳 晟

(1. 云南師范大學(xué)文理學(xué)院,云南 昆明 650222;2. 昆明理工大學(xué),云南 昆明 650222)

基于細(xì)粒度權(quán)限質(zhì)檢管理系統(tǒng)的研究與設(shè)計(jì)

涂小琴,吳 晟

(1. 云南師范大學(xué)文理學(xué)院,云南 昆明 650222;2. 昆明理工大學(xué),云南 昆明 650222)

本文首先針對(duì)現(xiàn)行RBAC模型的角色管理權(quán)限粒度不夠細(xì)化的特點(diǎn),提出了一種改進(jìn)的細(xì)粒度權(quán)限模型,并詳細(xì)描述了該改進(jìn)模型的特點(diǎn)和身份驗(yàn)證的具體過(guò)程。并結(jié)合實(shí)際的質(zhì)量檢測(cè)管理系統(tǒng),從數(shù)據(jù)庫(kù)設(shè)計(jì)和角色管理兩個(gè)方面,闡述了改進(jìn)的細(xì)粒度權(quán)限控制在.NET中的設(shè)計(jì)與實(shí)現(xiàn)的具體過(guò)程。

權(quán)限粒度;細(xì)粒度;身份驗(yàn)證;訪(fǎng)問(wèn)控制

0 引言

數(shù)據(jù)庫(kù)權(quán)限設(shè)計(jì)是管理信息系統(tǒng)的一個(gè)重要組成部分。合理的權(quán)限設(shè)置可以有效地保護(hù)數(shù)據(jù),方便用戶(hù)操作。依據(jù)員工的工作崗位及業(yè)務(wù)操作的不同來(lái)設(shè)置權(quán)限,可以防止無(wú)關(guān)人員的越權(quán)操作,從而保護(hù)數(shù)據(jù)庫(kù)安全,防止信息泄露。

本文應(yīng)云南省信息檢測(cè)中心的實(shí)際需求,以質(zhì)量檢測(cè)綜合信息管理系統(tǒng)為背景,開(kāi)發(fā)了一個(gè)集樣品信息錄入、檢測(cè)結(jié)果登記、審核、批準(zhǔn)、報(bào)表生成等為一體的信息管理系統(tǒng),實(shí)現(xiàn)了分析測(cè)試管理工作的網(wǎng)絡(luò)化無(wú)紙化辦公,使分析測(cè)試中心的樣品檢測(cè)工作更加高效便捷。該系統(tǒng)在權(quán)限訪(fǎng)問(wèn)控制方面,采用細(xì)粒度與現(xiàn)行的 RBAC[2],[5](基于角色的訪(fǎng)問(wèn)控制)相結(jié)合,一方面提高了授權(quán)工作的靈活性和高效性,另一方面又能根據(jù)具體的實(shí)際需要分配“最小化”[1,5]的用戶(hù)權(quán)限集,實(shí)現(xiàn)了細(xì)粒度權(quán)限控制的需求。

1 問(wèn)題的提出

1.1 現(xiàn)存訪(fǎng)問(wèn)控制模型

訪(fǎng)問(wèn)控制(Access Control)[3]是從計(jì)算機(jī)系統(tǒng)的處理功能方面對(duì)數(shù)據(jù)提供保護(hù),其目標(biāo)是為了防止非法用戶(hù)進(jìn)入系統(tǒng)或合法用戶(hù)對(duì)系統(tǒng)資源非法使用。

RBAC基于角色的權(quán)限訪(fǎng)問(wèn)控制(Role-Based Access Control),這種方式可以靈活的設(shè)置用戶(hù)角色,靈活的設(shè)置用戶(hù)的權(quán)限,可以人為的對(duì)很多的頁(yè)面進(jìn)行保護(hù),彌補(bǔ)了自主訪(fǎng)問(wèn)的不足點(diǎn)。同時(shí),用戶(hù)并不直接對(duì)功能模塊,而是由用戶(hù)所賦予的角色來(lái)定,角色確定了用戶(hù)能夠訪(fǎng)問(wèn)的權(quán)限。這樣就大大的提高了授權(quán)的效率。

1.2 RBAC模型存在的問(wèn)題

由于RBAC是基于角色的訪(fǎng)問(wèn)控制,而“角色”是一系列權(quán)限的集合。因此,該訪(fǎng)問(wèn)方式將權(quán)限的集合作為分配的基本單元。管理員授予用戶(hù)固定服務(wù)器角色或固定數(shù)據(jù)庫(kù)角色,以執(zhí)行特定的操作,但這些角色的權(quán)限通常會(huì)遠(yuǎn)遠(yuǎn)超出簡(jiǎn)單任務(wù)的需要?!白钌偬貦?quán)”的原則,要求用戶(hù)只能擁有完成工作所需的最低權(quán)限,因此,為達(dá)到小目標(biāo)而分配用戶(hù)高級(jí)角色就違背了該原則。

這就給更細(xì)化的授權(quán)問(wèn)題帶來(lái)了不便。因此,需要一種改進(jìn)的更細(xì)分的訪(fǎng)問(wèn)控制方式來(lái)解決實(shí)際的問(wèn)題。

2 細(xì)粒度訪(fǎng)問(wèn)控制的引入

2.1 概念介紹

粗粒度:僅在類(lèi)別層面上關(guān)注對(duì)象,不關(guān)注對(duì)象的特定的實(shí)例;例如,本系統(tǒng)中,對(duì)檢測(cè)樣品的查詢(xún),統(tǒng)計(jì)等操作,對(duì)所有的用戶(hù)都一視同仁,并不具體區(qū)分用戶(hù)的級(jí)別,是普通用戶(hù)還是特殊用戶(hù)。

細(xì)粒度:是對(duì)粗粒度的進(jìn)一步補(bǔ)充,是在考慮粗粒度的基礎(chǔ)上,進(jìn)一步關(guān)注具體對(duì)象的實(shí)例,屬于業(yè)務(wù)邏輯的一部分。

簡(jiǎn)單來(lái)說(shuō),細(xì)粒度權(quán)限問(wèn)題就是判斷操作者在何種情況下對(duì)某種資源進(jìn)行了怎樣的操作。權(quán)限控制過(guò)程,就是判斷該問(wèn)題是否滿(mǎn)足的過(guò)程。

操作者:權(quán)限的所有者和使用者(包括用戶(hù),群組,角色等)。

資源:權(quán)限針對(duì)的具體對(duì)象(資源,模塊等)操作:具體的操作權(quán)限[7,8]。

操作環(huán)境;權(quán)限正常使用的環(huán)境和上下文(滿(mǎn)足身份驗(yàn)證或是滿(mǎn)足操作條件)。

操作者,角色,用戶(hù)、資源之間的關(guān)系如圖 1所示。

2.2 細(xì)粒度權(quán)限的身份驗(yàn)證過(guò)程

在細(xì)粒度權(quán)限中,用戶(hù)的身份驗(yàn)證是一個(gè)復(fù)雜的過(guò)程。如圖2所示。在細(xì)粒度身份驗(yàn)證的過(guò)程中,根據(jù)實(shí)際需要,我們把用戶(hù)分成不同的角色,或者用戶(hù)組,身份驗(yàn)證的過(guò)程,不但要驗(yàn)證該用戶(hù)本身的身份,還要驗(yàn)證它是屬于哪個(gè)角色,屬于哪個(gè)具體的群組。而訪(fǎng)問(wèn)授權(quán)是根據(jù)角色來(lái)設(shè)置的,該角色可以訪(fǎng)問(wèn)哪些資源,不可以訪(fǎng)問(wèn)哪些資源。因此還要進(jìn)一步判斷,該角色或是該群組是否具有某種操作權(quán)限,針對(duì)具體的模塊是否具備某種操作權(quán)限。只有當(dāng)所有的判斷均為真,系統(tǒng)才允許該用戶(hù)登陸。這個(gè)過(guò)程需要適時(shí)地查看數(shù)據(jù)表,只有所有的信息都驗(yàn)證通過(guò),才允許用戶(hù)進(jìn)行操作。

圖1 細(xì)粒度權(quán)限模型各概念的關(guān)系圖Fig.1 Relation diagrams of fine grained permission model concepts

2.3 細(xì)粒度權(quán)限的不足

細(xì)粒度的權(quán)限控制與業(yè)務(wù)邏輯具有很大的相關(guān)性。針對(duì)不同的業(yè)務(wù)邏輯,常常使用不同的權(quán)限控制策略。因此,從這種意義上講,粗粒度的權(quán)限控制更有通用性,便于將其形成為一個(gè)模型架構(gòu),更有重用價(jià)值;而將細(xì)粒度的權(quán)限控制就不行。因此細(xì)粒度控制一般與粗粒度相結(jié)合,才能更高效地解決權(quán)限控制問(wèn)題。

3 細(xì)粒度權(quán)限控制在.NET中的設(shè)計(jì)與實(shí)現(xiàn)

權(quán)限設(shè)計(jì)的過(guò)程主要包括兩個(gè)部分:正向授權(quán)和負(fù)向授權(quán)。正向授權(quán),指在開(kāi)始時(shí),假定主體沒(méi)有任何權(quán)限,然后根據(jù)需求授予權(quán)限,適用于權(quán)限要求嚴(yán)格的系統(tǒng)。負(fù)向授權(quán),指在開(kāi)始時(shí),假定主體有所有權(quán)限,然后將某些特殊權(quán)限收回。正向授權(quán)包括三個(gè)步驟:創(chuàng)造權(quán)限、分配權(quán)限、使用權(quán)限[6]。

1. 正向授權(quán)

(1)創(chuàng)造權(quán)限

在權(quán)限設(shè)計(jì)和實(shí)現(xiàn)的過(guò)程中,設(shè)計(jì)者會(huì)將整個(gè)系統(tǒng)劃分為不同的功能模塊,每個(gè)不同的模塊應(yīng)該分配哪些權(quán)限。在本系統(tǒng)中以其它管理中的科室管理為例,該模塊用戶(hù)應(yīng)該具備查看、增加、修改、刪除等某一具體科室的權(quán)限,在創(chuàng)造權(quán)限時(shí),還沒(méi)有將權(quán)限與具體的角色用戶(hù)綁定,只是邏輯意義上的權(quán)限。

(2)配權(quán)限

在RBAC模型中,權(quán)限是與角色對(duì)應(yīng)起來(lái)的。將固定的權(quán)限授予某個(gè)角色,該角色就擁有了一系列的操作許可。分配權(quán)限正是管理員將邏輯意義上權(quán)限具體化的過(guò)程。本系統(tǒng)中,仍以其他管理中的科室管理為例,管理員將修改某一科室的操作權(quán)限授予計(jì)量所所長(zhǎng),那么計(jì)量所所長(zhǎng)就擁有了修改本科室的權(quán)限。

(3)使用權(quán)限

用戶(hù)使用管理者分配的權(quán)限可以訪(fǎng)問(wèn)系統(tǒng)的某個(gè)具體模塊。用戶(hù)是權(quán)限的具體使用者,只有管理員設(shè)置過(guò)的權(quán)限,用戶(hù)才可以使用,只有用戶(hù)所在的角色擁有的權(quán)限才可以使用。本系統(tǒng)例如只有特殊用戶(hù)(管理員)才能對(duì)某個(gè)數(shù)據(jù)信息進(jìn)行刪除操作,普通的用戶(hù)未經(jīng)授權(quán)是不允許的。

圖2 細(xì)粒度身份驗(yàn)證的具體流程Fig.2 The specific process of fine-grained authentication

2. 負(fù)向授權(quán):收回權(quán)限。

用戶(hù)的操作權(quán)限(增加、刪除、修改、查找)的控制,主要通過(guò)以下幾個(gè)方面來(lái)實(shí)現(xiàn):數(shù)據(jù)庫(kù)權(quán)限設(shè)計(jì)、角色管理。以下就分兩個(gè)方面來(lái)具體闡述細(xì)粒度權(quán)限在.NET中的設(shè)計(jì)和實(shí)現(xiàn)。

3.1 數(shù)據(jù)庫(kù)權(quán)限設(shè)計(jì)

根據(jù)本系統(tǒng)的實(shí)際需求,我們?cè)O(shè)計(jì)了8個(gè)數(shù)據(jù)表來(lái)進(jìn)行數(shù)據(jù)庫(kù)的權(quán)限設(shè)計(jì):角色權(quán)限表、角色表、用戶(hù)角色表、用戶(hù)表、科室表、角色功能表、功能說(shuō)明表、功能模塊表。在這幾個(gè)數(shù)據(jù)表中,科室表對(duì)應(yīng)于細(xì)粒度模型中的群組表(Group),功能模塊表和功能應(yīng)用表兩部分對(duì)應(yīng)于模型中的資源(Resource)。各數(shù)據(jù)表的具體字段及對(duì)應(yīng)關(guān)系如圖3。

在設(shè)計(jì)數(shù)據(jù)表時(shí),設(shè)計(jì)特定的字段,通過(guò)修改特定字段的值來(lái)實(shí)現(xiàn)權(quán)限控制。比如,角色權(quán)限表中的Value字段和角色表中的Power字段,都是一個(gè)由0或1組成的字符串。而功能模塊表中的功能ID字段表示該功能在角色表的Value字段中位置,如果該位置對(duì)應(yīng)的數(shù)值是0,表示該角色無(wú)此權(quán)限,如果值為 1,則表示該角色擁有此權(quán)限。角色權(quán)限表中的 value值顯示了角色是否擁有該操作權(quán)限的情況。通過(guò)數(shù)據(jù)表的這種字段設(shè)置,在用戶(hù)登錄時(shí),系統(tǒng)通過(guò)檢測(cè)該角色的Power值,便可對(duì)用戶(hù)進(jìn)行權(quán)限控制。

3.2 角色管理

角色的添加、刪除、修改等是實(shí)現(xiàn)權(quán)限控制的重要方面。通過(guò)角色管理,實(shí)現(xiàn)權(quán)限的授予,修改,回收等,以此控制用戶(hù)的操作。

圖3 數(shù)據(jù)表具體字段與關(guān)聯(lián)Fig.3 Specific fields and associations of data tables

在添加新角色時(shí),先將角色值置 0,然后利用.NET類(lèi)庫(kù)中自帶的Replace函數(shù)將角色值中的對(duì)應(yīng)的功能編號(hào)位的值修改為 1。則該角色就具備了對(duì)特定模塊的特定操作權(quán)限,角色與用戶(hù)對(duì)應(yīng),當(dāng)添加新用戶(hù)時(shí),為用戶(hù)授予相應(yīng)的角色,該用戶(hù)就具備了該角色所有的操作權(quán)限。例如,在本系統(tǒng)中,實(shí)驗(yàn)室管理模塊有四個(gè)主要功能:增加、修改、刪除、查看。每個(gè)功能對(duì)應(yīng)唯一的ID功能代號(hào);建立一個(gè)角色(計(jì)量所所長(zhǎng)),把上面的功能代碼加到這個(gè)角色擁有的權(quán)限中,并保存到數(shù)據(jù)庫(kù)中;添加一個(gè)員工的賬號(hào),并把一種或幾種角色賦給這個(gè)員工。這樣他登錄到系統(tǒng)中將會(huì)只看到他擁有權(quán)限的那些模塊。在刪除角色時(shí),由于角色與用戶(hù)對(duì)應(yīng),角色被刪除后,擁有該角色的用戶(hù)的相應(yīng)權(quán)限也被收回。修改角色時(shí),進(jìn)入該角色的權(quán)限列表,根據(jù)需要對(duì)相應(yīng)權(quán)限進(jìn)行選擇或修改。

4 總結(jié)

本文從數(shù)據(jù)訪(fǎng)問(wèn)控制的現(xiàn)狀出發(fā),分析了現(xiàn)行訪(fǎng)問(wèn)控制的不足,提出了一種改進(jìn)的細(xì)粒度的角色訪(fǎng)問(wèn)控制方法。并以現(xiàn)實(shí)中的質(zhì)量檢測(cè)信息管理系統(tǒng)為原型,在此基礎(chǔ)上闡述了細(xì)粒度權(quán)限控制在.NET中的設(shè)計(jì)與實(shí)現(xiàn)。

[1] Offer, J. A. Modern Database Management[M]. Beijing: Publishing House of Electronic Industry: 2014: P165-207.

[2] 王靜宇, 董景楠, 譚躍生. 滿(mǎn)足靜態(tài)角色分離約束的角色劃分方法[J]. 計(jì)算機(jī)工程, 2017-11.

[3] 陳彥竹, 郝天曙. 基于角色信任度動(dòng)態(tài)監(jiān)控的訪(fǎng)問(wèn)控制研究[J]. 計(jì)算機(jī)技術(shù)與發(fā)展; 2017-7.

[4] 李戰(zhàn)懷等. 對(duì)象—關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)原理與實(shí)現(xiàn)[M].北京: 清華大學(xué)出版社; 2014.

[5] 孟憲虎. 馬雪英, 鄧緒斌.大型數(shù)據(jù)庫(kù)系統(tǒng)管理、設(shè)計(jì)與實(shí)例分析—基于SQL Server[M]. 北京: 電子工業(yè)出版社;2014: P273-397.

Research and Design of Fine Grained Permission Based Quality Inspection Management System

TU Xiao-qin1, WU Sheng2
(1. The college of arts and sciences Yunnan normal university Kunming 650222;2. kunming university of science and technology 650222 Kunming China)

Firstly, an improved fine-grained permissions model is offered in this thesis, in view of that current role model for RBAC permissions granularity is not enough detailed. And the detailed description of the characteristics and the specific procedure of fine-grained authentication to the improved model is also given.Then,based on the actual Quality Detection Management System, the specific process of design and implementation to improved fine-grained permissions control in . NET are described ,from both Database design and roles management.

Granular permission; Fine-grained permission; Verification of identity; Access control

TP319

A

10.3969/j.issn.1003-6970.2017.12.016

本文著錄格式:涂小琴,吳晟. 基于細(xì)粒度權(quán)限質(zhì)檢管理系統(tǒng)的研究與設(shè)計(jì)[J]. 軟件,2017,38(12):87-89

云南省教育廳科學(xué)研究基金項(xiàng)目(No:2016ZDX253)

涂小琴(1981-),女,講師,主要研究方向:軟件工程及數(shù)據(jù)分析。

猜你喜歡
細(xì)粒度身份驗(yàn)證數(shù)據(jù)表
融合判別性與細(xì)粒度特征的抗遮擋紅外目標(biāo)跟蹤算法
細(xì)粒度的流計(jì)算執(zhí)行效率優(yōu)化方法
基于列控工程數(shù)據(jù)表建立線(xiàn)路拓?fù)潢P(guān)系的研究
基于雙線(xiàn)性卷積網(wǎng)絡(luò)的細(xì)粒度圖像定位
支持細(xì)粒度權(quán)限控制且可搜索的PHR云服務(wù)系統(tǒng)
Endogenous neurotrophin-3 promotes neuronal sprouting from dorsal root ganglia
圖表
基于VSL的動(dòng)態(tài)數(shù)據(jù)表應(yīng)用研究
身份驗(yàn)證中基于主動(dòng)外觀(guān)模型的手形匹配
ASP.NET中的Forms身份驗(yàn)證的研究