系统的权限管理

转自:http://blog.csdn.net/A123638/article/details/50374555
我只是进行了一个学习,整理

设计目标

设计一个灵活、通用、方便的权限管理系统

一、相关概念

1.权限

       系统的所有权限信息。权限具有上下级关系,是一个树状的结构。
例如:
  系统管理
    用户管理
      查看用户
        新增用户
          修改用户
            删除用户
       对于上面的每个权限,又存在两种情况,一个是只是可访问,另一种是可授权,例如用户只被授予“可访问”,那么他就不能将他所具有的这个权限分配给其他人

2.用户

应用系统的具体操作者,用户可以自己拥有权限信息,可以归属于0~n个角色,可属于0~n个组。他的权限集是自身具有的权限、所属各角色具有的权限、所属各组具有的权限的合集。它与权限、角色、组之间的关系都是n对n的关系。

3.角色

为了对多个拥有相似权限的用户进行分类管理,定义了角色的概念。例如系统管理员、管理员、用户、访客等角色。角色具有上下级关系,可以形成树状视图,父级角色的权限是自身及它的所有子角色的权限的综合。父级角色的用户、父级角色的组同理可推。

4.组

       为了更好地管理用户,对用户进行分组归类,简称为用户分组。组也具有上下级关系,可以形成树状视图。在实际情况中,我们知道,组也可以具有自己的角色信息、权限信息。
       例如QQ用户群,一个群可以有多个用户,一个用户也可以加入多个群。每个群具有自己的权限信息。例如查看群共享。QQ群也可以具有自己的角色信息,例如普通群、高级群等。
四个对象之间的关系:
这里写图片描述

二、数据库设计

1.本系统至少需要十张表,分别为:

  • 权限表
  • 用户表
  • 角色表
  • 组表
  • 用户权限关联表
  • 用户角色关联表
  • 角色权限关联表
  • 组权限关联表
  • 组角色关联表
  • 用户属组关联表

2.PowerDesigner中的各表

PowerDesigner中设计文件下载地址:
这里写图片描述

3.表结构设计

3.1 用户表(TUser)

字段名称字段类型备注
记录标识tu_idbigintpk, not null
所属组织to_idbigintfk, not null
登录帐号login_namevarchar(64)not null
用户密码passwordvarchar(64)not null
用户姓名vsernamevarchar(64)not null
手机号mobilevarchar(20)
电子邮箱emailvarchar(64)
创建时间gen_timedatetimenot null
登录时间login_timedatetime
上次登录时间last_login_timedatetime
登录次数countbigintnot null

3.2 角色表(TRole)

字段名称字段类型备注
角色IDtr_idbigintpk, not null
父级角色IDparent_tr_idbigintnot null
角色名称role_namevarchar(64)not null
创建时间gen_timedatetimenot null
角色描述descriptionvarchar(200)

3.3权限表(TRight)

字段名称字段类型备注
权限IDtr_idbigintpk, not null
父权限parent_tr_idbigintnot null
权限名称right_namevarchar(64)not null
权限描述descriptionvarchar(200)

3.4 组表(TGroup)

字段名称字段类型备注
组IDtg_idbigintpk, not null
组名称group_namevarchar(64)not null
父组parent_tg_idbigintnot null
创建时间gen_timedatetimenot null
组描述descriptionvarchar(200)

3.5 角色权限表(TRoleRightRelation)

字段名称字段类型备注
记录标识trr_idbigintpk, not null
角色Role_idbigintfk, not null
权限right_idbigintfk, not null
权限类型right_typeintnot null(0:可访问,1:可授权)

3.6 组权限表(TGroupRightRelation)

字段名称字段类型备注
记录标识tgr_idbigintpk, not null
tg_idbigintfk, not null
权限tr_idbigintfk, not null
权限类型right_typeintnot null(0:可访问,1:可授权)

3.7 组角色表(TGroupRoleRelation)

字段名称字段类型备注
记录标识tgr_idbigintpk, not null
tg_idbigintfk, not null
角色tr_idbigintpk, not null

3.8 用户权限表(TUserRightRelation)

字段名称字段类型备注
记录标识tur_idbigintpk, not null
用户tu_idbigintfk, not null
权限tr_idbigintfk, not null
权限类型right_typeintnot null(0:可访问,1:可授权)

3.9 用户角色表(TUserRoleRelation)

字段名称字段类型备注
记录标识tur_idbigintpk, not null
用户tu_idbigintfk, not null
角色tr_idbigintfk, not null

3.10 用户组表(TUserGroupRelation)

字段名称字段类型备注
记录标识tug_idbigintpk, not null
用户tu_idbigintfk, not null
tg_idbigintfk, not null

3.11组织表(TOrganization)

字段名称字段类型备注
组织idto_idbigintpk, not null
父组parent_to_idbigintnot null
组织名称org_namevarchar(64)not null
创建时间gen_timedatetimenot null
组织描述descriptionvarchar(200)

3.12操作日志表(TLog)

字段名称字段类型备注
日志IDlog_idbigintpk, not null
操作类型op_typeintnot null
操作内容contentvarchar(200)not null
操作人tu_idbigintfk, not null
操作时间gen_timedatetimenot null

三、概要设计说明书

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值