CISSP的成长之路(二十五):数据访问控制方法(2)

基于角色的访问控制(Role Based Access Control, RBAC):

在许多大型的组织和企业中,数据访问控制策略的制定实施往往取决于要求访问的用户在企业中所担任的职务,如公司的财务人员只能访问财务数据,而不能访问人力资源文件,这种访问控制方法被称为基于角色的访问控制,简称RBAC。同样的,基于角色的访问控制策略也根据用户所担任的职务,规定了用户能够对数据进行的操作权限–由企业安全策略确定并授权。因此,在使用基于角色的访问控制方法之前,还需要对组织中的所有数据以及访问者进行角色属性的设置,以使得访问控制系统能够在收到访问请求时,根据访问者和被访问数据的角色属性对比结果,进行访问允许或访问拒绝的操作。

这也是基于角色的访问控制与之前J0ker介绍过的自主式和强制访问控制最大的不同点,基于角色的访问控制的访问策略,并不是基于系统管理员或用户的自主设定(自主式访问控制),也不是根据组织安全策略规定由数据所有者设置的(强制访问策略)。基于角色的访问控制需要考虑的一个问题是,如何限制用户对某种信息进行什么样的操作,从而保护信息的完整性。

管理方便是基于角色的访问控制的最大好处,当一个访问策略(也称之为角色)设定好之后,系统管理员就可以方便的将用户加入或移除某个角色,使该用户可以根据角色的权限操作数据。例如,当企业招聘新员工之后,系统管理员只需要将这些新员工加入到对应的角色中,这些新员工就可以按照自己的权限开展工作;当员工从企业辞职之后,管理员只需要直接将该用户移出角色并禁用,即可删除该辞职员工的所有权限。

能力表(Capability tables):作为基于角色的访问控制方法用来控制用户权限的后台部分,能力表存储了用户可以如何操作特定数据的保护标识。能力表往往表现成授权表格的形式,它由三部分所组成:访问者、数据、访问权限,能力表的列描述了访问者对表中所有数据的访问权限,而能力表的列则描述了访问控制和访问者按照其授权对特定数据的访问权限。下图是一个能力表的简单示例:

针对数据库的访问控制:

随着数据库技术在企业的广泛应用,数据这个概念已经不只是存储在企业系统或网络内的文件这么简单,企业数据库同样也会存储很多高价值的信息,如银行数据库内存储的用户账户信息,医疗机构数据库内存储的病人信息等。因为这些数据的存储和组织形式和标准的文件目录形式不同,因此,传统的文件访问控制方式不能直接运用到数据库上。目前针对数据库的访问控制模式由两个部分组成:首先是连接性控制,用户在连接到数据库之前,需要进行特定的用户身份验证;其次是控制数据库中的哪些数据可以为用户访问到,这可以通过控制用户的数据视图(View)来实现。尽管针对数据库的访问控制使用到了访问控制CBK中的许多基础技术,但关于数据库安全的更多话题却是在下一个CBK–应用程序安全提到,J0ker到时将会更详细的给大家介绍。

基于内容的访问控制:

基于内容的访问控制,是比基于文件目录、基于数据更为高级也更为细致的访问控制方法,其控制策略取决于被访问对象的数据内容,所以,在使用基于内容的访问控制之前,需要提供以下几个关键的属性:

被访问目标的基本信息

为了提高访问控制的有效性,有时需要对被访问目标增加一个额外的标签,被访问目标的内容也需要经过复审

记录内容,并和符合现有策略的另一个目标进行比较

能够进行基于内容的访问控制的工具,如一个使用字典单词检查的程序等

基于内容的一个最常见的例子是用于互联网网站的分级制度,通过对各种类型的网站进行分类和标记,用户程序可以方便的限制或允许对某类网站的访问。如在许多企业中,不允许在上班时间访问娱乐网站,企业管理员只需要通过策略设置不允许访问标记为"娱乐"的网站即可。目前互联网网站分级采用的是W3C理事会发布的互联网内容选择平台(PICS)标准,所有支持PICS标准的程序都能够根据互联网网站的PICS设置,来对网站的访问进行控制。

强制用户界面(Constrained User Interface):强制用户界面也是应用较广的一种访问控制方式。强制用户界面控制的原理是,通过用户界面和接口限制用户能够访问到的功能、信息和接口,来控制访问者对特定资源的访问能力。如我们经常看到的应用程序中的灰色不能点击按钮,就属于强制用户界面,另外,遍布在公共查询场所的自动查询机也是强制用户界面的一个应用实例,它通过一个固定的界面,限制使用者只能访问和查询特定的内容。