未声明spire。它可能因保护级别而不可访问_信息系统安全:访问控制技术概述...
1.訪問控制基本概念
身份認證技術解決了識別“用戶是誰”的問題,那么認證通過的用戶是不是可以無條件地使用所有資源呢?答案是否定的。訪問控制(Access Control)技術就是用來管理用戶對系統資源的訪問。訪問控制是國際標準ISO7498-2中的五項安全服務之一,對提高信息系統的安全性起到至關重要的作用,如圖6-1所示。
訪問控制是針對越權使用資源的防御性措施之一。其基本目標是防止對任何資源(如計算資源、通信資源或信息資源)進行未授權的訪問,從而使資源使用始終處于控制范圍內。最常見的是,通過對主機操作系統的設置或對路由器的設置來實現相應的主機訪問控制或網絡訪問控制。例如,控制內網用戶在上班時間使用QQ、MSN等。
訪問控制對實現信息機密性、完整性起直接的作用,還可以通過對以下信息的有效控制來實現信息和信息系統可用性:①誰可以頒發影響網絡可用性的網絡管理指令;②誰能夠濫用資源以達到占用資源的目的;③誰能夠獲得可以用于拒絕服務攻擊的信息。
主體(Subject)是指提出訪問請求的實體,是動作的發起者,但不一定是動作的執行者。主體可以是用戶或其它代理用戶行為的實體(如進程、作業和程序等)。
客體(Object)是指可以接受主體訪問的被動實體??腕w的內涵很廣泛,凡是可以被操作的信息、資源、對象都可以認為是客體。
訪問控制策略(Access Control Policy)是指主體對客體的操作行為和約束條件的關聯集合。簡單地講,訪問控制策略是主體對客體的訪問規則集合,這個規則集合可以直接決定主體是否可以對客體實施的特定的操作。訪問控制策略體現了一種授權行為,也就是客體對主體的權限允許。
訪問控制策略往往表現為一系列的訪問規則,這些規則定義了主體對客體的作用行為和客體對主體的條件約束。訪問控制機制是訪問控制策略的軟硬件低層實現。
如圖6-1所示,主體對于客體的每一次訪問,訪問控制系統均要審核該次訪問操作是否符合訪問控制策略,只允許符合訪問控制策略的操作請求,拒絕那些違反控制策略的非法訪問。
訪問控制可以解釋為:依據一定的訪問控制策略,實施對主體訪問客體的控制。
圖6-1也給出了訪問控制系統的兩個主要工作,一個是當主體發出對客體的訪問請求時,查詢相關的訪問控制策略;另一個是依據訪問控制策略執行訪問控制。
通過以上分析,可以看出影響訪問控制系統實施效果好壞的首要因素是訪問控制策略,制定訪問控制策略的過程實際上就是為主體對客體的訪問授權過程。如何較好地完成對主體的授權是訪問控制成功的關鍵,同時也是訪問控制必須研究的重要課題。
信息系統的訪問控制技術最早產生于20實際60年代,在70年代先后出現了多種訪問控制模型。1985年美國軍方提出可信計算機系統評估準則TCSEC,其中描述了兩種著名的訪問控制模型,即自主訪問控制DAC(Discretionary Access Control)和強制訪問控制MAC(Mandatory Access Control);1992年美國國家標準與技術研究所(NIST)的David Ferraiolo和Rick Kuhn提出基于角色的訪問控制RBAC(Role Based Access Control)。
如何決定主體對客體的訪問權限?一個主體對一個客體的訪問權限能否轉讓給其他主體呢?這些問題在訪問控制策略中必須得到明確的回答。
訪問控制策略制定的原則
訪問控制策略的制定一般要滿足如下兩項基本原則。
①最小權限原則:分配給系統中的每一個程序和每一個用戶的權限應該是它們完成工作所必須享有的權限的最小集合。換句話說,如果主體不需要訪問特定客體,則主體就不應該擁有訪問這個客體的權限。
②最小泄露原則:主體執行任務所需知道的信息應該最小化。
訪問權限確定過程
主體對客體的訪問權限的確定過程是:首先對用戶和資源進行分類,然后對需要保護的資源定義一個訪問控制包,最后根據訪問控制包來制訂訪問控制規則集。
用戶分類
通常把用戶分為特殊用戶、一般用戶、作審計用戶和作廢用戶。
①特殊用戶:系統管理員具有最高級別的特權,可以訪問任何資源,并具有任何類型的訪問操作能力。
②一般的用戶:最大的一類用戶,他們的訪問操作受到一定限制,由系統管理員分配。
③作審計的用戶:負責整個安全系統范圍內的安全控制與資源使用情況的審計。
④作廢的用戶:被系統拒絕的用戶。
資源的分類
系統內需要保護的資源包括磁盤與磁帶卷標、數據庫中的數據、應用資源、遠程終端、信息管理系統的事務處理及其應用等。
對需要保護的資源定義一個訪問控制包
內容包括資源名及擁有者的標識符、缺省訪問權、用戶和用戶組的特權明細表、允許資源擁有者對其添加新的可用數據的操作、審計數據等。
訪問控制規則集
訪問控制規則集是根據第三步的訪問控制包得到的,它規定了若干條件和在這些條件下可準許訪問的一個資源。規則使得用戶與資源配對,并指定該用戶可在該文件上執行哪些操作,如只讀、不許執行或不許訪問。
“主體對客體的訪問權限能否轉讓給其他主體”這一問題則比較復雜,不能簡單地用“能”和“不能”來回答。大家試想一下,如果回答“不能”,表面上看很安全,但按照這一控制策略做出系統后,我們就不可能實現任何信息的共享了。
2.自主訪問控制
一種策略是對某個客體具有所有權的主體能夠自主地將對該客體的一種訪問權或多種訪問權授予其他主體,并可在隨后的任何時刻將這些權限收回,這一策略稱為自主訪問控制。這種策略因靈活性高,在實際系統中被大量采用。
Linux、UNIX和Windows等系統都提供了自主訪問控制功能。
在實現自主訪問控制策略的系統中,信息在移動過程中其訪問權限關系會被改變。如用戶A可將其對目標O的訪問權限傳遞給用戶B,從而使本身不具備對O訪問權限的B可訪問O。因此,這種模型提供的安全防護不能給系統提供充分的數據保護。
自主訪問控制模型(DAC Model)是根據自主訪問控制策略建立的一種模型,允許合法用戶以用戶或用戶組的身份來訪問系統控制策略許可的客體,同時阻止非授權用戶訪問客體,某些用戶還可以自主地把自己所擁有的客體的訪問權限授予其它用戶。
自主訪問控制模型(DAC Model)是根據自主訪問控制策略建立的一種模型,允許合法用戶以用戶或用戶組的身份來訪問系統控制策略許可的客體,同時阻止非授權用戶訪問客體,某些用戶還可以自主地把自己所擁有的客體的訪問權限授予其它用戶。
UNIX、LINUX、Windows NT等操作系統都提供自主訪問控制的功能。
在自主訪問控制系統中,特權用戶為普通用戶分配的訪問權限信息主要以訪問控制表ACL(Access Control Lists)、訪問控制能力表ACCL(Access Control Capability Lists)訪問控制矩陣、ACM(Access Control Matrix)三種形式來存儲。
ACL是以客體為中心建立訪問權限表,其優點在于實現簡單,系統為每個客體確定一個授權主體的列表,大多數主機都是用ACL作為訪問控制的實現機制。
圖6-2以ACL示例,(Own,R,W)表示讀、寫、管理操作。之所以將管理操作從讀/寫中分離出來,因為管理員會對控制規則本身或文件屬性等作修改,即修改ACL。
例如,對于客體Object1來講,Alice對它的訪問權限集合為(Own,R,W),Bob只有讀取權限(R),John擁有讀/寫操作的權限(R,W)。
圖6-3以ACCL示例,ACCL以主體為中心建立的訪問權限表?!澳芰Α边@個概念可以解釋為請求訪問的發起者所擁有的一個授權標簽,授權標簽表明持有者可以按照某種訪問方式訪問特定的客體。也就是說,如果賦予某個主體一種能力,那么這個主體就具有與該能力對應的權限。
在此示例中,Alice被賦予一定的訪問控制能力,其具有的權限包括:對Object1擁有的訪問權限集合為(Own,R,W),對Object2擁有只讀權限集(R),對Object3擁有讀和寫的權限(R,W)。
ACM是通過矩陣形式表示主體用戶和客體資源之間的授權關系的方法。表6-1為ACM示例,采用二維表的形式來存儲訪問控制策略,每一行為一個主體的訪問能力描述,每一列為一個客體的訪問能力描述,整個矩陣可以清晰地體現出訪問控制策略。
與ACL和ACCL一樣,ACM的內容同樣需要特權用戶或特權用戶組來進行管理。另外,如果主體和客體很多,那么ACM將會成幾何級增長,這樣對于增長了的矩陣而言,會有大量的冗余空間,如主體John和客體Object2之間沒有訪問關系,但也存在授權關系項。
DAC對用戶提供了靈活的數據訪問方式,授權主體(特權用戶、特權用戶組的成員以及對客體擁有Own權限的主體)均可以完成賦予和回收其他主體對客體資源的訪問權限,使得DAC廣泛應用于商業和工業環境中。
但由于DAC允許用戶任意傳遞權限,沒有訪問文件file1權限的用戶A可能從有訪問權限的用戶B那里得到訪問權限,因此,DAC模型提供的安全防護還是相對比較低的,不能為系統提供充分的數據保護。
3.強制訪問控制
另一種策略是根據主體被信任的程度和客體所含信息的機密性和敏感程度來決定主體對客體的訪問權。
用戶和客體都被賦予一定的安全級別,用戶不能改變自身和客體的安全級別,只有管理員才能確定用戶的安全級別且當主體和客體的安全級別滿足一定的規則時,才允許訪問。這一策略稱為強制訪問控制。
在強制訪問控制模型中,一個主體對某客體的訪問權只能有條件地轉讓給其他主體,而這些條件是非常嚴格的。例如,Bell-LaPadula模型規定,安全級別高的用戶和進程不能向比他們安全級別低的用戶和進程寫入數據。
Bell-LaPadula模型的訪問控制原則可簡單地表示為“無上讀、無下寫”,該模型是第一個將安全策略形式化的數學模型,是一個狀態機模型,即用狀態轉換規則來描述系統的變化過程。Lattice模型和Biba模型也屬于強制訪問控制模型。
強制訪問控制一般通過安全標簽來實現單向信息流通。
強制訪問控制MAC是一種多級訪問控制策略,系統事先給訪問主體和受控客體分配不同的安全級別屬性,在實施訪問控制時,系統先對訪問主體和受控客體的安全級別屬性進行比較,再決定訪問主體能否訪問該受控客體。
為了對MAC模型進行形式化描述,首先需要將訪問控制系統中的實體對象分為主體集S和客體集O,然后定義安全類SC(x)= ,其中x為特定的主體或客體,L為有層次的安全級別Level,C為無層次的安全范疇Category。
在安全類SC的兩個基本屬性L和C中,安全范疇C用來劃分實體對象的歸屬,而同屬于一個安全范疇的不同實體對象由于具有不同層次的安全級別L,因而構成了一定的偏序關系。
例如,TS(Top Secret)表示絕密級,S(Secret)表示秘密級,當主體s的安全類別為TS,而客體o的安全類別為S時,s與o的偏序關系可以表述為SC(s)≥SC(o)。依靠不同實體安全級別執念存在的偏序關系,主體對客體的訪問可以分為以下四種形式。
①向下讀(RD,Read Down):主體安全級別高于客體信息資源的安全級別時,即SC(s)≥SC(o),允許讀操作。
②向上讀(RU,Read Up):主體安全級別低于客體信息資源的安全級別時,即SC(s)≤SC(o),允許讀操作。
③向下寫(WD,Write Down):SC(s)≥SC(o)時,允許寫操作。
④向上寫(WU,Write Up):SC(s)≤SC(o)時,允許寫操作。
由于MAC通過分級的安全標簽實現了信息的單向流動,因此它一直被軍方采用,其中最著名的是Bell-LaPadula模型和Biba模型。
Bell-LaPadula模型具有只允許向下讀、向上寫的特點,可以有效防止機密信息向下級泄露,保護機密性;Biba模型則具有只允許向上讀、向下寫的特點,可以有效地保護數據的完整性。
4.基于角色的訪問控制
將訪問權限分配給一定的角色,用戶根據自己的角色獲得相應的訪問許可權,這便是基于角色的訪問控制策略。角色是指一個可以完成一定職能的命名組。角色與組是有區別的,組是一組用戶的集合,而角色是一組用戶集合外加一組操作權限集合。
Group的概念,一般認為Group是具有某些相同特質的用戶集合。在UNIX操作系統中Group可以被看成是擁有相同訪問權限的用戶集合,定義用戶組時會為該組賦予相應的訪問權限。如果一個用戶加入了該組,則該用戶即具有了該用戶組的訪問權限,可以看出組內用戶繼承了組的權限。
如圖6-4所示,角色Role的概念可以這樣理解一個角色是一個與特定工作活動相關聯的行為與責任的集合。
Role不是用戶的集合,也就與組Group不同。當將一個角色與一個組綁定,則這個組就擁有了該角色擁有的特定工作的行為能力和責任。組Group和用戶User都可以看成是角色分配的單位和載體。而一個角色Role可以看成具有某種能力或某些屬性的主體的一個抽象。
Role的目的是為了隔離用戶(Subject,動作客體)與Privilege(權限,指對客體)的一個訪問操作,即操作(Operation)+客體對象(Object))。Role作為一個用戶與權限的代理層,所有的授權應該給予Role而不是直接給User或Group。RBAC模型的基本思想是將訪問權限分配給一定的角色,用戶通過飾演不同的角色獲得角色所擁有的訪問許可權。
在基于角色的訪問控制模型中,只有系統管理員才能定義和分配角色,用戶不能自主地將對客體的訪問權轉讓給別的用戶。比較而言,自主訪問控制配置的力度小、配置的工作量大、效率低,強制訪問控制配置的力度大、缺乏靈活性,而基于角色的訪問控制策略是與現代的商業環境相結合的產物,具有靈活、方便和安全的特點,是實施面向企業安全策略的一種有效的訪問控制方式,目前常用于大型數據庫系統的權限管理。
一個基于角色的訪問控制實例
在銀行環境中,用戶角色可以定義為出納員、分行管理者、顧客、系統管理者和審計員,相應的訪問控制策略可如下規定:
①允許一個出納員修改顧客的帳號記錄(包括存款和取款、轉賬等),并允許查詢所有賬號的注冊項。
②允許一個分行管理者修改顧客的賬號記錄(包括存款和取款,但不包括規定的資金數目的范圍)并允許查詢所有賬號的注冊項,也允許創建和終止賬號。
③允許一個顧客只詢問他自己的賬號的注冊項。
④允許系統的管理者詢問系統的注冊項和開關系統,但不允許讀或修改用戶的賬號信息。
⑤允許一個審計員讀系統中的任何數據,但不允許修改任何事情。該策略陳述易于被非技術的組織策略者理解,同時也易于映射到訪問控制矩陣或基于組的策略陳述。另外,該策略還同時具有基于身份策略的特征和基于規則策略的特征。
在基于角色的訪問控制模型中,只有系統管理員才能定義和分配角色,用戶不能自主地將對客體的訪問權轉讓給別的用戶。比較而言,自主訪問控制配置的力度小、配置的工作量大、效率低,強制訪問控制配置的力度大、缺乏靈活性,而基于角色的訪問控制策略是與現代的商業環境相結合的產物,具有靈活、方便和安全的特點,是實施面向企業安全策略的一種有效的訪問控制方式,目前常用于大型數據庫系統的權限管理。
一個基于角色的訪問控制實例
在銀行環境中,用戶角色可以定義為出納員、分行管理者、顧客、系統管理者和審計員,相應的訪問控制策略可如下規定:
①允許一個出納員修改顧客的帳號記錄(包括存款和取款、轉賬等),并允許查詢所有賬號的注冊項。
②允許一個分行管理者修改顧客的賬號記錄(包括存款和取款,但不包括規定的資金數目的范圍)并允許查詢所有賬號的注冊項,也允許創建和終止賬號。
③允許一個顧客只詢問他自己的賬號的注冊項。
④允許系統的管理者詢問系統的注冊項和開關系統,但不允許讀或修改用戶的賬號信息。
⑤允許一個審計員讀系統中的任何數據,但不允許修改任何事情。該策略陳述易于被非技術的組織策略者理解,同時也易于映射到訪問控制矩陣或基于組的策略陳述。另外,該策略還同時具有基于身份策略的特征和基于規則策略的特征。
基于角色的訪問控制具有如下優勢:
①便于授權管理。例如,系統管理員需要修改系統設置等內容時,必須有幾個不同角色的用戶到場方能操作,保證了安全性。
②便于根據工作需要分級。例如,企業財務部門與非財務部門的員工對企業財務的訪問權就可由財務人員這個角色來區分。
③便于賦予最小特權。例如,即使用戶被賦予高級身份時也未必一定要使用,以便減少損失,只有必要時方能擁有特權。
④便于任務分擔,不同的角色完成不同的任務。在基于角色的訪問控制中,一個個人用戶可能是不只一個組或角色的成員,有時又可能有所限制。
⑤便于文件分級管理。文件本身也可分為不同的角色,如信件、賬單等,由不同角色的用戶擁有。
在各種訪問控制系統中,訪問控制策略的制定實施都是圍繞主體、客體和操作權限三者之間的關系展開。有三個基本原則是制定訪問控制策略時必須遵守的。
①最小特權原則是指主體執行操作時,按照主體所需權利的最小化原則分配給主體權力。最小特權原則的優點是最大限度地限制了主體實施授權行為,可以避免來自突發事件和錯誤操作帶來的危險。
②最小泄漏原則是指主體執行任務時,按照主體所需要知道信息的最小化原則分配給主體訪問權限。
③多級安全策略是指主體和客體間的數據流方向必須受到安全等級的約束。多級安全策略的優點是避免敏感信息的擴散。對于具有安全級別的信息資源,只有安全級別比它高的主體才能夠對其訪問。
我是木子雨辰,一位信息安全領域從業者,@木子雨辰將一直帶給大家信息安全知識,每天兩篇安全知識、由淺至深、采用體系化結構逐步分享,大家有什么建議和問題,可以及留言,多謝大家點擊關注、轉發、評論,謝謝大家。
大家如果有需要了解安全知識內容需求的可以留言,溝通,愿與大家攜手前行。
總結
以上是生活随笔為你收集整理的未声明spire。它可能因保护级别而不可访问_信息系统安全:访问控制技术概述...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: React 如何实现骨架屏的展示-Sus
- 下一篇: 鸿蒙后的时期有什么,鸿蒙系统什么时候上市