一种基于RBAC模型改进的访问控制模型的制作方法

文档序号:12467860阅读:356来源:国知局

本发明涉及物联网智能家居领域,具体地说,是一种基于RBAC模型改进的访问控制模型;



背景技术:

在RBAC(Role-Based Access Control,基于角色的访问控制模型)模型中,业务操作实体OPS和业务数据实体OBS是相互独立的两个元素,操作施加于受控对象从而产生数据授权实体P。RBAC是目前公认的解决统一资源访问控制的有效方法,然而某些情况下需要对某个用户授予特殊的权限时,RBAC就显得有些不够灵活,如果授予用户所拥有的某种角色,则拥有该角色的所有用户都会拥有该权限或被授予角色的用户会拥有该角色的所有权限。如果为了实现这一需求而单独创建一个角色又显得繁琐而不合常理,因此,结合智能家居远程控制领域单独对用户授予权限的需要。



技术实现要素:

本发明提供了一种基于RBAC模型改进的访问控制模型,目的在于克服现有技术的不足;

本发明公开了一种基于RBAC模型改进的访问控制模型,其特征在于,包括账号U、角色R、会话S、约束C、数据授权实体P、业务数据实体OBS、业务操作实体OPS;所述账号U为业务操作主体,在智能家居领域中分为家庭主账号和家庭成员子账号;所述角色R指被授予一定的控制权限许可,派生子角色的许可是父角色许可的子集;所述会话S指账号U和角色R间的多对多指派关系;所述约束C指角色R间的互斥、包含和优先级关系;所述数据授权实体P是访问控制的授权许可;所述业务数据实体OBS为智能家居领域内的房间和可控设备;所述业务操作实体OPS为智能家居领域中开关、遥控、联动操作;

所述访问控制模型的建立分为以下三个环节:

(1)建立模型:

基于RBAC基本模型,对数据授权实体P部分结合面向业务的特征进行扩展,将模型中的业务操作实体OPS及业务数据实体OBS以业务单元为单位划分,将操作 和数据按照业务内聚度归集到业务单元下,使应用系统中不再存在独立的操作和数据;具体内容包括:

业务单元实体作为数据授权实体P的基本单位,包含业务数据结构实体OBS和业务操作实体OPS,其中业务数据结构实体用于描述业务单元下的业务实体数据结构,业务操作实体用于识别业务单元下需要进行授权访问控制的操作;业务操作实体OPS定义可在多个业务单元间复用,因此它与业务单元实体之间是一种聚合关系;业务操作实体OPS和业务数据实体OBS的关联关系是一种多对多关系,表示一个业务操作在执行时受到哪些数据权限的约束;

业务数据实体OBS定义,采用数据模型来描述业务数据结构;业务数据定义映射到关系型数据库中是一组具有主从关系或关联关系的表或视图的集合,因此业务数据是一组数据集,每个数据集是一个二维表结构;

数据授权实体P定义,用于定义数据权限控制的数据范围的划分依据;其中数据范围是指业务单元中的业务数据的取值范围;根据上文所述,业务数据的取值范围的划分,就是对业务数据对应的每一个二维表的行、列两个维度进行划分,数据权限实体用于定义对此数据范围的划分的依据;业务数据实体OBS和数据授权实体P之间是一种多对多关系,表示一个数据权限在作用于业务实体数据时,具体和该业务实体数据的哪个数据域,即字段或字段组合相关;

(2)权限分配

角色R以业务单元为单位进行授权分配;分配时的具体内容包括:

角色R和业务单元实体之间是一种多对多关联关系,表示一个角色可以分配多个业务单元的数据授权实体P,一个业务单元的数据授权实体P可以分配给多个角色,角色和业务单元之间的一个分配关系,产生一个关联的角色的授权分配实体;在一个业务单元的角色授权中,一个角色实体可选择分配一个业务单元实体下的一个或多个业务操作实体OPS,表示该角色在当前业务单元下可执行哪些业务操作;如果该业务操作在业务单元授权定义时定义了数据权限约束,则应根据数据权限的定义为角色分配执行该操作时可访问的数据范围,从而产生角色的数据授权分配实体数据;

(3)访问控制

服务调用接口遵循基本的RBAC模型定义的操作接口标准,在角色的授权访问控制部分,采用以业务单元为基本单位的访问控制;在运行时服务的内部,根据输 入的会话S和业务单元、业务操作等信息,加载业务单元定义,根据分配时设置的角色的授权分配S和C结果进行逻辑运算,向调用返回授权访问控制的结果。

与现有技术相比,本发明的积极效果是:

1.本发明比传统的RBAC模型灵活,满足了智能家居远程控制领域单独对用户授予权限的需要。

附图说明

图1是本发明所述的访问控制模型示意图;

具体实施方式

本发明提供一种基于RBAC模型改进的访问控制模型,为使本发明的目的、技术方案及效果更佳清楚、明确,以下对本发明进一步详细说明;应当理解,此处所描述的具体实施例仅用以解释本发明,并不用与限定本发明;

本发明公开了一种基于RBAC模型改进的访问控制模型,其特征在于,包括账号U、角色R、会话S、约束C、数据授权实体P、业务数据实体OBS、业务操作实体OPS;所述账号U为业务操作主体,在智能家居领域中分为家庭主账号和家庭成员子账号;所述角色R指被授予一定的控制权限许可,派生子角色的许可是父角色许可的子集;所述会话S指账号U和角色R间的多对多指派关系;所述约束C指角色R间的互斥、包含和优先级关系;所述数据授权实体P是访问控制的授权许可;所述业务数据实体OBS为智能家居领域内的房间和可控设备;所述业务操作实体OPS为智能家居领域中开关、遥控、联动操作;

所述访问控制模型的建立分为以下三个环节:

(1)建立模型:

基于RBAC基本模型,对数据授权实体P部分结合面向业务的特征进行扩展,将模型中的业务操作实体OPS及业务数据实体OBS以业务单元为单位划分,将操作和数据按照业务内聚度归集到业务单元下,使应用系统中不再存在独立的操作和数据;具体内容包括:

业务单元实体作为数据授权实体P的基本单位,包含业务数据结构实体OBS和业务操作实体OPS,其中业务数据结构实体用于描述业务单元下的业务实体数据结构,业务操作实体用于识别业务单元下需要进行授权访问控制的操作;业务操作实体OPS定义可在多个业务单元间复用,因此它与业务单元实体之间是一种聚合关系;业 务操作实体OPS和业务数据实体OBS的关联关系是一种多对多关系,表示一个业务操作在执行时受到哪些数据权限的约束;

业务数据实体OBS定义,采用数据模型来描述业务数据结构;业务数据定义映射到关系型数据库中是一组具有主从关系或关联关系的表或视图的集合,因此业务数据是一组数据集,每个数据集是一个二维表结构;

数据授权实体P定义,用于定义数据权限控制的数据范围的划分依据;其中数据范围是指业务单元中的业务数据的取值范围;根据上文所述,业务数据的取值范围的划分,就是对业务数据对应的每一个二维表的行、列两个维度进行划分,数据权限实体用于定义对此数据范围的划分的依据;业务数据实体OBS和数据授权实体P之间是一种多对多关系,表示一个数据权限在作用于业务实体数据时,具体和该业务实体数据的哪个数据域,即字段或字段组合相关;

(2)权限分配

角色R以业务单元为单位进行授权分配;分配时的具体内容包括:

角色R和业务单元实体之间是一种多对多关联关系,表示一个角色可以分配多个业务单元的数据授权实体P,一个业务单元的数据授权实体P可以分配给多个角色,角色和业务单元之间的一个分配关系,产生一个关联的角色的授权分配实体;在一个业务单元的角色授权中,一个角色实体可选择分配一个业务单元实体下的一个或多个业务操作实体OPS,表示该角色在当前业务单元下可执行哪些业务操作;如果该业务操作在业务单元授权定义时定义了数据权限约束,则应根据数据权限的定义为角色分配执行该操作时可访问的数据范围,从而产生角色的数据授权分配实体数据;

(3)访问控制

服务调用接口遵循基本的RBAC模型定义的操作接口标准,在角色的授权访问控制部分,采用以业务单元为基本单位的访问控制;在运行时服务的内部,根据输入的会话S和业务单元、业务操作等信息,加载业务单元定义,根据分配时设置的角色的授权分配S和C结果进行逻辑运算,向调用返回授权访问控制的结果。

对于本领域技术人员而言,显然本发明不限于上述示范性的实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明;因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的 含义和范围内的所有变化囊括在本发明内,不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1