本文详细介绍Linux安全访问控制模型应用及方案设计
1.2 DTE模型
DTE (Domain and Type Enforcement)模型[5]是由O’Brien and Rogers于1991年提出的一种访问控制技术。它通过赋予文件不同的型(type)、赋予进程不同的域(domain)来进行访问控制,从一个域访问其他的域以及从一个域访问不同的型都要通过DTE策略的控制。
近年来DTE模型被较多的作为实现信息完整性保护的模型。该模型定义了多个域(Domain)和型(Type),并将系统中的主体分配到不同的域中,不同的客体分配到不同的型中,通过定义不同的域对不同的型的访问权限,以及主体在不同的域中进行转换的规则来达到保护信息完整性的目的。
DTE使域和每一个正在运行的进程相关联,型和每一个对象( e.g.文件、包)相关联。如果一个域不能以某种访问模式访问某个型,则这个域的进程不能以该种访问模式去访问那个型的对象。当一个进程试图访问一个文件时,DTE 系统的内核在做标准的系统许可检查之前,先做DTE许可检查。如果当前域拥有被访问文件所属的型所要求的访问权,那么这个访问得以批准,继续执行正常的系统检查。
1.3 RBAC模型
RBAC模型[5]是基于角色的访问控制模型。该模型主要用于管理特权,在基于权能的访问控制中实现职责隔离及极小特权原理。
RBAC包含以下基本要素:用户集(Users),主体进程集(Subjects),角色集(Roles),操作集(Operations),操作对象集(Objects),操作集和操作对象集形成一个特权集(Privileges);用户与主体进程的关系(subject_user),用户与角色的关系(user_role), 操作与角色的关系(role_operations), 操作与操作对象的关系(operation_object)。
通常subject_user是一个多对一的关系,它把多个主体进程映射到一个用户,这些进程都是替代该用户的主体进程;在本模型中它就是一个典型的多对一的关系。user_role可以是多对多的关系,但在本模型中它被简化为一对一的关系。role_operations是一个一对多的关系,它把一个角色映射到多个操作,是角色被授权使用的操作的集合;operation _object是一个一对多的关系,它把一个操作映射到多个操作对象,是操作被授权作用的操作对象集。
来源:计算机与信息技术 作者:李芳 胡志兴 责编:豆豆技术应用