1 引言
1.1 課題提出
工作流(Workflow)是為實現(xiàn)某個業(yè)務(wù)目標,在多個參與者之間,利用計算機技術(shù),按某種預定規(guī)則自動傳遞文檔、信息或者任務(wù)。從企業(yè)信息化的發(fā)展來看,基于工作流的信息管理系統(tǒng)正逐漸成為企業(yè)建設(shè)的主流,這類系統(tǒng)可統(tǒng)稱為“工作流系統(tǒng)”。
工作流系統(tǒng)中不同的業(yè)務(wù)流程之間經(jīng)常需要相互作用以共享信息和資源,資源的共享必然會引起一系列安全問題。安全策略在工作流系統(tǒng)中集中表現(xiàn)為授權(quán)控制,授權(quán)控制是工作流系統(tǒng)中信息安全的一種重要手段,授權(quán)控制可以防止用戶進行越權(quán)存取而對信息的完整性造成破壞。引入工作流的授權(quán)控制模型,就是為了讓工作流運轉(zhuǎn)更好地和人的操作有序、有規(guī)章地結(jié)合起來,實現(xiàn)組織模型與業(yè)務(wù)過程模型的有機連接。
對授權(quán)控制模型的研究有助于企業(yè)基于工作流的企業(yè)資源計劃管理系統(tǒng)(ERP)、客戶關(guān)系管理系統(tǒng)(CRM)、供應鏈管理(SCM)等系統(tǒng)的建設(shè),并對企業(yè)的信息安全建設(shè)也有一定的參考意義。本課題提出的目的是:提供一套可行的授權(quán)控制模型來解決工作流系統(tǒng)中用戶管理和資源授權(quán)問題。
1.2 研究現(xiàn)狀
目前,工作流的權(quán)限控制模型,比較普遍的方式是三種:
(1)主客體式訪問控制模型(Subject-object)
(2)基于任務(wù)的授權(quán)控制模型(Task-Based Authorization Model)
(3) 基于角色的訪問控制模型(Role-Based Access Control Model)
2授權(quán)控制模型分析
2.1 基于角色的授權(quán)控制模型
2.1.1 標準RBAC模型
NIST標準RBAC模型由4個部件模型組成,這4個部件模型分別是基本模型RBAC0(Core RBAC)、角色分級模型RBAC1(Hierarchal RBAC)、角色限制模型RBAC2(Constraint RBAC)和統(tǒng)一模型RBAC3(Combines RBAC)。
* RBAC0定義了能構(gòu)成一個RBAC控制系統(tǒng)的最小的元素集合。
* RBAC1引入角色間的繼承關(guān)系。
* RBAC2模型中添加了責任分離關(guān)系。
* RBAC3包含了RBAC1和RBAC2。
2.1.2 基本RBAC模型表示
基本RBAC模型描述說明如下:
(1)控制對象:是系統(tǒng)所要保護的資源(Resource),可以被訪問的對象。
(2)權(quán)限:對受保護的資源操作的訪問許可(Access Permission),是綁定在特定的資源實例上的。對應地,訪問策略(Access Strategy)和資源類別相關(guān),不同的資源類別可能采用不同的訪問模式(Access Mode)。
(3)用戶:是權(quán)限的擁有者或主體。用戶和權(quán)限實現(xiàn)分離,通過授權(quán)管理進行綁定。
(4)用戶組:一組用戶的集合。在業(yè)務(wù)邏輯的判斷中,可以實現(xiàn)基于個人身份或組的身份進行判斷。系統(tǒng)弱化了用戶組的概念,主要實現(xiàn)用戶(個人的身份)的方式。
(5)角色:權(quán)限分配的單位與載體。角色通過繼承關(guān)系支持分級的權(quán)限實現(xiàn)。
(6)操作:完成資源的類別和訪問策略之間的綁定。
(7)分配角色權(quán)限PA:實現(xiàn)操作和角色之間的關(guān)聯(lián)關(guān)系映射。
(8)分配用戶角色UA:實現(xiàn)用戶和角色之間的關(guān)聯(lián)關(guān)系映射。
2.2 角色的分配
2.2.1 角色類型
基本RBAC模型的角色采取RBAC0中的角色定義模式,通過分配角色權(quán)限來決定各個角色的權(quán)限大小,即沒有確定角色的層次級別,僅僅描述出來各個角色所應該具有的權(quán)限。實際運用時可能會涉及到Hierarchal Roles 模式或Composite Roles 模式,就是對角色實現(xiàn)層次化和采用對角色實現(xiàn)一定的分組和復合,以便于權(quán)限分配。這就涉及到一般角色、分等級角色和復合角色。
如果面向工作流,角色從應用范圍上可分為:
(1)流程內(nèi)角色
(2)跨流程全局角色
(3)系統(tǒng)內(nèi)置角色
2.2.2 角色分配方式
角色分配:就是對用戶賦予相應的角色。工作流系統(tǒng)可以采取兩種的方式:角色選取用戶和用戶選擇角色。
兩種方式雖然表達的不一樣,不過結(jié)果總歸是一樣的:用戶都有了屬于自己的角色,當然,存在某些用戶,其屬于兩個或多個角色。
2.3 角色的授權(quán)
角色授權(quán)就是對角色授予對特定資源或操作的訪問權(quán)限。在工作流系統(tǒng)中,這些資源主要針對任務(wù)、文檔或表單、文檔或表單的元素。這涉及到授權(quán)的粒度問題。授權(quán)粒度表達的是,某一角色所能夠賦予權(quán)限的縱深深度。在實際的工作流應用當中,任務(wù)之間存在一些制約關(guān)系的,還可能會遇到角色重疊的問題。這就需要進行授權(quán)約束,授權(quán)約束根據(jù)的是權(quán)限分離(Separation of Duties)原則,即同一個角色不可承擔兩個要求權(quán)限分離的任務(wù)。
參考文獻
[1]王超,邊小凡.基于角色訪問控制機制在MIS權(quán)限管理中的應用[J].微機發(fā)展,2004(5):51-52.
[2]付松齡,譚慶平.基于任務(wù)和角色的分布式工作流安全模型[J].國防科技大學學報,2004(26):58-62.