基於OA系統中基於角色的安全訪問控制設計

2021-01-03 電子產品世界

摘要:隨著電子政務的快速發展和全面普及,辦公自動化(OA)系統的安全性顯得越來越重要。對基於Web 的B/S 結構的OA 系統結構和安全需求進行了分析,為了增強用戶身份鑑別和授權控制的安全性,分析了基於角色的安全訪問控制的核心思想和模型。在OA 系統中進行了基於角色的安全訪問控制設計,給出用戶、角色和權限的劃分,提出安全訪問控制流程。

本文引用地址:http://www.eepw.com.cn/article/149559.htm

1 引言

隨著計算機和Internet 的快速發展,OA 系統,即辦公自動化系統,已經成為政府、企業和高校等單位辦公的得力助手,很多日常工作都必須使用OA 系統才能完成,因此,OA系統的安全問題顯得尤為重要。某些信息涉及到單位的機密,這些信息的訪問權限需要受到保護。另外,一些用戶越權訪問信息資源、篡改重要數據的事件時有發生,造成管理混亂。

針對這些情況,本文對OA 系統進行了基於角色的安全訪問控制設計。

2 OA 系統結構

為了便於用戶的使用和維護,節約系統維護成本,目前OA系統應用較廣泛的是基於Web的B/S(Browser/Server)結構,客戶端只需帶有瀏覽器軟體,能夠最大程度地實現資源共享,避免了資源的浪費。OA系統的B/S結構是三層體系結構,即交互層、服務層和數據訪問層[1],如圖1所示:

圖1 B/S三層體系結構圖

位於頂層的是交互層,負責邏輯表達,通過瀏覽器完成系統與用戶的交互。位於中間的是服務層,負責為上層的應用提供相應的服務平臺。位於底層的是數據訪問層,主要由資料庫伺服器提供對整個OA 系統的功能支持,同時負責與資料庫管理系統進行交互,提供對專門數據資源的存儲、管理和維護等服務。

3 OA 系統安全需求

設計開發一個OA系統一般要考慮以下7個方面的安全需求[2][3]:

(1)身份鑑別。用戶和後臺伺服器能夠相互確認身份的合法性和真實性。

(2)授權控制。根據鑑別的用戶真實身份確定對信息資源或應用的訪問權限,不能隨意擴大訪問權限或越權訪問信息。

(3)防止信息洩漏。保證信息在通信傳輸中和存儲介質中不被有意或無意地洩漏、丟失或竊取。

(4)完整性。確保敏感信息不被非授權用戶惡意或無意篡改。

(5)信息流安全。保證用戶與伺服器之間的路由正確可靠。

(6)信源確認。確保不同信息來自正確的伺服器。

(7)抗抵賴性。建立責任機制,確保任何用戶都不能否認其所進行的操作。

4 基於角色的安全訪問控制模型

一般OA系統應採用Lotus Domino/Notes作為應用系統開發平臺和應用支撐平臺。LotusDomino/Notes提供多層次的方法以確保應用的安全性,可以保護域、區段、表單、視圖、資料庫、伺服器和網絡域的安全[4]。通過Lotus Domino/Notes不同層次模型的安全設置,能夠對網絡信息存取權限進行有效的管理和控制,可以保障系統具有強大的安全性。儘管Lotus Domino/Notes系統本身擁有比較完善的安全機制,為了進一步提高系統的整體安全等級,還需補充另外的安全措施。身份鑑別和授權控制的安全是OA系統安全需求中非常重要的方面, 本文針對此安全需求, 採用基於角色的安全訪問控制技術RBAC(Role-Based Access Control)進行設計。

1. 訪問控制方式種類

對訪問控制方式,國內外已經進行了多年的研究。有三種訪問控制方式影響較大, 它們是:DAC(DiscretiONary Access Control)自主訪問控制,MAC(Mandatory Access Control)強制訪問控制和RBAC(Role-Based Access Control)基於角色的訪問控制[5]。

自主訪問控制DAC是指用戶可以自主地將訪問權限或者訪問權限的某個子集授予其他用戶,但很可能會因為權限的傳遞而出現失控,導致信息的洩漏。強制訪問控制MAC嚴格控制了用戶的權限,但是它的授權過程卻十分複雜,所以多用於軍事領域,其他方面很少使用。

基於角色的訪問控制RBAC是目前最為流行的訪問控制策略。它通過引入「角色」的概念,使得授權管理變得簡單。它比傳統的自主訪問控制和強制訪問控制更優越, 同時也提供了更高的靈活性和可擴展性。

2. RBAC的核心思想與模型

管理用戶對資源的訪問和存取控制的傳統方法通常是直接給每個用戶一定的權限許可,但是隨著單位內部人員發生離職、升職或離開崗位,管理員必須根據單位的人事變動對人員資料庫做相應的調整,從而給資料庫管理帶來不便,系統開銷大,基於角色的訪問控制技術RBAC是解決此問題的合理選擇[6]。RBAC的核心思想就是將訪問權限與角色相聯繫,通過給用戶分配合適的角色,使用戶與訪問權限相聯繫。角色是根據各單位內為完成各種不同的任務需要設置的,根據用戶在單位中的職責和責任來設定他們的角色。

關於RBAC模型,比較著名的是美國George Mason大學的R. Sandhu教授的RBAC96模型[7],本文也是基於此模型進行基於角色的安全訪問控制設計,基於角色的安全訪問控制模型圖如圖2所示:

圖2 基於角色的安全訪問控制模型圖

用戶是對數據對象操作的主體。角色是對應於組織中的某一特定的職能崗位,代表了一個特定的任務範疇。角色作為中間橋梁將用戶和權限聯繫起來。約束是附加於RBAC系統中各元素之上,用來表達許可執行的條件。會話是一個動態概念,用戶激活角色及時建立會話。權限是用戶對系統中的對象進行某種特定模式訪問的操作許可。

3. Domino資料庫的存取控制列表

Domino資料庫有個存取控制列表ACL(Access Control List),它用來指定什麼人可以以什麼方式(例如創建、讀、寫、刪除等)對資料庫進行訪問,要控制Notes系統用戶的存取權限[4],就要在ACL中為用戶設定適當的存取級別、用戶類型等。

5 基於角色的安全訪問控制設計

在OA系統中,結合RBAC模型與Domino資料庫所提供的系統級的安全機制,可以直接地把辦公組織結構映射到辦公自動化系統中,簡化權限的管理工作。安全管理人員根據需要指定各種角色,根據用戶的責任和職位再指派其為相應的角色。整個訪問控制過程就是訪問權限與角色相關聯,角色再與用戶關聯,從而實現了用戶與訪問權限的邏輯分離。

1.用戶與角色的劃分

系統用戶分為三種:系統管理用戶、業務管理用戶和普通用戶。系統角色可以分為:維護整個系統的系統管理員、維護某個功能模塊的業務管理員、單位領導、各部門領導、負責收發文件部門的秘書與領導、單位員工等。

2.權限劃分

角色作為用戶與訪問權限之間的中介,給用戶賦予一定的角色,再把權限賦予角色,用戶通過角色獲取相應的訪問操作權限。權限分為多種類型:如管理員對系統或功能模塊的使用權限,普通用戶對文檔數據的操作使用權限,這些權限屬於被動的權限控制策略。建立起用戶、角色和權限的關係表,能夠快速查找各個角色的用戶的相關權限或某個權限的用戶的集合。用戶、角色和權限對應關係表如表1所示:

表1 用戶、角色和權限對應關係表

另外,對權限還要實施動態的管理,即根據文檔的狀態和用戶角色動態地決定該角色的用戶所應該進行的權限或對數據進行的操作。動態權限管理由權限規則來描述,如在發文資料庫中公文在起草狀態、審核狀態、批准狀態、籤發狀態和發文狀態中,秘書、部門負責人、辦公室主任等角色的用戶能對該對象進行什麼樣的操作。一條權限規則由一個訪問者和一個權限向量組成,權限向量描述訪問者可以對數據對象進行哪些操作。多條權限規則共同構成對權限的動態控制。

3.安全訪問控制流程

安全訪問控制的流程圖如圖3所示:

圖3 安全訪問控制流程圖

對此安全訪問控制流程描述如下:

(1)用戶要使用用戶名和密碼登錄OA系統,認證伺服器對用戶名和密碼進行驗證來確認用戶身份,驗證時要將用戶輸入的信息與資料庫中的用戶信息表相比較,如果相符,則允許用戶進入本系統,否則將返回出錯信息。

(2)用戶登錄OA系統後,系統從用戶信息表中提取出用戶的ID號,查詢資料庫中的角色分配表激活角色,建立會話,角色分配表包含用戶ID和對應的角色。

(3)激活角色,建立會話後,系統查詢權限規則表,為用戶分配權限,使用戶獲得目標文檔數據或取得相關操作權限。權限規則表是根據資料庫中文檔狀態和角色動態變化的。用戶操作完成後退出系統。基於角色的安全訪問控制設計實現了屬於不同角色的用戶在同一個OA系統中獲得不同的權限,即不同的角色顯示不同的功能模塊,有效避免了超越操作行為的發生,增強了OA系統身份鑑別和授權控制方面的安全性。

6 結束語

本文對適用於公司、企業和高校的OA系統進行了系統結構分析和安全需求分析。為了增強用戶身份鑑別和授權控制的安全性,重點對OA系統進行了基於角色的安全訪問控制設計,使得不同的用戶有相應的角色和權限,防止越權訪問。但是計算機和網絡的發展會對OA系統的安全性提出更高的要求,相應的安全策略也需要不斷更新、不斷完善,從而增強OA系統的整體安全性。

本文創新點: 在 OA 系統中進行了基於角色的安全訪問控制設計,給出用戶、角色和權限的劃分,提出安全訪問控制流程,增強了OA 系統身份鑑別和授權控制方面的安全性。

相關焦點

  • 漫談PetaBase-i的基於角色的細粒度授權系統
    數據授權能力弱:數據使用缺乏細粒度授權方式和精細化的權限控制保護機制。方案:基於角色的細粒度授權系統針對上述問題,億信華辰實時大數據平臺PetaBase-i中加入了加強的細粒度的基於角色的授權系統。它使用了粗粒度的、基於Kerberos統一身份認證的安全機制與細粒度級、基於角色的授權以及多租戶的管理模式相結合的多重安全授權。Kerberos是目前Hadoop生態中非常流行且成熟的統一身份認證機制,在Hive、HDFS、YARN等開源組件的權限認證方面有著廣泛的應用。
  • 基於角色的權限控制理論
    這些基本的信息構成了用戶登陸系統後系統根據這些基本信息的組成而分配給用戶的可訪問的資源(權限)。用戶的基本信息即包含用戶的唯一ID,一般情況下該用戶僅可在一個單位中任職,因此用戶信息與單位信息形成多對一的數據關係。而用戶信息與角色信息的關係是多對多的關係,即一個用戶可以擁有多重角色,而某一角色下可以賦予多個用戶。
  • oa辦公自動化系統的設計原則是什麼?
    隨著我國信息化建設的快速發展,受到了越來越多企業的重視,許多的企業對oa辦公自動化系統引進了引進實施。到這有人會問了,oa辦公自動化系統的設計原則是什麼呢?接下來小編就來為大家大致介紹下吧。oa辦公自動化系統的設計原則是什麼?
  • go語言基於角色訪問的權限管理模型插件
    Casbin是用於Golang項目的功能強大且高效的開源訪問控制庫。轉自:go語言中文文檔:www.topgoer.com1.1.1.處理訪問控制模型及其策略的存儲。管理角色用戶映射和角色角色映射(RBAC中的角色層次結構)。支持內置的超級用戶,例如root或administrator。超級用戶可以在沒有顯式權限的情況下執行任何操作。多個內置運算符支持規則匹配。例如,keyMatch可以將資源鍵映射/foo/bar到模式/foo*。
  • 基於arduino +機智雲物聯網平臺的陽臺生態控制系統的設計
    基於Arduino +機智雲物聯網平臺的陽臺生態控制系統的設計李軍輝北京農業職業學院摘要以基質培養的綠色植物所在的半封閉陽臺系統為研究對象,設計基於Arduino Uno WIFI +機智雲物聯網平臺的遠程環境控制系統
  • 基於Sentry實現數據訪問權限控制
    Sentry初識Sentry是適用於Hadoop生態環境、基於角色的授權管理系統,可以模塊化集成到HDFS、Hive、Impala。它是一個策略引擎,運行定義授權規則,以校驗用戶對數據模型的訪問請求。授權粒度Sentry數據訪問授權的實現依賴於授權對象和操作,授權對象定義要受授權規則約束的對象,可以是伺服器(server)、資料庫、表、視圖甚至是列;操作定義運行的操作粒度,包括查找(select)、刪除(delete)、創建(create)等。授權對象和操作級別的組合模式提供了不同特權級別的訪問控制。
  • 基於單片機控制的多功能充電系統設計
    基於單片機控制的多功能充電系統設計 佚名 發表於 2020-04-16 15:59:52 前 言 由於石油危機和日益嚴重的環境汙染
  • 基於Zynq的移動視頻監控系統的電機控制設計
    基於Zynq的移動視頻監控系統的電機控制設計 陳榮濤,葛 芬 發表於 2017-11-17 11:23:01 摘 要: 針對傳統固定監控架設成本高、監控有死角且需要布置的視頻採集端個數太多的情況,提出一種基於
  • 基於實際需求出發 大連中盈OA年會亮相
    在今年的OA年會的眾多展區中,大連中盈的展臺被眾多與會觀眾熱情諮詢。,主要經營產品有中盈NX-500系列、中盈NX-600系列、中盈NX-100系列、中盈NX-650系列、中盈ZY-80系列針式印表機等,主要應用在金融、稅務、航空、酒店、醫院、保險等行業單位的報表及票據列印領域。
  • 基於NXP Semiconductors的多核應用處理器嵌入式系統設計
    嵌入式系統設計的演變過程注意事項 嵌入式設備在支持一組有限的系統功能方面的傳統角色,在很大程度上已經被可提供廣泛功能的設備的需求所取代。例如,在工業應用中,智能工具和設備對於增強型 HMI 功能的需求要求處理器能夠在滿足更多傳統工業實時要求的同時,提供優化的圖形。
  • 基於LabVIEW實現電梯控制系統的設計
    目前,計算機輔助實時測量技術的發展,使得實時測量和控制更加智能化、高精度和高效率。LabVIEW基於以上的特點,已經成為國內外應用最廣的數據採集和控制開發的語言環境,例如基於LabVIEW的信號處理與數據分析,進行圖形獲取和傳輸等等。其中尤其以數據的採集和處理分析為主要功能而設計出來很多種實驗系統,比如虛擬示波器的設計以及如何進行信號去噪,無創脈搏血氧檢測,速度測量及校正等等。
  • 基於零信任的安全架構
    零信任網絡打破了傳統的認證即信任、邊界防護、靜態訪問控制,以網絡為中心等思維,建立起一套以資源為中心,以識別、認證、動態訪問控制、授權、審計以及監測為鏈條,以最小化實時授權為核心,以多維信任算法為基礎,認證達末端的動態安全架構。
  • 基於XC7Z20的多軸串聯控制系統的設計
    基於XC7Z20的多軸串聯控制系統的設計 技術編輯archive1 發表於 2017-11-18 11:19:00 摘要:嵌入式技術突飛猛進的發展,為運動控制系統的研究和應用注入了新的活力
  • 基於FPGA的交通燈系統控制設計
    摘要:為了對交通燈系統進行精確控制,採用FPGA實驗板,在QuartusⅡ軟體環境下,分別實現脈衝發生模塊、狀態定時模塊、交通燈顯示模塊、時間顯示模塊,進行仿真實驗和硬體下載,獲得的測試結果滿足設計要求。
  • 基於PLC的控制系統實現立體停車庫的設計
    其次,立體車庫與地下車庫相比較而言更加有效地保證人身和車輛的安全。人在車庫中或者車不能停放的位置,用電子控制的整個設備便不會運行。立體停車設備可用很小的面積停放較多數量的車,免去了坡道式停車庫的坡道設計等問題。將停車庫設計中的建築空間類問題轉換為機械方式的研究,並且採用新技術解決停車問題。採用計算機控制,車庫區無人進入,將有效地防止盜竊和損壞。
  • 基於LonWorks的智能建築弱電系統集成控制平臺設計
    摘要:基於智能建築的基本理念,整合了自動控制、IT及網絡通信等技術,應用現場總線技術和標準通信接口,以智能化辦公和住宅小區弱電項目為實際應用對象,對智能樓宇設備集成控制平臺的各獨立子系統進行控制,開發了基於LonWorks的分布式控制系統,分析了建築智能化集成控制方案,設計了基於現場總線和標準接口的智能建築弱電系統集成控制平臺
  • Spring Security基於表達式的權限控制
    Spring Security源碼分析十三:Spring Security 基於表達式的權限控制Spring Security是一個能夠為基於Spring的企業應用系統提供聲明式的安全訪問控制解決方案的安全框架。
  • 基於網格的電子投票系統的應用設計
    本文藉助成熟的JSP、網格和CA等技術,實現了網格環境中的學生電子投票系統。該系統通過學生對教師授課效果的投票來評價教師的教學質量,以及教師受學生歡迎的程度。系統在設計中遇到了如何實現禁止重複投票、怎樣處理投票結果、如何解決安全性等問題。
  • 基於Android系統的射擊遊戲App開發與設計
    本文設計了一個基於Android平臺的射擊遊戲。在開發過程中,設計和實現靜態的遊戲界面,動畫界面,遊戲環境配置,人機戰,減少和補充遊戲血量,升級級別,存儲玩家記錄等功能。經過測試,該遊戲已經實現了射擊遊戲的基本功能,滿足了用戶對單機遊戲的需求。
  • 如何在基於面向服務架構設計的項目中應用WebService技術(下篇)
    軟體項目實訓及課程設計指導——如何在基於面向服務系統架構設計的項目中應用Web Service技術(下篇)6、Web服務組件在開發中常應用的各種設計模式(1)在Web服務組件具體開發中常用到的設計模式GOF設計模式在設計