基于教育云平台数据分类分级体系的访问控制模型

2022-04-11 10:15范新民陈圣楠陈恩生
信息安全研究 2022年4期
关键词:访问控制分级标签

范新民 林 晖 陈圣楠 陈恩生

1(福建师范大学网络与数据中心 福州 350117)2(福建师范大学计算机与网络空间安全学院 福州 350117)3(网络安全与教育信息化福建省高校工程研究中心 福州 350117)(xmfan@fjnu.edu.cn)

伴随教育数字化建设工作的不断推进,数据开放与共享理念已深入人心,随之产生的政治、经济和社会效益得到了广泛认可.依托云平台搭建的数据底座在教育数字化建设中起着关键作用,该底座将分散在各业务系统中的数据汇聚起来重新组织和连接,使数据的定义和结构更加清晰统一[1].这种做法虽然提升了数据管理的便捷性,但也加剧了云平台面临的风险.一旦受到攻击而防御不力,数据泄露或非法使用将带来难以估量的损失.安全可控是数据开放与共享的前提,因此云平台必须具备一套可靠且灵活的访问控制模型,以保障数据的合法、合规使用.

目前,面向云平台的访问控制模型[2-3]有基于角色的访问控制(role-based access control, RBAC),基于属性的访问控制(attribute-based access control, ABAC)和基于任务的访问控制(task-based access control, TBAC)等.随着云计算技术的发展,云平台的应用场景也变得愈加复杂.根据实际情况,研究者们对上述模型进行了改进.黄晶晶等人[4]针对云计算中用户和数据资源多变的特点,将上下文信息与RBAC结合以支持动态的资源访问,同时对数据资源进行简单的安全等级划分,避免数据管理者违规操作.蔡婷等人[5]将上下文信息的基数约束和资源使用约束结合到RBAC中,使模型能够对域间的角色指派关系进行自动检测.毋涛等人[6]将ABAC应用于云计算环境中,考虑到云计算中庞大的用户体量和数据资源可能造成的策略冲突,利用粗糙集属性约简方法剪除主客体的冗余属性,从而加速模型的决策生成.Abirami等人[7]将数据分为敏感和非敏感2类,在ABAC中引入信任机制,通过评估用户的可信程度授权其访问并操作敏感数据.程学林等人[8]将组织架构这一属性与RBAC融合,构建用户的组织架构,将组织架构与数据进行映射确定数据归属,同时利用组织架构定义用户-数据的访问规则.包英明[9]分析了云平台中数据安全防护现状,指出数据细粒度访问控制是数据安全防护平台的必要能力,但未给出详细的模型和实施方案.Zhu等人[10]将被保护对象细化到数据表的行和列,并对行列标记安全特征,通过数组、集合和树3种方式组合安全策略,利用区间决策树生成权限配置.

虽然上述研究都设计了灵活、易扩展的授权机制,但在数据管控上仍存在一些不足.首先,云平台中的不同数据在知悉范围、受益群体等方面存在差异,导致其无法全面开放.现有的访问控制模型未提供完整的数据分类分级体系,使得数据约束缺乏准确的依据.其次,对于数据安全性的评估过于主观单一,仅依赖管理者自身的经验和知识难以实现细粒度的数据访问控制.

2021年9月1日《中华人民共和国数据安全法》(简称《数据安全法》)正式实施,对一般数据、个人信息和重要数据等提出了详细的保护要求,并指出通过对数据分类分级,可以减少人为操作引起的数据泄露,从而保障数据安全.立足《数据安全法》,本文提出基于教育云平台数据分类分级体系的访问控制模型.本文的贡献包含以下3个方面:

1) 给出了数据分类分级体系的建设路径,并将其应用于教育云平台中;

2) 结合数据分类结果,定义了清晰的数据敏感性评估方式,并为数据生成多维度安全标签;

3) 将安全标签与RBAC结合,通过2级授权实现云平台中数据的受限共享,同时周期性地对用户操作风险进行评估,避免用户对数据的越权操作.

1 数据分类分级体系构建

1.1 教育云平台数据分类分级体系

教育云平台是典型的多域综合性云平台,涉及教学、管理、科研、服务等诸多业务场景.以某大学为例,在部门层面,教育云平台中涵盖了学院、机关部处、教辅机构、研究机构以及附属单位等多部门;在用户层面,教育云平台中包含了教师、学生、教辅人员、工勤人员等多角色;在数据层面,教育云平台中留存有个人数据、科研数据等.数据在不同层面的交织令其安全性的标度变得困难.因此,要从实际业务出发构建适用于教育云平台数据的分类分级体系.如图1所示,教育云平台数据分类分级体系包含3个维度:数据分类、安全分级、生命周期.

图1 教育云平台数据分类分级体系

1.1.1 数据分类

数据分类是根据数据的内涵、性质和管理目的对数据进行区分和归类.数据分类的基本方法可参照线分类法进行,即先根据业务的属性和特点划分大类,再根据大类内部数据的逻辑关系逐级向下细分层级和子类,最终形成多层级多分支的树形结构.

如表1所示,依据《网络安全标准实践指南——网络数据分类分级指引》[11]与教育云平台数据的业务范围和使用主体,教育云平台中的数据被划分为学生数据、教职工数据、科研数据和其他业务数据4大类,各大类下的数据由于性质、功能、来源和产生渠道不同,进一步细分为多个业务子类.

表1 教育云平台数据分类示例

1.1.2 安全分级

安全分级是在数据分类的基础上对数据的安全性进行评估.数据的安全级别取决于影响对象和影响程度2个要素.由《数据安全法》第21条“根据数据在经济社会发展中的重要程度,以及一旦遭到篡改、破坏、泄露或者非法获取、非法利用,对国家安全、公共利益或者个人、组织合法权益造成的危害程度,对数据实行分类分级保护”可知,影响对象可分为国家、公共、个人和组织4种.具体而言,国家对应于社会、经济等宏观层面,公共对应于公众层面,个人对应于自然人个体层面,组织对应于政府、企事业单位及其他机构等.影响程度是数据遭到破坏后,直接或间接造成的全部影响或损害的程度,从低到高可分为无影响、轻微危害、一般危害、严重危害、特别严重危害.

在教育云平台中,将影响对象划分为群体、个体和学校.群体包含国家和公众,个体包含组织和个人,除此以外的其他影响对象归结为学校.结合影响程度,将数据的安全级别分为3级,分级规则参见表2:

表2 教育云平台数据安全级别分级规则

以学生基本信息数据为例,学生基本信息数据共有6个3层子类.各子类的数据内容不同,影响程度和分级结果也不同,如表3所示:

表3 教育云平台数据分级示例

1.1.3 生命周期

生命周期是从时间维度上对数据的阶段性变化和规律进行描述.2019年颁布的国家标准《信息安全技术 数据安全能力成熟度模型》[12 ]将数据生命周期划分为6个阶段:数据采集、数据传输、数据存储、数据处理、数据交换和数据销毁.在生命周期中,数据的分类分级结果可能随时间、政策或业务场景的变化而变动.因此,需要定期对数据的分类分级进行审核并及时调整.

1.2 数据敏感性评估模型

分类分级是针对数据的定性分析,这种定性分析带有一定的主观性.因此,需要结合数据自身属性对数据敏感性进行定量评估,这里主要考虑3种数据自身属性:数据质量、数据使用率和数据连接度.对于关系型数据库,数据表是由数据项(列)和数据记录(行)共同构成的集合.本文参考文献[13]引入信息熵评估数据敏感性,将数据项作为数据访问控制的基本单位,同时考虑到不同业务的重要程度之间存在差异,按照数据类别对数据敏感度赋予不同权重,使其在云平台中的影响程度不同.

设ci表示第i个数据项,tp表示第p个数据表,rk表示第k条数据记录.tp(ci)表示tp中的数据项ci,rk(ci)表示rk中的数据项ci.

定义1.数据质量.数据质量针对某一数据项,由完整、有效的数据条数在总数据条数中的比例决定,比例越高,数据越完整,该数据项的数据质量和敏感性也越高.用函数valid()校验数据项的完整性,1和0分别表示校验通过与不通过.数据项ci的数据质量Q(ci)的计算方式如下:

(1)

其中,n为总数据条数.

定义2.数据使用率.数据使用率由数据项被外部使用的情况决定.将某一数据项的被访问频次与所有数据项的被访问频次进行比较,可以发现核心业务数据通常被频繁使用,其敏感性随之增加.用函数freq()计算数据项的被访问频次,数据项ci的数据使用率U(ci)的计算方式如下:

(2)

其中,m为总数据项数.

定义3.数据连接度.数据连接度是指数据项被数据表引用的频率.当某主表中的数据项与其他表之间存在连接时,表示其被引用次数多,影响范围大,数据敏感性增加.用函数conn()校验数据项在多表之间是否存在连接,1和0分别表示有连接和无连接.数据项ci的数据连接度C(ci)的计算方式如下:

(3)

由于数据质量、数据使用率和数据连接度存在量纲差异,还需要对数据进行归一化操作,归一化后的数据定义为Q′(ci),U′(ci)和C′(ci).

定义4.数据敏感度(datasentivity).数据敏感度为数据质量、数据使用率和数据连接度这三者的乘积,用业务重要程度α进行微调,即:

datasentivity(ci)=αQ′(ci)U′(ci)C′(ci).

(4)

结合数据敏感度和数据语义,设定阈值进一步将数据敏感度划分为高、中、低3级.

2 基于教育云平台数据分类分级体系的访问控制模型

2.1 模型构建思路

目前,多数教育云平台采用RBAC,根据权限类别和数量定义角色,通过角色对用户进行授权.这种方式虽然简单易行,但存在以下2个问题:1)产生角色爆炸.随着云平台业务的扩张,为实现更细粒度的访问控制,RBAC只能对角色进行不断细分,导致角色定义不清和数量激增.2)无法动态授权.RBAC通常预定义角色和权限之间的关系,无法随平台数据属性变动调整用户授权.3)难以监管用户行为.RBAC是基于关口控制概念实现的模型,无法有效对授权后的用户行为进行监管,用户的高危操作可能导致平台中的隐私数据泄露.

显然,单纯依靠RBAC难以有效实现教育云平台的数据访问控制.为此,本文提出基于教育云平台数据分类分级体系的访问控制模型.首先,对云平台中的数据进行全面梳理,通过定性和定量分析,为数据生成相应的一系列安全标签;然后,将安全标签与RBAC进行融合,对权限进行3级划分,即页面级、功能级和数据级,页面级和功能级的访问控制交由RBAC完成,数据级的访问控制交由安全标签和安全策略完成.此外,收集和分析用户历史行为记录,检测用户风险程度并约束用户权限.通过粗粒度过滤和细粒度控制相结合的方式,实现云平台中数据多层级受限共享.

2.2 模型元素

本文所用到的一些模型元素如下:

1) 用户、角色、操作、资源和权限.沿用在RBAC中的语义,用户、角色、操作、资源和权限分别表示为users,roles,ops,res和prms.

2) 安全标签(secure tag).根据前述的分类分级体系,通过对云平台中的数据资源按照类别逐层划分,对类别数据进行安全定级,对数据的敏感性进行评估,确定多层次的安全标签.安全标签除了标记数据资源外也被用于标记用户,通常通过角色为用户添加安全标签,用户安全标签表明用户可访问具有某些安全属性的数据.需要注意的是,实际应用中标记用户和标记数据可以使用2套不同的安全标签体系.

3) 安全周期(secure period).根据数据生命周期划定数据所处的安全周期,安全周期与环境属性中的时间属性不同,需要人工根据平台运行情况进行判定.

4) 安全策略(secure policy).安全标签可以不同方式进行组合,根据组合方式的不同,安全标签之间的关系可分为平行关系、父子关系和求精关系.当数据安全标签以平行关系进行组合时,用户的安全标签集必须包含数据安全标签才能对数据进行操作.当数据安全标签以父子关系进行组合时,具备父集数据访问权限的用户可以操作父集以下的所有数据.当数据安全标签以求精关系进行组合时,用户需具备更高级别的安全标签才能操作数据.将用户安全标签和数据安全标签依次比对,根据上述安全策略进行授权,一旦授权结果出现“False”,则不允许用户访问数据.

5) 用户行为.用户对数据操作的次数.

6) 平均用户行为.针对同一数据所有用户操作次数的均值.

定义5.风险程度(riskval).用户行为与平均用户行为的差值,如式(5)所示,用于判断该用户行为的风险性.当风险程度大于阈值θ,则认为该用户行为存在风险,平台对其进行授权限制以防止恶意访问造成数据泄露.

riskval(user)=H(user,data,securetag)-

(5)

2.3 模型架构与实施方案

本文模型的总体架构如图2所示,主要由身份认证模块和云平台访问控制模型组成.

图2 基于教育云平台数据分类分级体系的访问控制模型架构

1) 身份认证模块.身份认证模块对用户的用户名、密码、身份类型等信息进行验证.

2) 云平台访问控制模型.云平台访问控制模型是本文模型的核心,分为访问过滤层、RBAC层、安全标签层和数据层.该模型结合用户角色与主客体的安全标签,对照安全策略生成授权决策.

本文模型的具体实施方案如下:

1) 云平台运行前,管理员列出平台中的数据清单,并根据数据分类分级体系为数据打上数据类别、安全等级、生命周期和敏感性等客体安全标签.同时,根据业务需要构建角色,并在角色-页面、角色-安全标签之间建立关联.用户通过被分配的角色获得相应的主体安全标签.

2) 平台运行时,系统自动对主客体的标签完整性和一致性进行校验.完整性校验是校验用户是否具有可访问数据的最小权限,一致性校验是检查数据新增加的标签是否与已有标签冲突.

3) 当用户对平台发出业务操作请求时,身份认证模块根据用户请求对其身份信息进行验证,确保只有合法用户才能访问平台;通过验证后,身份认证模块将请求转发给访问过滤层,访问过滤层将请求进一步解析为用户、操作、角色集和业务流等信息;RBAC层根据用户-角色、角色-页面和页面-功能的多级映射关系,建立用户可操作的业务范围,实现对权限的粗粒度控制;安全标签层通过比较用户的主体安全标签和数据的客体安全标签,确定用户可操作的数据范围,生成数据请求并将其转发给数据层;数据层根据请求返回相应数据.

4) 平台定期收集用户行为进行风险性分析,对已授权用户进行约束.

3 应用分析

为验证本文模型的有效性,本文构建并部署了原型系统.原型系统与多个业务子系统相连并提供统一权限管理服务,无须在业务子系统中重复设计权限管理模块.

3.1 页面级和功能级权限控制

页面级和功能级的权限控制由RBAC完成,因此用户的页面菜单和功能操作随其角色变化,用户不具有的服务对其不显示,如图3所示.同时平台对与页面和功能相对应的URL进行拦截过滤.原型系统中教职工与学生所能访问的应用服务不同,说明模型可实现不同角色在页面级和功能级的权限配置.

图3 页面级和功能级权限控制

3.2 数据级权限控制

数据级的权限控制由安全标签和安全策略完成,通过比较角色安全标签与数据安全标签,决定用户是否能访问该数据.如图4所示,证件号属于学生身份信息,安全级别为3级,敏感性高.因此,只有角色所涉及的业务需要确认学生身份时才能访问该信息.当用户无法访问学生身份信息时,对学生身份信息进行模糊处理.为保护用户隐私,图4给出的均为测试数据.

图4 数据级权限控制

4 结束语

本文针对教育云平台中的数据安全防护问题,提出了一种基于数据分类分级体系的访问控制模型.通过构建数据分类分级体系为给数据生成多维度安全标签提供了依据,并与RBAC结合实现了教育云平台中的数据访问控制.经原型系统验证,该模型能在多域环境中提供灵活安全的数据约束,实现细粒度、差异化的数据保护.

猜你喜欢
访问控制分级标签
一种跨策略域的林业资源访问控制模型设计
云的访问控制研究
不害怕撕掉标签的人,都活出了真正的漂亮
2016年年末净值规模低于5000万元的分级基金
云计算访问控制技术研究综述
让衣柜摆脱“杂乱无章”的标签
科学家的标签
科学家的标签
完形填空分级演练
完形填空分级演练