一种电网对象层级权限配置与继承的方法

文档序号:9708387阅读:519来源:国知局
一种电网对象层级权限配置与继承的方法
【技术领域】
[0001]本发明涉及电网数据处理方法,具体来说涉及一种电网对象层级权限配置与继承的方法。
【背景技术】
[0002]电网数据的核心是电力系统资源,包括地区、变电站、电压等级区、间隔和设备,一个从上至下的典型层级,每一个层级的电力系统资源都可以挂接资产、量测和活动记录等附加数据。随着信息技术的发展,大量电网数据汇集在一起的数据平台应用已经很普遍,各类数据用户也在增加。如何有效地控制电网数据访问权限是个很重要的问题。
[0003]现有的方式是为每个对象类或数据表增加一个附加属性,例如对象所属的地区,为每个用户配置可访问地区的数据权限,当用户访问某个电网数据对象时,判断该对象的附加属性是否在用户可访问的数据范围内,如果在,则可访问,如果不在,则不可访问。
[0004]这种基于附加属性的权限配置缺点在于:
[0005]第一:此种方法不灵活,可配置的层级权限有限,如果只增加了地区属性,则只能配置地区的权限,不能为地区下的变电站、电压等级和设备等细粒度对象配置权限。
[0006]第二:此种方法占用存储空间大,为了支持权限配置,要增加额外的属性存储空间,对于大量数据的平台,会有很大开销。
[0007]另外一种方式是不增加额外属性,建立一个权限配置表,用于管理所有对象属性,可以配置任意对象节点的读、写权限,针对特定用户,每增加一个对象的访问权限,就在权限配置表中增加一条记录,用于标识该用户对于此对象是否拥有以及拥有何种权限。
[0008]这种基于权限配置表的对象权限管理方式缺点在于:
[0009]第一:无法按照层级自动管理下一级对象的权限,需要软件递归实现,不便于管理。即便利用外部软件可以实现对象的层级权限配置,对于新增对象,仍然无法自动继承父级节点的访问权限。
[0010]第二:对于大量数据和用户,需要管理的配置记录极其庞大,对存储和效率都有很高的要求。

【发明内容】

[0011]本发明的目的在于提供一种电网对象层级权限配置与继承的方法,能够实现灵活地配置和自动继承电网对象层级权限,大大提高数据处理效率。
[0012]本发明的目的可通过以下的技术措施来实现:
[0013]—种电网对象层级权限配置与继承的方法,包括如下步骤:
[0014]第一步:建立对象ID树
[0015]每个电网数据对象都有一个全局唯一的对象ID,根据电网数据对象的层级关联建立对象ID的树形结构,每一个节点记录其唯一的父节点,最顶层节点的父节点为空;建立电网对象ID到对应节点的哈希映射表,用于通过对象ID快速定位节点;所述对象ID的类型包括整形、字符串或其他数据类型。
[0016]第二步:建立权限配置表
[0017]所述权限配置表用于管理系统中用户(或角色)与对象ID树中节点的关系,所述权限配置表中包括用户(或角色)标识字段,用于定位节点的对象ID和访问权限;若所述权限配置表中没有针对某用户(或角色)的记录,则表明该用户(或角色)拥有对所有数据对象的读写权限。所述权限配置表可以采用数据库表或配置文件等任何数据存储形式;所述访问权限包括读写、只读、禁止。
[0018]为了提高访问速度,系统在启动后将所述权限配置表中的数据缓存在内存中,当进行权限配置增删时,同样对内存中的记录进行增删;
[0019]第三步:添加与删除权限
[0020]针对一个用户(或角色),选中对象层次中的一个节点,选择一种数据访问权限,将用户(或角色)的标识、节点ID、权限名称写入所述权限配置表即可。
[0021]同样,删除权限时只需要将指定的权限记录从权限配置表中删除。权限的添加和删除均不需要操作对象ID树,也不需要对电网数据结构进行任何操作。
[0022]第四步:访问授权
[0023]当一个用户需要访问一个电网数据对象的时候,系统根据用户(或其所属角色)的标识查找内存中的权限配置表,获取与用户(或角色)相关的所有权限配置记录,然后在记录中查找是否有正在访问的对象的ID,如果有,则授予记录中设定的权限;如果没有找到相应的记录,则递归向上查找父节点,直到查到有记录的节点或者父节点为空(即达到根节点,没有找到);如果没有找到,则授予默认权限,如果找到,则授予最近的父节点的权限,从而达到继承父节点权限的效果。
[0024]本发明对比现有技术,有如下优点:
[0025]采用本方法控制电网对象层级权限,可以灵活配置到每一个层级,不必变更设计和存储结构;层级权限的自动继承特性使权限配置工作简化到最小,极大的提高了系统的易用性和操作效率。此外,本方法可用于HSDA、TSDA、GES接口的数据和视图权限控制,很大程度上提高了数据访问的安全性。
【附图说明】
[0026]图1是本发明的权限配置流程图;
[0027]图2是本发明的权限查找流程图;
【具体实施方式】
[0028]如图1所示,本发明提供一种电网对象层级权限配置与继承的方法,包括如下步骤:
[0029]第一步:建立对象ID树
[0030]每个电网数据对象都有一个全局唯一的ID,其类型包括是整形、字符串或其他数据类型。根据电网对象的层级关联建立对象ID的树形结构。每一个节点记录其唯一的父节点,最顶层节点的父节点为空。建立电网对象ID到对应节点的哈希映射表,用于通过ID快速定位节点。
[0031]第二步:建立权限配置表
[0032]所述权限配置表用于管理系统中用户(或角色)与对象ID树中节点的关系,所述权限配置表中有三个字段,分别是:用户(或角色)标识,可以用于定位节点的对象ID和访问权限(读写、只读、禁止)。若所述权限配置表中没有针对某用户(或角色)的记录,则表明该用户(或角色)拥有对所有数据对象的读写权限。所述权限配置表可以是数据库表
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1