QQ泡沫乐园 · 免费提供游戏辅助,破解软件,活动资讯,喜欢记得收藏哦!
综合软件_线报活动_游戏辅助_最新电影_最优质的的辅助分享平台

让你眼前一亮的计算机网络安全防范措施,你了解吗?

网络 2023-03-22 11:04

ID:Computer-network

在物联网系统中,访问控制(Access Control)是对用户合法使用资源的认证和控制,简单说就是依据相关授权,控制对特定资源的访问,从而避免一些非法用户的非法访问或则合法用户的不正当使用,以确保整个系统资源才能被合理正当地借助。由于物联网应用系统是多用户、多任务的工作环境,这为非法使用系统资源打开了方便之门,因此,迫切要求我们对计算机及其网路系统采取有效的安全防范举措,以避免非法用户步入系统以及合法用户对系统资源的非法使用。这就须要采用访问控制系统。

访问控制包含3方面的含意。

① 合法性:阻止没有得到即将授权的用户违规访问以及非法用户的违规访问。

② 完整性:在包含搜集数据、传输信息、储存信息等一系列的步骤中,保证数据信息的完好无损,不可以随便增删与改动。

③ 时效性:在一定时效内,保证系统资源不能被非法用户篡改使用,保障系统在时效内的完整。

通过访问控制,系统可以防治和制约未经授权的非法用户访问和操作系统资源。

1、的基本概念

(1)的功能

访问控制应具备身分认证、授权、文件保护和审计等主要功能。

1)认证

认证就是否认用户的身分。认证必须和标识符共同起作用。认证过程首先须要用户输入帐户名、用户标志或则注册标志以表明身分。账户名应当是秘密的,任何其他用户不得拥有。但为了避免帐户名或用户标志泄漏而出现非法用户访问,还须要进一步用认证技术否认用户的合法身分。口令是一种简单易行的认证手段,但是由于容易被推测而比较脆弱,所以易被非法用户借助。生物技术是一种严格且有前途的认证方式,如指纹辨识、视网膜辨识、虹膜识别等,但因技术复杂,目前还没有被广泛采用。

2)授权

系统正确认证用户后,根据不同的用户标志分配给其不同的使用资源,这项任务称为授权。授权的实现是靠访问控制完成的。访问控制是一项特殊的任务,它将标志符ID作为关键字来控制用户访问的程序和数据。访问控制主要用在关键节点、主机和服务器,一般节点使用较少。但假如要在通常节点上降低访问控制功能,则系统应当安装相应的授权软件。在实际应用中,通常须要从用户类型、应用资源以及访问规则3个方面来明晰用户的访问权限。

① 用户类型。对于一个早已被系统辨识和认证了的用户,系统还要对他的访问操作施行一定的限制。对于一个通用计算机系统来讲,用户范围广,层次与权限也不同。用户类型通常有系统管理员、一般用户、审计用户和非法用户。系统管理员权限最高,可以对系统中的任何资源进行访问,并具有所有类型的访问操作权力。一般用户的访问操作要遭到一定的限制,系统管理员会依照须要给这类用户分配不同的访问操作权力。审计用户负责对整个系统的安全控制与资源使用情况进行审计。非法用户则是被取消访问权力或则被拒绝访问系统的用户。

② 应用资源。应用资源是指系统中的每位用户可共同分享的系统资源。系统内须要保护的是系统资源,因此须要对保护的资源定义一个访问控制包(Access Control Packet,ACP),访问控制包会给每一个资源或资源组描绘出一个访问控制列表(Access Control List,ACL),列表中会描述那个用户可以使用那个资源以及怎样使用。

③ 访问规则。访问规则定义了若干条件,在这种条件下可允许访问一个资源。一般来讲,规则可使用户与资源配对,然后指定该用户可以在该资源上执行什么操作,如只读、不容许执行或不准许访问等。这些规则是由负责施行安全新政的系统管理人员按照最小特权原则来确定的,即在授予用户访问某种资源的权限时,只给与该资源的最小权限。例如,用户须要读权限时,不应当授予读写权限。

3)文件保护

文件保护是指对文件提供的附加保护,其可使非授权用户不可读取文件。一般采用对文件加密的附加保护。

4)审计

审计是记录用户系统所进行的所有活动的过程,即记录用户违背安全规定使用系统的时间、日期以及用户活动。因为可能搜集的数据量十分大,所以,良好的审计系统应具有进行数据筛选并报告审计记录的工具,此外,还应允许工具对审计记录做进一步的剖析和处理。

(2)的关键要素

访问控制是指主体根据个别控制策略对客体本身或其他资源进行不同权限的访问。访问控制包括3个要素:主体、客体和控制策略。

1)主体

主体是可以在信息客体间流动的一种实体。主体一般指的是访问用户,但是作业或设备也可以成为主体。所以,对文件进行操作的用户是一种主体,用户调度并运行的某个作业也是一种主体,检测电源故障的设备还是一个主体。大多数交互式系统的工作过程是:用户首先在系统中注册,然后启动某一进程以完成某项任务,该进程承继了启动它的用户的访问权限。在这些情况下,进程也是一个主体。一般来讲,审计机制应能对主体涉及的某一客体进行的与安全有关的所有操作都做相应的记录和跟踪。

2)客体

客体本身是一种信息实体,或者是从其他主体或客体接收信息的载体。客体不受它所依存的系统的限制,其可以是记录、数据块、存储页、存储段、文件、目录、目录树、邮箱、信息、程序等,也可以是位、字节、字、域、处理器、通信线路、时钟、网络节点等。主体有时也可以被当成客体,例如,一个进程可能包含多个子进程,这些子进程就可以被觉得是一种客体。在一个系统中,作为一个处理单位的最小信息集合就称为一个文件,每一个文件都是一个客体。但是,如果文件可以分成许多小块,并且每位小块又可以单独处理,那么每位小块也都是一个客体。另外,如果文件系统被组织成了一个树形结构,那么这些文件目录也是客体。

在有些系统中,逻辑上所有的客体都作为文件处理。每种硬件设备都作为一种客体来处理,因而,每种硬件设备都具有相应的访问控制信息。如果一个主体打算访问某个设备,则该主体必须具有适当的访问权,而对设备的安全校准机制将对访问权进行校准。例如,某主体想对终端进行写操作,则须要将想写入的信息先写入相应的文件中,安全机制将按照该文件的访问信息来决定是否准许该主体对终端进行写操作。

3)控制策略

控制策略是主体对客体的操作行为集和约束条件集,也是主体对客体的控制规则集。这个规则集直接定义了主体对客体可以进行的作用行为和客体对主体的条件约束。控制策略彰显了一种授权行为,即客体对主体的权限准许,这种容许不可赶超规则集。

访问控制系统的3个要素可以使用三元组(S、O、P)来表示,其中S表示主体,O表示客体,P表示许可。当主体提出一系列正常恳求信息I1,I2,…,In时,请求信息会通过物联网系统的入口抵达控制规则集监视的监控器,由控制规则集来判定准许或拒绝恳求。在这些情况下,必须先确认主体是合法的,而不是冒充的,也就是必须对主体进行认证。主体通过认证后才会访问客体,但并不保证其有权限对客体进行操作。客体对主体的具体约束由访问控制表来控制实现,对主体的验证通常都是通过鉴定用户标志和用户密码来实现的。用户标志是一个拿来辨别用户身分的字符串,每个用户有且只能有惟一的一个用户标志,以便与其他用户有所区别。当一个用户在注册系统时,他必须提供其用户标志,然后系统才能执行一个可靠的审查来确认当前用户就是对应用户标志的那种用户。

当前访问控制实现的模型普遍采用了主体、客体、授权的定义和这3个定义之间的关系的方式来描述。访问控制模型还能对计算机系统中的储存元素进行具象抒发。访问控制要解决的一个基本问题便是主动对象(如进程)如何对被动的受保护对象(如被访问的文件等)进行访问,并且根据安全策略进行控制。主动对象称为主体,被动对象称为客体。

针对一个安全的系统,或者是即将在其上施行访问控制的系统,一个访问可以对被访问的对象形成以下作用:一是对信息的抽取;二是对信息的插入。对于被访问对象来说,可以有“只读不更改”“只读更改”“只更改不读”“既读又更改”4种访问方法。

访问控制模型可以依据具体的安全策略的配置来决定一个主体对客体的访问属于以上4种访问方法中的哪一种,并且可以按照相应的安全策略来决定是否给与主体相应的访问权限。

(3)策略的施行

u盘访问被拒绝_无法设置新的所有者 拒绝访问_无法删除 访问被拒绝

访问控制策略是物联网信息安全的核心策略之一,其任务是保证物联网信息不被非法使用和非法访问,为保证信息基础的安全性提供一个框架,提供管理和访问物联网资源的安全方式,规定各要素须要遵循的规范与应负的责任,为物联网系统安全提供可靠根据。

1)访问控制策略的基本原则

访问控制策略的拟定与施行必须围绕主体、客体和控制规则集两者之间的关系展开。具体原则如下。

① 最小特权原则。最小特权原则指主体执行操作时,按照主体所需权力的最小化原则分配给主体权力。最小特权原则的优点是最大限度地限制了主体施行授权行为,可以避免来自突发事件、错误和未授权用户主体的危险,即为了达到一定的目的,主体必须执行一定的操作,但主体只能做容许范围内的操作。

② 最小泄漏原则。最小泄漏原则指主体执行任务时,按照主体所须要晓得的信息最小化的原则分配给主体权力。

③ 多级安全原则。多级安全原则指主体和客体间的数据流向和权限控制根据安全级别进行界定,包括机密、秘密、机密、限制和无级别5级。多级安全原则的优点是可避免敏感信息扩散。对于具有安全级别的信息资源,只有安全级别比它高的主体能够够访问它。

2)访问控制策略的实现方法

访问控制的安全策略有:基于身分的安全策略和基于规则的安全策略。目前使用这两种安全策略的基础都是授权行为。

① 基于身分的安全策略。

基于身分的安全策略与鉴定行为一致,其目的是过滤对数据或资源的访问,只有能通过认证的主体才有可能正常使用客体的资源。基于身分的安全策略包括基于个人的安全策略和基于组的安全策略。

基于个人的安全策略是指以用户为中心构建的一种策略。这种策略由一些列表组成,这些列表限定了针对特定的客体,哪些用户可以实现何种策略操作行为。

基于组的安全策略是基于个人的安全策略的扩展,指一些用户被准许使用同样的访问控制规则访问同样的客体。

基于身分的安全策略有两种基本的实现方式:访问能力表和访问控制列表。访问能力表提供了针对主体的访问控制结构,访问控制列表提供了针对客体的访问控制结构。

② 基于规则的安全策略

基于规则的安全策略中的授权一般依赖于敏感性。在一个安全系统中,对数据或资源应当标明安全标记。代表用户进行活动的进程可以得到与其原发者相应的安全标记。

基于规则的安全策略在实现时,由系统通过比较用户的安全级别和客体资源的安全级别来判定是否容许用户进行访问。

2、的分类

访问控制可以限制用户对应用中关键资源的访问,防止非法用户步入系统及合法用户对系统资源的非法使用。在传统的访问控制中,一般采用自主访问控制和强制访问控制。随着分布式应用环境的出现,又发展出了基于对象的访问控制、基于任务的访问控制、基于角色的访问控制、基于属性的访问控制等多种访问控制技术。

1)自主访问控制

自主访问控制(Discreytionary Access Control,DAC)是指用户有权对自身所创建的访问对象(如文件、数据表等)进行访问,并可将对那些对象的访问权授予其他用户和从授予权限的用户处收回其访问权限。

2)强制访问控制

强制访问控制(Mandatory Access Control,MAC)是指由系统(通过专门设置的系统安全员)对用户所创建的对象进行统一的强制性控制,按照规定的规则决定什么用户可以对什么对象进行什么样的操作系统类型的访问,即使是创建者用户,其在创建一个对象后,也可能无权访问该对象。

3)基于对象的访问控制

DAC或MAC模型的主要任务都是对系统中的访问主体和受控对象进行一维的权限管理。当用户数目多、处理的信息数据量巨大时,用户权限的管理任务将显得非常艰巨且无法维护,这都会增加系统的安全性和可靠性。

对于海量的数据和差别较大的数据类型,需要用专门的系统和专门的人员加以处理,如果采用基于角色的访问控制模型,安全管理员不仅须要维护用户和角色的关联关系外,还须要将庞大的信息资源访问权限赋于有限个角色。

当信息资源的种类降低或降低时,安全管理员必须更新所有角色的访问权限设置,如果受控对象的属性发生变化,以及须要将受控对象不同属性的数据分配给不同的访问主体进行处理时,则安全管理员将不得不降低新的角色,还必须更新原先所有角色的访问权限设置以及访问主体的角色分配设置。

这样的访问控制需求变化常常是不可预知的,这会导致访问控制管理难度降低工作量变大。因此,在这些情况下,有必要引入基于受控对象的访问控制模型。

控制策略和控制规则是基于对象的访问控制(Object-based Access Control,OBAC)系统的核心所在。在基于受控对象的访问控制模型中,会将访问控制列表与受控对象或受控对象的属性相关联,并会将访问控制选项设计成为用户、组或角色及其对应权限的集合;同时容许对策略和规则进行重用、继承和派生操作。这样,不仅可以对受控对象本身进行访问控制,也可以对受控对象的属性进行访问控制,而且派生对象可以承继父对象的访问控制设置,这对于信息量巨大、信息内容更新变化频繁的信息管理系统十分有益,可以减少由信息资源的派生、演化和重组等带来的分配、设定角色权限等工作量。

OBAC系统从信息系统的数据差别变化和用户需求出发,有效地解决了信息数据量大、数据种类繁杂、数据更新变化频繁的小型信息管理系统的安全管理问题。同时,从受控对象的角度出发,将访问主体的访问权限直接与受控对象相关联。一方面,定义对象的访问控制列表,使增、删、修改访问控制项便于操作;另一方面,当受控对象的属性发生改变,或者受控对象发生承继和派生行为时,无须更新访问主体的权限,只须更改受控对象的相应访问控制项即可,从而降低了访问主体的权限管理,降低了授权数据管理的复杂性。

4)基于任务的访问控制

基于任务的访问控制(Task-based Access Control,TBAC)是从应用和企业层面来解决安全问题的,从任务(活动)的角度来构建安全模型和实现安全机制,在任务处理的过程中提供动态、实时的安全管理。

在TBAC模型中,对象的访问权限控制并不是静止不变的,而是会随着执行任务的上下文环境发生变化。TBAC首要考虑的是在工作流的环境中对信息的保护问题:在工作流环境中,数据的处理与上一次的处理相关联,相应的访问控制也是这么,因此TBAC是一种上下文相关的访问控制模型。其次,TBAC除了能对不同的工作流推行不同的访问控制策略,还能对同一工作流的不同任务实例推行不同的访问控制策略。从这个意义上说,TBAC是基于任务的,这也表明,TBAC是一种基于实例(instance-based)的访问控制模型。

TBAC模型由工作流、授权结构体、受托人集、许可集这4部份组成。

任务(task)是工作流中的一个逻辑单元,是一个可分辨的动作,与多个用户相关,也可能包括几个子任务。授权结构体(authorization unit)是任务在计算机中进行控制的一个实例。任务中的子任务对应于授权结构体中的授权步。

授权结构体是由一个或多个授权步(authorization step)组成的结构体,它们在逻辑上是联系在一起的。授权结构体分为通常授权结构体和原子授权结构体。一般授权结构体内的授权步依次执行,原子授权结构体内的每位授权步紧密联系,其中任何一个授权步失败就会造成整个结构体的失败。

授权步表示一个原始授权处理步,是指在一个工作流中对处理对象的一次处理过程。授权步是访问控制所能控制的最小单元,由受托人集(trustee-set)和多个许可集(permissions-set)组成。

受托人集是可被授予执行授权步的用户的集合,许可集则是受托集的成员被授予授权步时拥有的访问许可。在授权步初始化之后,一个来自受托人集中的成员将被授予授权步,我们称这个受托人为授权步的执行委托者,该受托者执行授权步过程中所须许可的集合称为执行者许可集。授权步之间或授权结构体之间的互相关系称为依赖(dependency),依赖反映了基于任务的访问控制的原则。授权步的状态变化通常由自身管理,即根据执行的条件手动演变状态,但有时也可以由管理员进行调配。

一个工作流的业务流程由多个任务构成,而一个任务对应于一个授权结构体,每个授权结构体由特定的授权步组成。授权结构体之间以及授权步之间通过依赖关系联系在一起。在TBAC中,一个授权步的处理可以决定后续授权步对处理对象的操作许可,这些许可的集合称为激活许可集。执行者许可集和激活许可集一起称为授权步的保护态。

TBAC模型通常用五元组(S,O,P,L,AS)表示,其中S表示主体,O表示客体,P表示许可,L表示生命期(lifecycle),AS表示授权步。由于任务都是有时效性的,所以在基于任务的访问控制中,用户对于授予他的权限的使用也是有时效性的。因此,若P是授权步AS所激活的权限,那么L就是授权步AS的存活年限。在授权步AS被激活之前,它的保护态是无效的,其中包含的许可不可使用。当授权步AS被触发时,它的执行委托者开始拥有执行者许可集中的权限,同时它的生命期开始倒记时。在其生命期间,五元组(S,O,P,L,AS)有效;生命期中止时,五元组(S,O,P,L,AS)无效,执行委托者所拥有的权限被回收。

TBAC的访问新政及其内部组件关系通常由系统管理员直接配置。通过授权步的动态权限管理。TBAC支持最小特权原则和最小泄漏原则,在执行任务时只给用户分配所需的权限,未执行任务或任务中止后用户不再拥有所分配的权限;而且在执行任务过程中,当某一权限不再被使用时,授权步会手动将该权限回收;另外,对于敏感的任务须要不同的用户执行,可以通过授权步之间的分权依赖加以实现。

TBAC从工作流中的任务角度建模,可以根据任务和任务状态的不同,对权限进行动态管理。因此,TBAC特别适宜分布式估算和多点访问控制的信息处理控制以及在工作流、分布式处理和事务管理系统中的决策拟定。

5)基于角色的访问控制

基于角色的访问控制(Role-based Access Control,RBAC)的基本思想是将访问许可权分配给一定的角色,用户通过出演不同的角色来获得角色所拥有的访问许可权。这是因为在好多实际应用中,用户并不是可以访问的客体信息资源的所有者(这些信息属于企业或公司)。因此,访问控制应当基于职工的职务而不是基于职工在那个组或谁是信息的所有者,即访问控制是由各个用户在部门中所兼任的角色来确定的。例如,一个中学可以有老师、学生和其他管理人员等角色。

RBAC从控制主体的角度出发,根据管理中相对稳定的职权和责任来界定角色,将访问权限与角色相联系,这点与传统的MAC和DAC将权限直接授予用户的方法不同。RBAC通过给用户分配合适的角色,让用户与访问权限相联系。角色成为了访问控制中访问主体和受控对象之间的一座桥梁。

角色可以被看作一组操作的集合,不同的角色具有不同的操作集,这些操作集是由系统管理员分配给角色的。在下边的实例中,我们假定Tch1,Tch2,Tch3,…,Tchi是老师,Stud1,Stud2,Stud3,…,Studj是中学生,Mng1,Mng2,Mng3,…,Mngk是教务处管理人员,那么老师的权限为TchMN={查询成绩、上传所教课程的成绩};学生的权限为Stud MN={查询成绩、反映意见};教务处管理人员的权限为MngMN={查询成绩、修改成绩、打印成绩清单}。

依据角色的不同,每个主体只能执行自己所拟定的访问功能。用户在一定的部门中具有一定的角色,其所执行的操作与其所饰演的角色的职能相匹配,这正是基于角色的访问控制(RBAC)的根本特点:依据RBAC策略,系统定义了各类角色,每种角色可以完成一定的职能,不同的用户按照其职能和责任被赋于相应的角色,一旦某个用户成为某角色的成员,则该用户就可以完成该角色所具有的职能。

因为企业害怕繁琐而复杂的施行过程,并且雇员访问权要发生变化,所以许多企业常常不乐意施行基于角色的访问控制。完成基于角色的矩阵可能是一个须要企业耗费几年时间的复杂过程。有一些新方式可以减短这个过程,例如,企业可以将人力资源系统作为数据源,收集所有雇员的部门、职位以及企业的层次结构等信息,并将这种信息用于创建每位访问级别的角色,从活动目录等位置获得当前的权力,实现不同角色的雇员的数据共享。

6)基于属性的访问控制

基于属性的访问控制(Attribute-based Access Control,ABAC)主要针对面向服务的体系结构和开放式网路环境,在这些环境中,能够基于访问的上下文构建访问控制策略,处理主体和客体的异构性和变化性。RBAC已不能适应这样的环境。RBAC不能直接在主体和客体之间定义授权,而是须要将她们关联的属性作为授权决策的基础,并借助属性表达式描述访问策略。ABAC才能依据相关实体属性的变化,适时更新访问控制决策,从而提供一种更细细度的、更加灵活的访问控制方式。

属性似乎是一个变量,但是相对而言它的规则策略是稳定且不易改变的。ABAC之所以能运用于用户动态变化的访问控制中,就是由于它借助了策略的固定性所形成的作用。

3、的基本原则

访问控制机制是拿来施行对资源访问加以限制的策略的机制,这种策略把对资源的访问权限只授于了这些被授权用户。应该构建起申请、建立、发出和关掉用户授权的严格的制度,以及管理和监督用户操作责任的机制。

为了获取系统的安全,授权应当遵循访问控制的3个基本原则。

1)最小特权原则

最小特权原则是系统安全中最基本的原则之一。最小特权(Least Privilege)指的是“在完成某种操作时所赋于网路中每位主体(用户或进程)必不可少的特权”。最小特权原则是指“应限定网路中每位主体所需的最小特权,以确保可能的车祸、错误、网络部件的篡改等诱因引起的损失最小”。

最小特权原则使用户所拥有的权利不能超过它执行工作时所需的权限。最小特权原则一方面给与主体“必不可少”的特权,保证了所有的主体都能在所赋于的特权之下完成所须要完成的任务或操作;另一方面,它只给与主体“必不可少”的特权,这也限制了每位主体所能进行的操作。

2)多人负责原则

多人负责即授权分散化,在功能上界定关键的任务由多人来共同承当,以保证没有任何个人具有完成任务的全部授权或信息,如将责任做分解以确保没有一个人具有完整的秘钥。

3)职责分离原则

职责分离是保障安全的一个基本原则。职责分离是指将不同的责任分派给不同的人员以期达到相互制衡的作用,消除一个人执行两项不相容的工作的风险,如收款员、出纳员、审计员应由不同的人兼任。计算机环境下也要有职责分离,为防止安全上的漏洞,有些许可不能同时被同一用户获得。

4、BLP

BLP模型是由戴维和莱纳德于1973年提出并于1976年整合、完善的安全模型。BLP模型的基本安全策略是“下读上写”,即主体对客体向上读、向上写。主体可以读安全级别比它低或相等的客体,可以写安全级别比它高或相等的客体。“下读上写”的安全策略保证了数据库中的所有数据只能根据安全级别从低到高流动,从而保证了敏感数据不外泄。

(1)BLP安全模型

BLP安全模型是一种访问控制模型,它通过制订主体对客体的访问规则和操作权限来保证系统信息的安全性。BLP模型中基本的安全控制方式有2种。

1)强制访问控制(MAC)

MAC主要是通过“安全级”来进行的。访问控制通过引入“安全级”“组集”和“格”的概念,为每位主体规定了一系列的操作权限和范围。“安全级”通常由“普通、秘密、机密、绝密”4个不同的等级构成,用以表示主体的访问能力和客体的访问要求。“组集”就是主体能访问客体所从属的区域的集合,如“部门”“科室”“院系”等。通过“格”定义一种比较规则,只有在这些规则下,主体控制客体时才准许主体访问客体。MAC是BLP模型实现控制手段的主要技巧。

作为施行强制型安全控制的根据,主体和客体均要求被赋于一定的 “安全级”。其中,人作为安全主体,其部门集表示它可以涉猎什么范围内的信息,而一个信息的部门集则表示该信息所涉及的范围,这里有3点要求:

① 主体的安全级低于客体,当且仅当主体的密级低于客体的密级,且主体的部门集包含客体的部门集;

② 主体可以读客体,当且仅当主体的安全级低于或等于客体的安全级;

③ 主体可以写客体,当且仅当主体的安全级高于或等于客体的安全级。

BLP模型给每位用户及文件赋于一个访问级别,如最高秘密级(Top Secret)、秘密级(Secret)、机密级(Confidential)及无级别级(Unclassified)。其级别由高到低为T>S>C>U,系统按照主体和客体的敏感标记来决定访问模式。访问模式包括以下4种。

下读(read down):用户级别小于文件级别的读操作。

上写(write up):用户级别大于文件级别的写操作。

下写(write down):用户级别小于文件级别的写操作。

上读(read up):用户级别大于文件级别的读操作。

2)自主访问控制(DAC)

DAC也是BLP模型中十分重要的实现控制的方式。DAC通过客体的属主自行决定其访问范围和方法,实现对不同客体的访问控制。在BLP模型中,DAC是MAC的重要补充和构建。

主体对其拥有的客体有权决定自己和别人对该客体应具有如何的访问权限。最终的结果是,在BLP模型的控制下,主体要获取对客体的访问,必须同时通过MAC和DAC这两种安全控制设施。

依据BLP模型所拟定的原则是借助不上读或不下写来保证数据的保密性,如图1所示,既不容许低信任级别的用户读高敏感度的信息,也不容许高敏感度的信息写入低敏感度区域,禁止信息从高级别流向低级别。MAC通过这些梯度安全标签实现信息的双向流通。

图1 BLP模型

(2)BLP模型的优缺点

BLP模型的优点如下。

① BLP模型是一种严格的形式化描述。

② BLP模型控制信息只能由低向高流动,这能满足军事部门这一类对数据保密性要求非常高的机构的需求。

BLP模型的缺点如下。

① 上级对下级发文遭到限制。

② 部门之间信息的纵向流动被严禁。

③ 缺乏灵活、安全的授权机制。

5、基于角色的

基于角色的访问控制(Role-based Access Control,RBAC)是法国NIST提出的一种新的访问控制技术。该技术的基本思想是将用户界定成与其所在组织结构体系相一致的角色,并将权限授予角色而不是直接授予主体,主体通过角色分派来得到客体操作权限因而实现授权。由于角色在系统中具有相对于主体的稳定性,更易于直观地理解,因此可以大大增加系统授权管理的复杂性,减少安全管理员的工作量。

在RBAC的发展过程中,最早出现的是RBAC96模型和ARBAC模型,此处只对RBAC96模型进行介绍。RBAC96模型的成员包括RBAC0、RBAC1、RBAC2和RBAC3。RBAC0是基于角色访问控制模型的基本模型,规定了RBAC模型的最小需求;RBAC1为角色层次模型,在RBAC0的基础上加入了角色承继关系,可以按照组织内部职责和权力来构造角色与角色之间的层次关系;RBAC2为角色的限制模型,在RBAC0的基础上加入了各类用户与角色之间、权限与角色之间以及角色与角色之间的限制关系,如角色互斥、角色最大成员数、前提角色和前提权限等;RBAC3为统一模型,它除了包括角色的承继关系,还包括限制关系,是RBAC1和RBAC2的集成。

基于角色访问控制的要素包括用户、角色、许可等基本定义。在RBAC中,用户就是一个可以独立访问计算机系统中的数据或则用数据表示的其他资源的主体。角色是指一个组织或任务中的工作或则位置,它代表了一种权力、资格和责任。许可(特权)就是容许对一个或多个客体执行操作。一个用户可经授权而拥有多个角色,一个角色可由多个用户构成;每个角色可拥有多种许可,每个许可也可授权给多个不同的角色。每个操作可施加于多个客体(受控对象),每个客体也可以接受多个操作。上述要素的实现方式介绍如下。

① 用户表(USERS)包括用户标志、用户姓名、用户登入密码。用户表是系统中的个体用户集,会随用户的添加与删掉动态变化。

② 角色表(ROLES)包括角色标示、角色名称、角色基数、角色可用标示。角色表是系统角色集,角色是由系统管理员来定义的。

③ 客体表(OBJECTS)包括对象标志、对象名称。客体表是系统中所有受控对象的集合。

④ 操作算子表(OPERATIONS)包括操作标志、操作算子名称。系统中所有受控对象的操作算子构成了操作算子表。

⑤ 许可表(PERMISSIONS)包括许可标志、许可名称、受控对象、操作标志。许可表给出了受控对象与操作算子的对应关系。

RBAC系统由RBAC数据库、身份认证模块、系统管理模块和会话管理模块组成。RBAC数据库与各模块的对应关系如图2所示。

图2 RBAC数据库与各模块的对应关系

身份认证模块通过用户标志和用户口令来确认用户身分。此模块仅使用RBAC数据库中的USERS表。

u盘访问被拒绝_无法设置新的所有者 拒绝访问_无法删除 访问被拒绝

系统管理模块主要完成用户增减(使用USERS表)、角色增减(使用ROLES表)、用户/角色的分配(使用USERS表、ROLES表、用户/角色分配表、用户/角色授权表)、角色/许可的分配(使用ROLES表、PERMISSIONS表、角色/许可授权表)、角色间关系的定义(使用ROLES表、角色层次表、静态互斥角色表、动态互斥角色表),其中每位操作都带有参数,也都有一定的前提条件。操作可使RBAC数据库发生动态变化。系统管理员可使用该模块来初始化和维护RBAC数据库。

系统管理模块的操作包括添加用户、删除用户、添加角色、删除角色、设置角色可用性、为角色降低许可、取消角色的某个许可、为用户分配角色、取消用户的某个角色、设置用户授权角色的可用性、添加角色承继关系、取消角色承继、添加一个静态角色互斥关系、删除一个静态角色互斥关系、添加一个动态角色互斥关系、删除一个动态角色互斥关系、设置角色基数等。

会话管理模块会结合RBAC数据库来管理会话,包括会话的创建与取消以及对活跃角色的管理。此模块会使用USERS表、ROLES表、动态互斥角色表、会话表和活跃角色表来执行操作。

RBAC系统的运行步骤如下。

① 用户登入时向身分认证模块发送用户标志、用户口令,确认用户身分。

② 会话管理模块在RBAC数据库中检索该用户的授权角色集并将其送回用户。

③ 用户从中选择本次会话的活跃角色集,在此过程中会话管理模块维持动态角色互斥。

④ 会话创建成功,本次会话的授权许可彰显在菜单与按钮上,若不可用,则显示为红色。

⑤ 在此会话过程中,系统管理员若要修改角色或许可,则可在此会话结束后进行,或者在中止此会话后立刻进行。

图3给出了基于RBAC的用户集合、角色集合和资源集合之间的多对多的关系。理论上,一个用户可以通过多个角色访问不同资源。但是,在实际应用系统中,通常给一个用户授予一个角色,只容许其访问一种资源,这样就可以更好地保证资源的安全性。

图3 RBAC中用户集合、角色集合和资源集合的关系

6、基于信任评估的动态

在物联网环境中,用户可以自由地加入或退出网路,而且用户数目可能相当庞大,为每位用户定义访问控制策略并不现实,因此,需要提出一种新的机制来解决物联网环境的动态访问控制问题。

(1)基于信任评估的动态模型

我们在对用户信任度进行评估的基础上,根据用户的信任度对用户进行分组,对用户集合进行角色的分配和访问控制,提出了基于信任评估的动态访问控制(Trust Evaluation-based Dynamic Role Access Control,TE-DAC)模型。该模型将信任度与访问控制相结合,可以彰显系统的动态性。

TE-DAC模型综合了信任管理和访问控制的优势,通过对用户进行信任评估,确定用户的信任度,进而即可按照其信任度和获得的角色对用户进行访问授权。TE-DAC模型扩充了RBAC模型,增加了上下文检测、用户会话监控、用户信任度评估、根据用户信任度对用户角色进行权限委派等功能;同时通过将角色分为严禁状态(disable)、允许状态(enable)和激活状态(active),使得模型具有了更好的灵活性,方便用户的职责分离(Separation of Duty,SoD)。TE-DAC模型如图4所示。

图4 TE-DAC模型

TE-DAC模型的一个重要的特点是分辨了角色的容许状态和激活状态。在该模型中,角色可以有3种状态:禁止状态、允许状态和激活状态。若角色处于严禁状态,则该角色不可以在任何用户会话的过程中使用,例如,用户不能获得分配给该角色的任何权限。允许状态表示在满足条件时用户可以激活该角色,即若果一个用户激活了某个角色,该角色就变为了激活状态。处于激活状态的角色表示起码一个用户激活了该角色,若只有一个用户使用该角色,则执行一次休眠操作后,该角色都会转变为容许状态;若有N个用户使用该角色,则执行N次休眠操作后,该角色就会转变为容许状态,否则,其仍是激活状态。角色处于激活状态时,重复激活不改变其状态。若有严禁风波发生,则角色会转变为严禁状态,不管其原先处于容许状态还是激活状态。

(2)基于信任评估的动态过程

TE-DAC系统与传统的访问控制系统的一个重要区别是可以在一个适当的细度下控制访问恳求和估算资源。信任作为一个计算参数,反映了用户行为的可信度。在物联网系统中,用户的每次访问恳求,都由访问认证中心(Access Authorization Center,AAC)进行信任度检测,以判定用户是否满足容许访问的条件。在该模型中,信任度被作为用户的一个属性而进行综合认证。认证模块由策略执行点和策略决策点组成。

用户登入系统后,根据用户的身分为其分配相应的角色,此时的角色没有被委派任何属性,角色无任何权限,处于严禁状态,因此,用户不能进行任何操作。通过信任评估模块获得用户的信任度后,将其和其他属性作为角色属性赋于角色,然后查询策略库中的角色权限表,为角色分配相应的操作权限,此时,角色的状态转变为容许状态,可被激活,用户可通过风波激活角色以进行相应的操作。TE-DAC模型的访问控制过程如图5所示。

图5 TE-DAC模型的访问控制过程

访问控制过程包含6个步骤。

① 用户(User)将访问恳求发送给安全管理中心(Security Management Engine,SME),访问恳求中包含用户ID、密码等认证信息。

② SME通过对用户进行身分认证和信任评估,根据访问控制策略生成用户的访问授权策略并将其返回给用户。该步骤更详尽的介绍如下:

a. 用户的估算恳求递交给策略执行点(Policy Enforcement Point,PEP);

b. PEP向策略决策点(Policy Decision Point,PDP)发出访问决策恳求,该恳求包括用户的身分信息及服务类型信息;

c. PDP向身份认证系统递交用户的安全账簿,以验证用户身分是否合法。如果认证失败,则生成中止访问的信息并执行步骤h;

d. 若用户通过了身分认证,则PDP会依据用户身分为该用户分配相应的角色,此时的角色处于严禁状态;

e. PDP向信任评估引擎(Trust Evaluation Engine,TEE)发出信任评估恳求,TEE通过查询信任数据库评估用户的行为信任度,并将评估结果返回给PDP,同时用新的信任度更新信任数据库;

f. PDP查询策略库中的角色属性表;

g. PDP将步骤e中获得的用户信任度和步骤f中获得的角色属性委派给该用户的角色,然后查询策略库中的权限分配表(Permissions Assignment Table,PAT),获取角色当前对应的权限。PDP检测该权限与用户恳求的权限,若两者相同或该权限包含用户恳求的权限,则容许该次访问恳求,并生成准许访问的信息;若该权限大于用户恳求的权限,则拒绝该次访问恳求,并生成拒绝访问的信息;

h. PEP执行PDP的决定,如果收到准许访问的信息,则激活用户的角色;如果收到拒绝访问的信息,则将其返回给用户;更新策略库。

③ 用户向资源管理器(Resource Manager,RM)提交资源恳求服务。

④ RM启动资源调度算法,为用户分配相应的服务提供者,然后使用分发程序将用户任务分发到相应的服务提供者进行执行。调度时,将服务提供者的信任作为调度算法的参数可以更有效地进行资源调度控制,提高资源利用率。

⑤ 在这次交互结束时,用户可以基于资源的性能等特点估算服务提供者的信任度,并将估算结果发送给SME以进行服务提供者的信任更新。

⑥ 同时,服务提供者也会对用户进行同样的信任更新。

7、基于信任关系的动态服务授权

对于服务(资源)提供者来说,其可依照服务请求者的不同OTD,把服务请求者分别映射到不同的角色。同时,服务提供者在接到多个服务请求者恳求的情况下,也须要根据不同的策略来分配资源,授权用户访问资源。

(1)形式化描述

下面从服务提供者的角度给出一种基于信任关系的动态服务授权策略的形式化描述。

设实体Pj向服务提供者Pi恳求某种服务,Pi对Pj的总体信任度Γ(Pi,Pj)有P个评估等级c1,c2,…,cP,其中0≤cp≤1(p=1,2,…,P)。评估等级空间记作U,表示为U={c1,c2,…,cP},若评估等级空间U具有如下性质:ci∩cj=(i≠j),且c1

设实体Pi可提供P个级别的服务S={s1,s2,…,sP},且S是一个有序分割类,S和总体信任度Γ(Pi,Pj)之间的映射函数Ψ表示为:

分界点c1,c2,…,cP可以按照信任度的实数空间的边界点确定,实体Pj向服务提供者Pi恳求某种服务,Pi首先要按照Pj的信任度级别Γ(Pi,Pj)决定它所能得到的服务质量,这样既可以分级对不同的实体提供不同的服务,又有利于增加系统可能存在的风险。

(2)基于信任关系的动态服务选择

在物联网系统中,服务双方通过身分认证和访问控制后,为对方提供多少资源也是一个十分重要的问题。如果交易一方提供虚假估算或储存资源,则预先确定的任务可能会被延期执行;如果交易一方恶意撤消估算或储存资源,则预先确定的任务将难以完成。针对这种问题,需要从信任评估的角度来实现交易双方的服务资源选择。

下面是从服务请求者的角度给出的一种基于信任度的资源选择方式。

令Pi∈S为估算市场中的服务请求者,O={Pj,j∈[1,M]}为服务提供者(资源的集合),Pi∈S向Pj∈O恳求服务的过程定义为Pi和Pj的交易,而交易回馈信息则包含了Pi对Pj的信任评分及相关认证信息。

设ΓD(Pi,Pj)为Pi对Pj的直接信任度,表示Pi依据其与Pj的直接交易回馈信息而得到的信任关系。设ΓI(Pi,Pj)表示Pi依据其他节点的反馈而得到的其对Pj的信任,即反馈信任度。设Γ(Pi,Pj)为由ΓD(Pi,Pj)和ΓI(Pi,Pj)聚合而得到的Pi对Pj的总体信任评价(OTD)。

物联网系统中基于信任的资源选择算法步骤如下。

① 从资源信息中心获取可用资源的列表O={Pj,j∈[1,M]};

② 根据操作系统、体系结构和CPU个数等硬性需求,过滤掉不满足条件的估算资源;

③ 根据相关算法估算每一个资源的总体信任度Γ(Pi,Pj),根据用户作业的信任需求阀值,过滤掉信任度高于该阀值的资源;

④ 根据估算得到的每一个资源的OTD,对可选资源进行排序;

⑤ 根据排序结果,选择OTD值最大的资源,并递交作业到该资源;

⑥ 等待作业结果,如果作业被按量成功执行,则进行后续工作,如支付酬金、下载结果文件等,然后回馈正面的评价,并依据相关算法降低直接信任度;

⑦ 如果执行作业超时或失败,则回馈较低的评价,根据相关算法减少直接信任度,并从排序列表中删掉该资源。

⑧ 跳转到步骤③,直到作业完成。

现在剖析这个算法的优缺点。假设每位服务请求者都是自大的,希望自己获得的服务是最好的。如果对某个服务请求者来说,能够为其提供服务的提供者有很多,那么他将选择信任度高的提供者来为自己服务。然而,这种方法对于信任度高的服务提供者来说却有两点不利:

① 信任度越高的服务提供者,其提供服务所消耗的资源越多;

② 信任度高的服务提供者和信任度低的服务提供者在这些方法下会获得相同的利益。

因此,在一个实际应用系统中,需要对这一不利诱因进行改进,例如,可以对多个服务提供者的OTD进行排行,然后设定OTD的阀值,挑选出比阀值高的所有服务提供者,从中随机选择一个作为目标,向其恳求服务。这样就在一定程度上缓解了信誉高的域节点的负载。又如,除了服务提供者的OTD诱因外,还可以考虑服务请求者在价钱和风险方面的偏好等诱因。

(3)面向FTP的动态资源

设有一个提供文件共享服务的站点P,为了保证网路系统的安全性,该FTP站点引入了信任评估机制,对所有的服务请求者节点进行信任度的评估,根据信任度的评估结果,对不同信任度的节点提供不同类别的服务质量。假设站点P可以提供3个等级的服务质量,设服务类别的等级用集合S表示,站点P的S可以定义为:S={s1, s2, s3,},其中s1表示拒绝服务,s2表示只读,s3表示既可以读也可以写。则可以定义如下的服务决策函数:

设节点P通过本书的估算方式得到某实体Pj的总体信任度为Γ(P,Pj)=0.19,则按照决策函数Ψ可得决策过程为Ψ(Γ(P,Pj))=Ψ(0.19)=s1,这说明节点Pj的信任级别较低,站点P将拒绝为Pj提供服务。若Γ(P,Pj)=0.40,则Ψ(Γ(P,Pj))=Ψ(0.40)=s2,表示节点Pj可以读节点P的资源。若Γ(Pi,Pj)=0.90,则Ψ(Γ(P,Pj))=Ψ(0.90)=s3,表示节点Pj既可以读节点P的资源,也可以将数据保存(上传)到P的存储器中。