审计知识共享平台的用户权限设计与实现
引言 审计知识共享平台是一论文联盟款专为审计机关实现统一知识管理和共享的平台。针对审计机关特殊的多级组织关系,系统将所有的资源划分有不同的访问级别,同时用户也被划分为多个级别。不同组织级别的用户具有不同的操作权限,并且用户的访问权限是动态变化的,因此设计出符合审计行业本身特点的用户权限管理是必要的。 本文借鉴RBAC的基本思想,引入角色的概念,为各级组织机构创建多重管理员角色,各级管理员可以按需创建和分配角色,并为角色设定不同的权限,再将角色赋予相应的用户,从而实现用户与权限相隔离,并灵活、安全的对系统访问权限进行控制。 1 RBAC基本思想 RBAC是目前较为成熟的统一资源访问控制方法。其基本思想是将权限分配给角色,而不是用户再根据用户的职责赋予一定的角色,用户根据所属的角色获得相应的权限[1],实现了用户与访问权限的逻辑分离。可简单用图1表示,即将整个访问过程分为两步:第一步,用户与角色相联系,通过角色使用户与访问权限在逻辑上分离;第二步,角色与访问权限相关联。 图1RBAC的基本思想 以角色为中介的用户和角色之间,角色和权限之间是两个多对多的分配关系,并且角色—权限分配相对稳定,用户—角色分配相对容易变化。根据业务的实际情况,做好角色分配权限的工作,包括角色增减、角色权限修改等,并为用户赋予相应的角色,从而减少了授权授予的复杂性,提高了用户权限管理的灵活性。 毕业论文 2 审计知识共享平台的用户权限分析与设计 该平台建立在审计行业的大背景下,主要完成对用户及知识资源的管理。审计行业有较为特殊的组织关系,审计署是我国最高审计机关,在其下有位于省、自治区的审计厅和位于直辖市的审计局(以下统称审计厅)。审计厅的下一级审计机关是位于市级的审计局,市级审计局的下一级审计机关是县级的审计局。由此便形成了一个有层次的树形结构,树的每个层次代表了级别的不同,每个子树代表了不同的审计机关分布,每个结点代表的用户角色处于不同的级别和不同的审计机关,从而形成了一个典型的层次结构,如图2所示,图中仅描述从审计署到市级审计局的组织结构,其下一级组织机构与此类似。 图2审计机关组织机构示意图 这种多级的组织机构将所有的资源划分有不同的访问级别,同时用户也被划分为多个级别。不同等级的审计机关具有不同的功能模块,同一级的不同审计单位不可访问其他审计单位的数据,甚至于相同单位的不同用户具体的功能菜单也不尽相同。在这种情况下,系统需要按照不同的组织级别为用户划分不同的权限,并且还要适应访问权限的动态变化,这样显得系统异常复杂。 鉴于该系统的用户可以大体分为用户管理员、知识管理员和普通用户,每类用户分工比较明确,因此,配合审计的组织机构,把基于角色的访问控制模型引入到该系统中,将不同类型的用户抽象为不同的角色,先为最高级审计机关(根结点)创建一个角色,由这个角色为其下属单位(子结点)按照实际需要分别创建角色,并为角色设置相应的业务操作权限,然后把角色再赋予各级相应的用户。 毕业论文 采用这种方式实现了权利下放,减轻了上级机关管理人员的负担,而且能方便的对系统权限进行管理。当系统增加新用户时,赋予其角色而不是权限;当需要增加新的权限时,把其分配给角色而不是每个用户;当用户权限改变时,不必逐个修改用户,只需更改相应角色包含的权限。这样大大减少了系统管理权限的工作量,提高了用户权限管理的灵活性。 根据功能需求建立基于角色的用户权限控制的关系模型,如图3所示,图中只给出了主要属性。 图3用户权限管理关系模型图 根据以上设计思想,在数据库中建立六张表:组织机构表定义组织机构相关信息;用户表主要记录用户的基本信息;角色表定义角色信息,一个角色代表拥有系统相似权限的一部分成员。用户所属角色表定 代写论文。