首页 理论教育 计算机网络访问控制模型

计算机网络访问控制模型

时间:2023-11-05 理论教育 版权反馈
【摘要】:自主访问控制也称任意访问控制,一个主体的访问权限具有传递性。图10-2 带有组与通配符的访问控制表示例2.强制访问控制模型自主访问控制最大的特点为自主,即资源拥有者对资源访问策略具有决策权,因此是一种限制较弱的访问控制策略。在强制访问控制模型中,将安全级别进行排序。某些客体可以通过自主访问控制保护,重要信息必须通过强制访问控制保护。

计算机网络访问控制模型

1.自主访问控制模型

自主访问控制模型(Discretionary Access Control Model,DAC Model)是根据控制策略建立的一种模型,基于对主体或主体所属的主体组的识别限制对客体的访问,也就是由拥有资源的用户自己决定其他主体能够在哪种程度上访问哪些资源。

自主访问控制也称任意访问控制,一个主体的访问权限具有传递性。如大多数交互系统工作流程是:用户首先登录,然后启动某个进程为该用户做某项工作,该进程就继承该用户的属性,包括访问权限。自主访问控制方式的缺点是权限传递可能会给系统带来安全隐患,某主体通过继承其他主体权限而得到其本身不应具有的访问权限,就可能破坏系统安全性。

自主访问控制在具体实现时,为实现完整的自主访问系统,DAC模型一般采用访问控制表(Access Control List,ACL)来表达访问控制的信息。它在一个客体上附加一个主体明细表,表示各主体对该客体的访问权限。表中每一项都包括主体身份和主体对这个客体的访问权限。如对系统中一个需要保护的客体Oj,其附加的访问控制表如图10-1所示。

978-7-111-43162-6-Chapter10-1.jpg

图10-1 访问控制表

对于客体Oj,主体S0只有读(r)权限;主体是S1只有写(w)权限;主体S2只有执行(e)权限;主体Sx具有读(r)、写(w)、执行(e)权限。

在一个大系统中,可能会有很多主体与客体,导致访问控制表很长,占用很多存储空间,使得访问时效率降低。使用组或通配符可有效缩短表的长度。实际的多用户系统中,用户可根据部门结构或工作性质分为有限的几类,一般情况同一类用户使用资源基本上相同,因此可把此类用户作为一个组,分配组名,简称“GN”,访问时可按照组名判断。通配符“*”可代替任何组名或主体标识符。访问控制表中主体标识为:主体标识=ID•GN其中,ID是主体标识符,GN是主体所在组的组名。图10-2是带有组与通配符的访问控制表。

其中,第2列表示,属于TEACH组的所有主体都对客体oj具有读、写权限;但是只有TEACH组中的主体Cai额外具有执行权限(第1列);无论是哪一组中的Li都可读客体oj(第3列)。最后表项(第4列)说明所有其他主体,无论属于哪组,对oj都不具备任何访问权限。

978-7-111-43162-6-Chapter10-2.jpg

图10-2 带有组与通配符的访问控制表示例

2.强制访问控制模型

自主访问控制最大的特点为自主,即资源拥有者对资源访问策略具有决策权,因此是一种限制较弱的访问控制策略。这种方式给用户带来灵活性的同时,也带来安全隐患。强制访问控制模型(Mandatory Access Control Model,MAC Model)是一种多级访问控制策略,其主要特点是系统对主体和客体实行强制访问控制。系统事先给所有主体和客体指定不同的安全级别,如绝密级、机密级、秘密级和无密级。实施访问控制时,系统先对主体和客体的安全级别进行比较,再决定访问主体能否访问该客体。因此,不同级别主体对不同级别客体的访问是在强制安全策略下实现的。

在强制访问控制模型中,将安全级别进行排序。如按照从高到低排列,规定高级别可单向访问低级别,也可以规定低级别可单向访问高级别。这种访问可以为读,也可以为写或修改等。主体对客体访问主要有4种方式。

●向下读(Read Down,RD):主体安全级别高于客体信息资源的安全级别时允许读操作。

●向上读(Read Up,RU):主体安全级别低于客体信息资源的安全级别时允许读操作。

●向下写(Write Down,WD):主体安全级别高于客体信息资源的安全级别时允许执行的动作或写操作。

●向上写(Write Up,WU):主体安全级别低于客体信息资源的安全级别时允许执行的动作或写操作。

由于MAC通过将安全级别排序实现信息的单向流通,因此常在重要场合使用。

保障信息完整性策略。为了保障信息的完整性,低级别的主体可读高级别客体的信息(不保密),但低级别的主体不能写高级别客体(保障信息完整),采用的是上读/下写策略,即属于某一个安全级的主体可以读本级和本级以上的客体,可以写本级和本级以下的客体。如机密级主体可读绝密级、机密级的客体,可写机密级、秘密级、无密级的客体。这样,低密级用户可看到高密级信息,信息内容可无限扩散,信息保密性无法保障;但低密级用户永远无法修改高密级信息,从而保障信息完整性。Biba模型是一种保障信息完整性的策略方法,不允许向下读、向上写,可有效地保护信息的完整性。

保障信息机密性策略。与保障完整性策略相反,为了保障信息的保密性,低级别的主体不能读高级别信息,但低级别的主体可写高级别的客体(完整性可能破坏),因此采用的是下读/上写策略,即属于某一个安全级的主体可以写本级和本级以上的客体,可以读本级和本级以下的客体。如机密级主体可写绝密级、机密级的客体,可以读机密级、秘密级、无密级的客体。这样,低密级的用户可修改高密级信息,信息完整性得不到保障;但低密级的用户永远无法看到高密级的信息,从而保障信息的保密性。Bell LaPadula模型是一种保障信息机密性的策略方法,只允许向下读、向上写,可有效防止机密信息向下级泄露。(www.xing528.com)

综上所述,由于自主访问控制机制较弱,而强制访问控制机制又太强,会给用户带来不便。因此,实际应用中,常把自主访问控制和强制访问控制结合在一起使用。自主访问控制作为基础的、常用的控制手段,强制访问控制作为增强的、更加严格的控制手段。某些客体可以通过自主访问控制保护,重要信息必须通过强制访问控制保护。

3.基于角色的访问控制模型

在上述两种访问控制模型中,用户权限可变更,但必须在系统管理员授权下进行。在具体实现时往往不能满足实际需求,其主要问题在于:

●同一用户在不同的场合需以不同权限访问系统,而变更权限必须经系统管理员授权变动,很不方便。当用户数量大增时,系统管理变得复杂、工作量急剧上升,易出错。

●不容易实现系统的层次化分权管理,尤其是当同一用户在不同场合处在不同权限层次时,系统管理较难实现。除非同一用户以多个用户名注册。如企业组织结构或系统安全需求处于变化过程中,就需进行大量烦琐的授权变动,管理非常繁重,易发生错误造成安全漏洞。

基于角色的访问控制模式(Role Based Access Control Model,RBAC Model)就是为克服上述问题而提出的。该模式中,用户非自始至终以同样注册身份和权限访问系统,而是以一定角色访问。不同角色被赋予不同的访问权限,系统的访问控制机制只见角色,不见用户。

基于角色的访问控制,其实质就是通过各种角色的不同搭配授权来尽可能实现主体的最小权限,即主体在能完成所必需的访问工作基础上的最小权限。角色定义为与一个特定活动相关联的一组动作与责任。通过定义角色权限,为系统中的主体分配角色实现访问控制,被分派一定权限,以特定角色访问系统资源。用户在访问系统前,经角色认证而充当相应角色,用户获得特定角色后,系统依然可按照自主访问控制或强制访问控制机制控制角色的访问能力。系统中的主体担任角色,完成角色规定的责任,具有角色拥有的权限。一个主体可同时担任多个角色,其权限为多个角色权限总和。该模型如图10-3。

978-7-111-43162-6-Chapter10-3.jpg

图10-3 基于角色的访问控制

该访问控制方法具以下特点:

●提供3种授权管理的控制途径。改变客体的访问权限,即修改客体可以由哪些角色访问以及具体的访问方式;改变角色的访问权限;改变主体所担任的角色。

●为便于管理对系统中所有角色的关系结构进行层次化。角色的定义是从现实出发,因而可以用面向对象的方法来实现,运用类和继承等概念表示角色之间的层次关系。

●为提高安全性提供最小权利。由于对主体的授权是通过角色定义,因此调整角色的权限粒度可以做到更有针对性,不容易出现多余权限。

●具有责任分离的能力。

4.其他访问控制模型

(1)基于任务的访问控制模型

随着数据库、网络与分布式计算的发展,组织任务进一步自动化,促使安全问题方面的注意力从独立的计算机系统中静态主体和客体保护,转移到随任务的执行而进行动态授权的保护。由于上述几个访问控制模型都是从系统角度出发去保护资源,其控制环境为静态,在进行权限的控制时既没有考虑执行的上下文环境,又不能记录主体对客体权限的使用,使用权限也无时间、次数的限制。因此出现了基于任务的访问控制模型(Task Based Access Control Model,TBAC Model)。TBAC模型从应用和企业层角度解决安全问题,以面向任务的观点,从任务(活动)角度建立安全模型和实现安全机制,在任务处理过程中提供动态实时的安全管理。该方法的访问控制策略及其内部组件关系通常由系统管理员直接配置,实现最小特权原则和最小泄漏原则,在执行任务时只给用户分配所需的权限,未执行任务或任务终止后用户不再拥有所分配的权限,且在执行任务过程中,当某一权限不再使用时,将自动收回该权限。

(2)基于对象的访问控制模型

DAC或MAC模型主要任务都是对系统中的主体和客体进行一维权限管理,当用户数量多、处理的信息数据量巨大时,用户权限管理、维护任务十分繁重,将降低系统安全性和可靠性。采用RBAC模型,安全管理员除要维护用户和角色的关联关系外,还需将庞大的信息资源访问权限赋予有限个角色。当信息资源的种类增加或减少时,必须更新所有角色的访问权限设置;如客体属性发生变化,就必须增加新的角色,并且更新原来所有角色的访问权限设置以及访问主体的角色分配设置,同时需要将客体不同属性的数据分配给不同的主体处理,这样的访问控制需求变化往往难以预知,造成访问控制管理困难和工作量巨大。由此,引入基于对象的访问控制模型(Object Based Access Control Model,OBAC Model)。

OBAC模型从受控对象角度出发,将主体的访问权限直接与受控对象相关联,一方面定义对象的访问控制表,增、删、修改访问控制项易于操作。另一方面,当受控对象的属性发生改变,或受控对象发生继承和派生行为时,无须更新访问主体的权限,只需修改受控对象的相应访问控制项即可,从而减少主体的权限管理,减轻因信息资源的派生、演化和重组等带来的分配、设定角色权限等的工作量。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈