开源权限系统sshpermissions

第一章 引言

1.1 编写目的

使用easyui+ssh2+shiro的权限管理系统,粒度可细化到按钮及菜单级别。目前是第一个稳定版本,可实现基本的权限控制功能,并且可以使用shiro的标签对细粒度的权限进行管理。

Jar包除了几个核心包之外全部使用maven管理。

1.2 是否开源

完全开源免费。

地址是:

https://code.google.com/p/sshpermissions/

需要源码的可以通过svn下载

地址是:

http://sshpermissions.googlecode.com/svn/trunk/

 

第一章 设计思路

1.1 基于RBAC

RBAC认为权限授权实际上是Who、What、How的问题。在RBAC模型中,who、what、how构成了访问权限三元组,也就是“Who对What(Which)进行How的操作”。   

Who:权限的拥用者或主体(如Principal、User、Group、Role、Actor等等)

What:权限针对的对象或资源(Resource、Class)。   

How:具体的权限(Privilege,正向授权与负向授权)。   

Operator:操作。表明对What的How操作。也就是Privilege+Resource   Role:角色,一定数量的权限的集合。权限分配的单位与载体,目的是隔离User与Privilege的逻辑关系.   

Group:用户组,权限分配的单位与载体。权限不考虑分配给特定的用户而给组。组可以包括组(以实现权限的继承),也可以包含用户,组内用户继承组的权限。User与Group是多对多的关系。Group可以层次化,以满足不同层级权限控制的要求。   RBAC的关注点在于Role和User, Permission的关系。称为User assignment(UA)和Permission assignment(PA).关系的左右两边都是Many-to-Many关系。就是user可以有多个role,role可以包括多个user。

 

1.2 数据模型

 

 

第一章 系统操作

1.1 登录

部署完成后需要输入:

http://localhost:8080/sshpermission

进入登录界面

 

输入管理员

用户名:admin

密码:admin

进入系统

 

1.2 资源信息维护

维护系统的资源信息,资源指的是系统中所有的除按钮外的相关信息,比如菜单,首页显示列表等。

 

1.3 角色管理

维护系统角色信息,可对系统进行分配资源授权和操作授权。

角色维护

 

资源分配

 

操作分配

 

1.4 组管理

维护一组用户的信息,可以跟角色和用户进行组合。可以向组内添加用户,可以给组添加角色。

 

向组内添加用户

 

给组授权角色

 

1.5 系统字典维护

维护系统内的字典数据。

 

你可能感兴趣的:(Permission)