介紹
· 弘圖偉業企業資訊化系統開發平台是一個JavaEE企業級項目的快速開發平台,提供了底層抽象和通用功能,拿來即用。采用最先進的JavaEE技術和架構。
核心功能
· 通用的DAO、Service、Controller抽象,從CRUD中解放
· 簡單的分頁、排序、查詢抽象,更快的開發速度
· 借助spring實作簡單的資料綁定、類型轉換、驗證、格式化
· 提供基礎的使用者、組織機構、角色等管理
· 提供基于資源的細粒度授權管理,靈活的授權模型實作了标準的RBAC權限管理模型
技術架構
安全架構
本平台采用基于角色的通路控制方法(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版本,還更進一步完善的空間。期待後續版本。