ITPub博客

首页 > Linux操作系统 > Linux操作系统 > [转载]权限设计nbsp;二nbsp;(结构部分)

[转载]权限设计nbsp;二nbsp;(结构部分)

原创 Linux操作系统 作者:dinner1007 时间:2019-05-03 14:15:06 0 删除 编辑
权限设计nbsp;二nbsp;(结构部分)
2 结构


系统分为三个部分
资源系统:改系统完成对资源的管理
组织机构模块:完成对组织结构的管理
权限平台:完成对资源操作的权限控制,它与前俩个系统是独立的,实现不依赖于特定的资源系统和组织结构。
权限数据库:存储了权限的相关数据。它的结构同权限平台一样,不依赖于资源系统和组织机构模块
2.1以下结实了每个部分完成的具体功能2.1.1资源系统:
资源系统提供了对资源的操作,在操作某资源前,必须请求资源平台验证是否有权限操作,如下图所示:



资源系统必须提供验证“资源范围”的功能,即某一资源范围是否属于另一资源范围,它是权限平台提供权限验证的一个依据。如果资源系统提供的标示(String)蕴涵了此含义,则资源系统不需要提供,权限平台按正则表达式来验证如:在oss中,号码“6*” 包含了号码“61*”,但不包含“5*”。

2.1.2 组织结构
无论组织结构是如何组织的,对于权限系统,并不关心,权限系统只关心1)机构中的user具有哪些权限,2)每个机构具有哪些权限,3)哪些组织结构影响了user(默认的总是user所在的直接组织影响该user).所以,开发人员必须围绕以上三点进行适当的界面开发并将用户所拥有的权限通过权限平台提供的interface写到权限数据库中。不论是机构还是机构下的用户,总是通过资源系统提供的“范围”功能来获得权限
2.1.3权限平台
权限平台提供了所有的权限操作,包括权限的验证,用户权限的装载,持久性等
2.1.3.1权限验证:每个用户在权限平台里都有一个policy,在操作某资源前,总是构造一个与该资源,该操作相关的permission,然后严正该permisssion 是否被policy包含,如果包含,则表示有权限。系统管理员拥有allPermission,所以总是有权操作任何资源
2.1.3.2 用户权限装载:从权限数据库中读取该用户的所有权限并构成polic(会有性能问题?)
2.1.3.3 持久性:系统管理员,或者管理员对用户分配了一定的权限,这些权限总是被保存到权限数据库里。详细见权限数据库
2.1.4 权限数据库:整个权限平台的核心。它具有如下结构



2.2 UML
2.2.1 权限数据库部分



2.2.2 permission 部分


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/374079/viewspace-132312/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-08-23

  • 博文量
    1714
  • 访问量
    1297202