基于RBAC权限模型的设计与思考需求:1)不同的用户有不同的操作权限2)每个部门都有相应的权限,上级自动拥有下级权限3)企业的审核,应由企业所属地政府以及上级人员审核,比如芙蓉区的企业可以有芙蓉区政府工作人员以及长沙市工作人员审核,而其他地方人员不能审核4)有部分模块是公用的,即无需授权5)增删改查也需授权数据表设计:模块表:module字段类型说明ModuleIdint主键,自动生成ModuleNameVarchar(20)模块名字ModuleCodeVarchar(10)模块代号(必须唯一),作为授权凭据ModulePcodeVarchar(10)模块父代号,0表示根目录ModuleUrlVarchar(50)模块路径ModuleTypechar(1)1表示公共模块,2表示可以授权的模块,3表示系统模块不授权,由超级管理员直接操作(用户表字段adminFlag=1)动作表:effect(用来控制每个页面crud按钮)字段类型说明EffectCodeInt主键,自动生成EffectNameVarchar(10)如增加动作表用于直接插入插入数据库,1-增加,2-删除,3-修改,4-查询,5-导入,6-导出,7-审核,给每个页面授予动作时,基于二进制,如某人,A页面有查询增加1,修改2,查询4动作,相当于2x1+2x2+4x2=14,判断有权限14$2,删除权限14$~2,增加权限14|2>>5模块动作表:module_effect字段类型说明modeffIdint主键,自动生成ModuleCodeVarchar(10)模块代号EffectCodeInt动作idEffectNameVarchar(10)动作id对应的名字,可以不设该字段,考虑到方便建议有角色表:role字段类型说明roleIdInt主键roleNameVarchar(20)角色名字CreateTimeDate