胡海濱
(廣州白云國際機場商旅服務有限公司,廣州 510410)
強制訪問控制是指系統對訪問對象施加強制限制,以訪問預先設置的內容。強制訪問控制預先對用戶的訪問級別進行調節,并通過信息級別與用戶訪問級別的比較來驗證訪問者的合法權利。這種強制訪問控制雖然在一定程度上保證了信息的安全,但也可能存在權限劃分與實際情況的沖突,使得兩者之間存在明顯的差距,導致一些本應擁有訪問權的人無法訪問信息。同時,由于整個系統是預先制定的,因此很難修改信息級別。
自主訪問控制是指在確認訪問主體的身份后,對訪問內容進行限制。訪問控制策略存儲在一個小矩陣中,矩陣中有許多訪問元素。每個元素表示訪問主體對訪問對象的控制。自主訪問控制的典型特點是更加直觀,能夠充分顯示系統各部分的權限分布。然而,如果系統規模較大,系統的復雜度將顯著提高。如果要修改用戶的訪問權限,難度將成倍增加。
基于角色的訪問控制由三個實體組成:用戶、權限和角色。用戶與角色之間的對應關系不是一一對應的,權限與角色之間的對應關系是多對多的。角色的設置與組織的工作性質密不可分。用戶根據他們應該完成的任務被賦予一個角色。當他們獲得角色時,他們有相應的權限。但是,用戶和權限之間沒有直接關系。角色的制定是基于組織工作的性質。用戶根據自己的工作需要被賦予一個角色,這樣他們就可以獲得這個角色的權限。
隨著計算機技術的成熟,RBAC 的應用越來越普遍。如果系統的用戶數量少,角色不夠,系統中的角色過多就會成為負擔。在RBAC 權限中,他們所擁有的角色是相對固定的,但實際上,由于工作環境的變化,在指定的用戶和角色之間存在一定的覆蓋差距。在這種情況下,如果首先建立角色并將其授予用戶,則在取消權限時需要再次刪除該角色,從而導致復雜的過程。同時,這種隨機添加角色權限的方式也可能導致以下安全問題:一是角色權限授予時出錯,導致角色權限范圍超出預期;二是角色沒有準劃分,導致其他用戶參與此角色。如果兩個問題同時出現,將給整個系統的安全和權限劃分的穩定性帶來很大的問題。但如果將用戶權限直接引入RBAC 系統,則可以實現用戶權限之間的相互關系,簡化DAC 模型。當系統使用范圍較小時,可以直接應用簡化的DAC 模型,有效避免RBAC 系統的繁瑣情況。同時,通過對傳統模型的簡化,可以為系統的升級預留空間,從而在擴大系統規模的同時避免了權限管理部分的二次規劃和修改,使該模型能夠有效地應用于多個系統中。同時,通過修改原模型中角色、對象和權限之間的關系,將傳統的目標角色(操作角色)轉化為三者的有效結合。這種新模型也稱為自增強的基于角色的訪問控制模型。該模型保存了原模型,增加了授予用戶權限的方式,使用戶能夠在一定程度上控制權限,顯示了用戶與權限之間的多種對應關系。與傳統的RBAC 模型相比,新的derbac 改進了權限的授予,實現了對象多個對應關系之間的特定關系,澄清了多對多關系。
目前,有幾種常見的信息系統,其中大部分都有關系數據庫來支持后臺數據。如果將derbac 模型應用到關系數據庫中,則可以擴大存儲在數據庫中的數據。因此,在選擇數據庫模型時,根據規則選擇數據庫是合理的。數據庫中的每個數據都是權限規則的描述。已建立的規則清楚地指示如何將特定角色分配給用戶,或如何將相應的權限分配給角色。通過該規則,可以實現對權限的有效控制。
在建立表的過程中,對于四個實體,創建了四個對應的表,即用戶信息表、角色對應表、對象信息表和操作表。根據RBAC,需要對受保護的用戶和角色進行統一編碼。通過統一編碼,可以使用統一的權限分配表來分配和存儲角色權限劃分和用戶權限規則。由于角色與被保護對象的關系是相同的,角色與被保護對象的表達式是相似的,因此角色之間的對應關系和對象表之間的關系基本相同。
在用戶角色限制表中添加一個新的角色項時,需要刪除現有的用戶和角色對應關系。生成新的權限和對話時,確定用戶所扮演的角色,通過對象關系確定角色的子角色號,并有效地組合為認證對象集。當用戶進行身份驗證時,只需要比較用戶標簽號和操作號。整個系統將形成一套完整的信息系統權限管理方法。