[摘要] 本文給出了改進的DBSS模型。通過對傳統RBAC模型中角色概念的擴展,提出一種基于應用程序層的RBAC模型。定義了不同的角色關系和操作權限集,給出了角色控制模塊中功能層的權限管理,以及數據庫訪問權限管理的實施方法。
[關鍵詞] 電子商務安全 數據庫系統安全 RBAC 角色
一、引言
安全問題是電子商務(EC)實施中的瓶頸之一。數據庫是電子商務的核心,數據庫是否安全直接影響著電子商務正常運營。筆者針對傳統數據庫安全(DBSS)模型存在的弊端,提出了改進的DBSS模型和基于應用程序層的角色存取控制(RBAC)模型和相應的解決方案。
二、數據庫系統安全模型
在原有DBSS模型的基礎上,通過擴展其安全模塊DBSS以增強其安全性。身份認證模塊采用基于對稱與非對稱加密體制相結合的改進Kerberos認證協議;通過對角色概念的擴展,增加了角色存取控制的可控性;通過同態數據庫加密技術,保障了數據的安全性與完整性。改進后的DBSS模型如圖1所示。
圖1 改進后的DBSS模型
DBSS模塊主要有兩部分構成:DBSS的管理程序和具體業務處理模塊。DBSS的管理程序負責整個系統的協調調度,具體業務交給各個相應功能模塊去處理。具體業務處理模塊主要包括身份認證模塊、角色存取控制模塊、日志記錄模塊、數據加密模塊。
管理程序把請求者的身份提交給身份認證模塊來處理;若是合法身份就允許進入角色存取控制授權模塊檢查來訪者的權限,否則拒絕進入,并把請求的明文數據返回給數據加密模塊;數據加密模塊對明文數據進行加密,最后把明文數據或密文數據發送給客戶端;日志記錄模塊記錄來訪者的身份認證結果、角色存取控制授權結果和數據加密模塊處理結果等。
三、基于應用程序層的RBAC模型
模型中角色權限分配是將應用程序層系統功能項的操作權限分配給角色,而不是將訪問數據庫權限分配給角色;角色通過操縱系統的功能項來操縱數據庫資源,而不是通過訪問數據庫的權限來操縱數據庫資源,如圖2所示。
圖2 基于應用程序層的RBAC模型
圖2中的模型包含兩個基本層次:一是對應用系統功能層的訪問權限管理。二是對數據庫訪問權限的管理。將前端的“功能權限控制管理”和后臺的“數據存取權限管理”融合,進一步加強了系統安全管理的性能。
1.功能層訪問權限管理
數據庫系統客戶端的權限控制應包括以下幾部分:操作員用戶標識、操作員用戶對系統模塊的執行權限、操作員用戶對數據庫數據的操作權限。
(1)角色劃分
從系統管理的層面上考慮,將操作員用戶按照權限級別由高到低劃分為系統管理員、子系統管理員、子系統的錄入員、一般用戶四類。從用戶訪問的角度考慮,角色劃分類似于單位的組織結構。不同角色的權限可用單重或多重繼承來實現。角色之間具有偏序關系,偏序關系滿足反身性、傳遞性和非對稱性。
(2)權限管理
系統權限分為系統模塊控制權限和數據庫的操作權限兩部分。定義如下四個關系元組來實現權限控制。操作員用戶用二元組標識,其中U表示用戶名,P表示密碼。
定義1:權限級別二元組PC< P, C>,其中P表示存取控制屬性,C表示可能取值的集合。表示一個屬性P作為數據存取控制屬性,該屬性取值為一個集合C。
定義2:關系權限控制集合X{(R, P)},其中R表示關系,P表示R上的一個屬性。表示任何用戶要對R進行操作,必須先進行以P為分類的權限級別檢查。
定義3:用戶權限級別集合Y{(U, R, P, C1)},其中U表示操作員用戶,R表示關系,P表示R上的一個屬性,C1表示屬性值集合C的子集。它表示U可處理的關系元組,其值屬于C1。
定義4:關系元組
權限檢查算法為:對一個U和一個R如果存在X,對R的一個元組G,對于X中每個屬性P,都有VC1時,操作員用戶擁有G元組的存取權限。
2.數據庫訪問權限管理
管理員用戶在前臺進行用戶角色的可操作功能項的設置后,后臺DBMS進行相應數據存取權限管理,根據前端對角色功能項的指派,將有關功能項對應的數據庫對象的存取權限授予角色寫入后臺數據庫中的系統關系數據表中,創建前臺設置的新角色,同時完成對用戶的功能角色授權,將相應功能編碼數據項寫入后臺中程序員建立的數據庫關系表中,從而實現前后臺安全控制的一致性。
四、結論
電子商務安全問題是一個綜合性的管理問題,應通過對電子商務安全技術及管理的研究,推動電子商務進一步發展。本文提出的DBSS模型已應用于某公司電子商務系統中。目前,該系統運行正常,安全性能良好。
參考文獻:
[1]王卓:對電子商務安全技術體系結構的研究.計算機安全,2008,07
[2]張文麗:電子商務中的數據加密技術初探.技術與市場,2008,7
[3]張旭珍等:電子商務安全技術的研究.計算機與數字工程,2008,5