首先,白话一下RBAC模型.RBAC是基于角色的访问控制(Role-Based Access Control)的简称.RBAC认为权限授权实际上是Who.What.How的问题.在RBAC模型中,who.what.how构成了访问权限三元组,也就是"Who对What进行How操作".至于RBAC模型具体包含哪些内容,网上有很多相关的资料,可以参考一下.下面,主要写写自己对RBAC的理解和在Xianfeng平台中的应用. 理解RBAC,还是从""Who对What进行H…
权限管理:是通过系统对用户的行为进行控制的一套业务规则,可以做得很简单,比如通过硬编码的方式进行控制,也可以做得很复杂,比如通过一些复杂的权限模型去实现一些复杂的权限控制,比如菜单访问权限.按钮操作权限.数据访问权限等 Xianfeng轻量级Java中间件平台,基于RBAC权限模型,实现一套通用的权限,具体实现思路等之后再进行汇总整理,先对已经实现的功能进行展示 权限管理涉及到几个方面的功能,主要有功能管理.角色管理.角色权限管理和用户角色管理,功能管理详见Xianfeng轻量级Java中间件平…
关于Xianfeng轻量级Java中间件平台,考虑到需要控制开发周期,通过分期开发的方式来实现一些基础的.常用的功能,这样有利于跟踪开发计划.一期的开发计划,主要实现的目标如下: 系统架构: 1.确定技术路线(前.后台主要用到的框架): 2.搭建开发环境(一期计划完成之后再开放源代码,暂时使用SVN在本地管理): 3.模块化划分功能层次结构.代码层次结构: 4.封装核心的API. 平台功能: 1.用户管理: 2.权限管理(基于RBAC模型): 3.登录注销: 4.用户审计(包含登录日志查询.访问…
通过菜单管理,可以实现系统菜单的权限控制.用户个性化菜单功能等,当然很多系统支持在线开发,不用专门的开发工具编写代码,通过一些简单的设置就能开发出新的功能,有新功能增加到系统中,菜单管理功能也是必不可少的 平台为了给以后功能扩展留下接口,菜单管理功能包含菜单分类管理和菜单管理两块功能,菜单分类管理功能的引入,主要是为了实现个性化菜单功能打下基础 上周放端午节,开发进度没有跟上,不过大体的架子都已经做出来了,看看菜单分类管理功能的页面吧 整个页面风格都用LigerUI来布局,顶部LOGO区(后期会…
流水号管理:现实中,经常都会和流水号打交道,至于什么是流水号,简而言之,就是按照特定格式要求产生的一个号码,并且总是按照递增的规则生成的,对于要求比较高的业务,需要流水号是连续的,比如移动营业厅排号小纸条上的号码"B0012",就是一个典型的流水号,还有一些流水号和日期相关,比如"20140525第103号"等 流水号定义维护页面,如下图所示: 平台除了提供维护流水号定义的功能之外,还有后台JAVA接口,用于产生最新的流水号,比如编码为"SYS_DEMO_…
用户管理:简单地说,就是管理系统用户的账号信息.在典型的业务系统中,用户管理往往不包含用户隶属组织机构相关属性(比如部门.岗位等)的维护,而是由组织机构管理专门去维护.因此在用户管理的功能中,主要就维护账号信息,比如登录名.密码.预留安全问题等. 另外,不同的用户有不同的角色,因此用户管理功能要包含给用户分角色的功能,称之为"权限管理". 用户管理的列表页面如下图所示: 可以通过"增加"按钮新增新的用户,或者通过"修改"按钮修改已有用户,如下图所…
功能管理:从功能类型来看,不属于用户使用的功能,而属于系统维护使用的功能,因为对于用户来说,是不可见的.功能管理的作用是定义一套规则,用来处理权限等业务,比如常见的菜单权限控制.按钮权限控制等情景 在设计方面,为了简化功能数据模型,涉及到几个概念 模块(Module):功能集合,用于给整个系统的功能按照子系统的结构分模块,比如"系统管理"等 功能(Function):实际的业务功能单元,对应一个完整的业务相关的所有业务操作的集合,比如"流水号管理"等 操作(Oper…
属性管理:主要功能是维护一些系统定义的.业务定义的属性数据,至于属性是什么,简单的说就是由键key和值value组成的数据,属性查询列表页面如下: 表格实现了直接编辑的功能 字典管理:主要功能是维护一些系统定义的.业务定义的字典数据,至于字典是什么,简单的说,就是具有如下格式的数据结构的数据 性别:{-1:未知,0:女,1:男} 性别作为字典的名称,而男.女都为字典性别的字典项,当然作为一个通用的组件,字典项需要支持多级级联和排序功能 字典查询列表页面如下: 表格都实现了简单的增.删.改.查 字…
RBAC(基于角色的访问控制):英文名称Rose base Access Controller.本博客介绍这种模型的权限系统设计.取消了用户和权限的直接关联,改为通过用户关联角色.角色关联权限的方法来间接地赋予用户权限.从而实现了解耦.RBAC在发展过程中分为以下几个版本.RBAC0.RBAC1.RBAC2.RBAC3. RBAC0,这是RBAC的初始形态,也是最原始.最简单的RBAC版本: RBAC1,基于RBAC0的优化,增加了角色的分层(即:子角色),子角色可以继承父角色的所有权限: RB…
一.什么是RABC RBAC(基于角色的权限控制)模型的核心是在用户和权限之间引入了角色的概念.取消了用户和权限的直接关联,改为通过用户关联角色.角色关联权限的方法来间接地赋予用户权限(如下图),从而达到用户和权限解耦的目的. RABC的好处 职能划分更谨慎.对于角色的权限调整不仅仅只影响单个用户,而是会影响关联此角色的所有用户,管理员下发/回收权限会更为谨慎: 便于权限管理.对于批量的用户权限调整,只需调整用户关联的角色权限即可,无需对每一个用户都进行权限调整,既大幅提升权限调整的效率,又降低…