介绍
· 弘图伟业企业信息化系统开发平台是一个JavaEE企业级项目的快速开发平台,提供了底层抽象和通用功能,拿来即用。采用最先进的JavaEE技术和架构。
核心功能
· 通用的DAO、Service、Controller抽象,从CRUD中解放
· 简单的分页、排序、查询抽象,更快的开发速度
· 借助spring实现简单的数据绑定、类型转换、验证、格式化
· 提供基础的用户、组织机构、角色等管理
· 提供基于资源的细粒度授权管理,灵活的授权模型实现了标准的RBAC权限管理模型
技术架构
![图片](https://i-blog.csdnimg.cn/blog_migrate/98224223419d6dfffd26cdb8ba8307cb.png)
安全架构
本平台采用基于角色的访问控制方法(RBAC)权限模型作为权限设计思想。在 RBAC之中,包含用户users(USERS)、角色roles(ROLES)、目标objects(OBS)、操作operations(OPS)、许可权permissions(PRMS)五个基本数据元素,权限被赋予角色,而不是用户,当一个角色被指定给一个用户时,此用户就拥有了该角色所包含的权限。会话sessions是用户与激活的角色集合之间的映射。RBAC0与传统访问控制的差别在于增加一层间接性带来了灵活性,RBAC1、 RBAC2、RBAC3都是先后在RBAC0上的扩展。RBAC0模型如下图所示:
RBAC1引入角色间的继承关系
角色间的继承关系可分为一般继承关系和受限继承关系。一般继承关系仅要求角色继承关系是一个绝对偏序关系,允许角色间的多继承。而受限继承关系则进一步要求角色继承关系是一个树结构
RBAC2模型中添加了责任分离关系
RBAC2 的约束规定了权限被赋予角色时,或角色被赋予用户时,以及当用户在某一时刻激活一个角色时所应遵循的强制性规则。责任分离包括静态责任分离和动态责任分离。约束与用户-角色-权限关系一起决定了RBAC2模型中用户的访问许可
RBAC3包含了RBAC1和RBAC2
既提供了角色间的继承关系,又提供了责任分离关系.RBAC3模型如下图:
本平台选用RBAC2模型,即在RBAC0模型的基础上增加角色互斥的关系。
技术选型
管理
· myeclipse项目开发和管理
后端
· IoC容器 spring
· web框架 springmvc
· orm框架 hibernate
· 安全框架 shiro
· 验证框架 hibernatevalidator
· 任务调度框架 quartz
· 缓存 ehcache
· 数据源 druid
· 日志 slf4j+log4j
· Json fastjson
前端
· jquery-easyui js框架
数据库
· 目前只支持mysql,建议mysql5.5及以上
支持的浏览器
· chrome
· firefox(目前使用firefox 34)
· ie7及以上(建议ie9以上,获取更好的体验)
· 其他浏览器暂时未测试
系统界面截图
系统现状
由于时间有限,目前还处是1.0版本,还更进一步完善的空间。期待后续版本。