`
starbhhc
  • 浏览: 631486 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

用户权限系统设计方案

阅读更多
核心提示:
本文介绍一个应用于企业应用通用的用户权限系统的设计框架,其设计思想与主要文档来源自 SunWu Software Studio 的 iSecurityManager 产品。本指南适用于体系结构设计人员和开发人员。 目录 简介 用户与角色 动作定义 应用模块 授权 总结 链接资源 简介
摘要
  本文介绍一个应用于企业应用通用的用户权限系统的设计框架,其设计思想与主要文档来源自 SunWu Software Studio 的 iSecurityManager® 产品。本指南适用于体系结构设计人员和开发人员。

简介
  安全始终是可信赖的企业应用的基石。
  在企业应用中,通常需要控制用户对业务操作的权限管理与控制。稍加分析不难发现这会涉及到这三个对象:用户/角色、动作/操作、授权状态,进一步分析,我们可发现“动作/操作”通常是针对某个特定的对象,譬如 『新增』动作可对应于『采购申请单』也可对应于『销售出库单』等,这些动作对应的对象我们将其称之为“应用模块”。
  至此,用户权限系统中的基本逻辑显形:谁(用户/角色)对什么(应用模块)是否具有某项操作(动作)的授权(授权状态:授予-Grant、拒绝-Deny、继承-Revoke)。


用户与角色
  使用权限的基本单位,角色是具有一组相同授权的用户的交集。用户与用户之间没有互相隶属的关系,它只可以隶属于角色,角色可以隶属于另一角色,并且可具有多重隶关系。
  用户或角色通常具有以下属性:
编号,在系统中唯一。
名称,在系统中唯一。
用户口令(角色无此属性)
  当然,在实际的商业应用中,可能还需要更多的属性来描述特定的业务需求。如在 iSecurityManager® 中用户和角色的信息

  有了用户和角色对象,还必须有一个描述他们之间隶属关系的对象,这样的对象我们称之为“成员关系(Member)”,通常它可能有如下属性:
用户编号
角色编号
  该“用户编号”和“角色编号”组合唯一约束,这里的“用户编号”可能是一个用户对象的编号,也可能是一个角色对象的编号,而“角色编号”则始终只能对应一个角色对象的编号。一个成员关系对象表示某个用户或角色隶属于另个角色。在 iSecurityManager® 中可能:用户/角色成员关系

  在 iSecurityManager® 中通过『成员设置』窗口来设置任何一个用户或角色(系统固定用户和角色除外)所隶属于的角色,也可以通过『角色属性』窗口来设置所属于当前角色的直接下级成员。

动作定义
  在涉及数据库操作的应用中,四个基本操作是“查看(Select)”、“删除(Delete)”、“新增(Insert)”以及“更新(Update)”。在一个企业应用中当然还会有更多其他的操作,尽管这些操作可能最终都基于这四个基本操作,也可能是其他的非数据操作,而我们始终无法在刚开始就完全固定这些可能的操作,为此,必须能让系统开发人员根据每个具体的应用模块来定义其所属的特定的动作/操作。
  动作/操作通常具有以下属性:
名称,在系统中唯一。
备注,描述动作/操作。 动作定义


  事实上,有些动作是需要针对具体的数据实例的,譬如“查看”、“删除”和“更新”等,这种对数据实例级别的控制比针对“应用模块”级的控制要更精细。譬如,某个用户能进行对【采购申请单】的各项操作,他应该能查看他刚填写的单据并进行某些适当的修改,但是他却不应该看到其他人填写的数据。那么,这种粗粒度的权限设置显然无法控制数据级的访问,在 iSecurityManager® 中,专门使用“流程控制”的方案和技术来达致更细粒度的对数据实例级的访问和控制。

应用模块
  应用模块通常是指对应于企业应用中的某种类型的业务单据,譬如 ERP 系统中的【采购申请单】、【销售出库单】、【客户基础资料】等,这些业务单据可能对应一或多张数据库表。如果从面向对象(Object Oriented)的视角去看,似乎可以将本文中所描述的这些概念理解成这样:“应用模块”是类,“动作/操作”则是类的方法,而“应用模块”对应的数据库表(表结构)则是类的属性,表中的这些数据/记录就是类的实例了。
  在定义规划系统中的“应用模块”时,通常还需要指定某个“应用模块”可能具有的“动作/操作”,而这些“动作/操作”由『动作定义』中进行了定义。注意:应用模块是系统中的一种逻辑组织单位。
  应用模块通常具有以下属性:
名称,在系统中唯一。
标题,描述动作/操作。
动作列表,表示该应用模块所可能具有的所有操作。
  在 iSecurityManager® 中“应用模块”的信息
应用模块定义
授权
  顾名思义,授权是指用户/角色能对哪些应用模块中的某些操作(动作)是否具有执行的许可。这里的“是否具有执行的许可”实际上指的是授权的三种状态:授予-Grant、拒绝-Deny、继承-Revoke。

授予:用户/角色对某个应用模块的某项操作具有执行的权力。
拒绝:用户/角色对某个应用模块的某项操作没有执行的权力。
继承:用户/角色对某个应用模块的某项操作是否具有执行的权力要取决于它的父角色的授权定义。
  如果对某个角色授予某项权力,其下属的用户或角色是可以覆盖该项授权定义的。默认情况下,采用就近优先、拒绝优先的原则。
  在 iSecurityManager® 中“授权设置”的

权限设置

总结
  通常“应用模块”和“动作定义”是由系统开发商在系统设计、开发阶段就定义好了,在系统交付给用户使用后就不再对此更改了(当然这也不是绝对的,不是吗?)。
  至此,有关用户权限的各项设置、定义都完成了,事实上,这并不会立即为你的应用系统带来任何安全保障,这只是一堆关于用户和授权定义的设置数据而已,还必须在应用系统中去应用这些设置数据并根据其定义的控制逻辑以对业务数据进行控制。如何利用这些用户授权数据来控制应用系统对业务数据的访问,有很多不同的解决方案,但是我认为建立一个中间数据存储层来统一所有客户端对数据源的存储访问是个不错的主意,并在这个数据访问层中应用安全设置来对业务数据的各种访问进行授权验证和控制,这样就可以统一各种客户端对数据存储的安全应用(事实上 iSecurityManager® 也正是如此处理这个问题的)。

分享到:
评论

相关推荐

    权限管理系统设计方案

    该文档为通用权限设计方案,其中通过分析用户、组、角色、权限等四个对象之间的关系具体描述权限设计的大致思路。

    权限设计方案(针对OA系统的特点,权限说明:)

    对于一个大企业的业务系统来说,如果要求管理员为其下员工逐一分配系统操作权限的话,是件耗时且不够方便的事情。所以,系统中就提出了对“组”进行操作的概念,将权限一致的人员编入同一组,然后对该组进行权限分配...

    涉密系统设计解决方案 三员管理.docx

    涉密系统设计解决方案 三员管理.docx涉密系统设计解决方案 三员管理.docx涉密系统设计解决方案 三员管理.docx涉密系统设计解决方案 三员管理.docx涉密系统设计解决方案 三员管理.docx涉密系统设计解决方案 三员管理....

    用户认证管理权限设计方案

    用户认证管理权限设计方案

    用户权限系统设计概述

    权限系统的核心由以下三部分构成:1.创造权限,2.分配权限,3.使用权限,然后,系统各部分的主要参与者对照如下:1.创造权限 - Creator创造,2.分配权限 - Administrator 分配,3.使用权限 - User:

    应用程序权限设计-权限的控制程度不同的设计方案

    我们在开发系统的时候,经常会遇到系统需要权限控制,而权限的控制程度不同有不同的设计方案。 1、基于角色的权限设计 2、基于操作的权限设计 3、基于角色和操作的权限设计 4、2,3组合的权限设计,其结构如下: 5、 ...

    基于部门和角色的权限管理系统的设计与实现

    基于部门和角色的权限管理系统的设计与实现的精品论文

    OA系统权限管理设计方案

    通过角色 赋予权限,是指没办法按职位或项目的分类来赋予权限的另一种方式,如:系统管理员,资 料备份员… b) 实例中:对于本系统中,全体人员应该默认都有的模块,如我的邮件,我的文档,我的 日志,我的考勤...

    用户权限管理设计方案

    主要是针对多用户系统权限的设计,提供简单的数据库表结构,浅显易懂,对于初学者有益。

    水电收费管理系统设计方案

    水电收费管理系统设计方案数据库设计水电收费管理系统具有规范实用的特点,能够规范高校的水电管理提高业务处理效率。从而使高校水电管理实现现代化管理手段。分析水电收费管理系统,了解其系统功能,根据系统功能所...

    车辆管理系统设计方案

    车辆管理系统设计方案,从各个方面进行详尽设计,包括驾驶员档案、车辆档案管理、油卡管理、车辆出车管理、车辆加油、车辆维修、车辆规费、车辆保养、车辆违章、车辆事故、车辆年审、车辆保险等,并有车辆年审到期...

    OA系统设计方案.doc

    系统安全 27 引言 1 编写目的 OA系统概要设计说明书是在客户提出的需求基础上,经过对OA系统需求规格说明书和 系统原型的分析和系统设计编写而成。用于将系统相关需求转换为未来系统的设计,提 交软件研发部门相关...

    网上商城系统设计方案.doc

    其功能模块划分如图所示: 图3-1 管理员子系统 图3—2 会员子系统 图3—3 商店管理员子系统 图3-4 系统管理员子系统 ----------------------- 网上商城系统设计方案全文共2页,当前为第1页。 网上商城系统设计方案...

    物资系统设计方案.docx

    第 1 页 共 30 页第 1 页 共 30 页 第 1 页 共 30 页 第 1 页 共 30 页 物资系统设计方案 物资系统设计方案全文共31页,当前为第1页。物资系统设计方案全文共31页,当前为第1页。物资管理系统 物资系统设计方案全文...

    KVM监控管理系统设计方案精品.docx

    KVM监控管理系统设计方案 一 系统概述 随着KVM技术旳发展,机房KVM监控管理系统已经不再是键盘、鼠标和显示屏旳简朴延伸。机房KVM监控管理系统整合了现代机房管理旳理念,为设备管理、顾客管理、顾客操作控制及顾客...

    软件系统设计方案.pdf

    软件系统设计⽅案 软件系统设计⽅案 前⾔ 前⾔ 本⽂根据⾼级软件⼯程课上所学知识,对⼯程实践项⽬-⽹上书城进⾏软件系统分析和设计,最终形成软件系统概念原型。 参考资料: ⼀、系统架构 ⼀、系统架构 系统采⽤MVC...

    。net图书管理系统设计方案

    数据库设计的基本原则是在MIS总体信息方案的指导下,各个库应当为它所支持的管理目标服务,在设计数据库系统时,应当重点考虑以下几个因素: (1)数据库必须层次分明,布局合理。 (2)数据库必须高度结构化,保证...

    XXX软件系统安全保障方案.doc

    软件系统安全保障方案,包括目录结构和一些通用性的描述。目录结果: 安全保障方案 1 ...6.2 用户权限管理 7 6.3 信息访问控制 8 6.4 系统日志与审计 8 6.5 数据完整性 8 7、 安全管理体系 8 8、 其他 9

    集团版本HR系统解决方案(超详细).docx

    4.2. 系统设计原则 20 4.3. 系统体系架构 21 4.4. 系统技术结构 23 4.5. 网络拓扑结构 23 4.6. 系统特点 24 4.6.1. 功能特点 24 4.6.2. 技术特点 27 第5.章 XXHR解决方案 30 5.1. 总体建设目标 30 5.2. HR系统功能...

Global site tag (gtag.js) - Google Analytics