《通用权限管理系统开发文档(共21页).docx》由会员分享,可在线阅读,更多相关《通用权限管理系统开发文档(共21页).docx(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上通用权限管理系统开发文档部门:地理信息部作者:王立彪版本:1.0时间:2017-01-13目录专心-专注-专业1. 简单模型描述1.1. E-R图图1-1 整体E-R1.2. 表格清单名称描述shiro_user 系统用户表shiro_role 系统角色表shiro_dept 系统部门表shiro_resource 系统资源表shiro_permission 系统权限表shiro_group 系统组表shiro_user_role系统用户与角色关系表shiro_role_resource系统角色与资源关系表shiro_role_permission 系统角色与权限关系
2、表shiro_group_user系统组与用户关系表shiro_resource_permission系统资源与权限关系表shiro_group_role系统组与角色关系表shiro_linecese 系统许可证表shiro_machine_binding系统机器绑定表shiro_rsa_keys系统非对称加密秘钥表1.3. 外键清单名称父表格子表格外键列FK_SHIRO_GR_REFERENCE_SHIRO_DEshiro_dept shiro_groupdept_idFK_SHIRO_GR_REFERENCE_SHIRO_GRshiro_groupshiro_group_rolegroup
3、_idFK_SHIRO_GR_REFERENCE_SHIRO_ROshiro_role shiro_group_role role_idFK_SHIRO_GU_REFERENCE_SHIRO_GRshiro_group shiro_group_usergroup_idFK_SHIRO_GU_REFERENCE_SHIRO_USshiro_usershiro_group_useruser_idFK_SHIRO_MB_REFERENCE_SHIRO_LIshiro_lineceseshiro_machine_bindinglinecese_idFK_SHIRO_MB_REFERENCE_SHIRO
4、_RKshiro_rsa_keysshiro_machine_bindingkey_idFK_SHIRO_RE_REFERENCE_SHIRO_PEshiro_permissionshiro_resource_permissionpermission_idFK_SHIRO_RE_REFERENCE_SHIRO_REshiro_resourceshiro_resource_permissionresource_idFK_SHIRO_RO_REFERENCE_SHIRO_DEshiro_deptshiro_roledept_idFK_SHIRO_RP_REFERENCE_SHIRO_PEshiro
5、_permissionshiro_role_permissionpermission_idFK_SHIRO_RP_REFERENCE_SHIRO_ROshiro_roleshiro_role_permissionrole_idFK_SHIRO_RR_REFERENCE_SHIRO_REshiro_resourceshiro_role_resourceresource_idFK_SHIRO_RR_REFERENCE_SHIRO_ROshiro_roleshiro_role_resourcerole_idFK_SHIRO_UR_REFERENCE_SHIRO_ROshiro_roleshiro_u
6、ser_rolerole_idFK_SHIRO_UR_REFERENCE_SHIRO_USshiro_usershiro_user_roleuser_idFK_SHIRO_US_REFERENCE_SHIRO_DEshiro_deptshiro_userdept_id名称描述view_shiro_user_resource查询用户拥有的资源view_shiro_user_role_permission查询用户所关联角色的权限1.4. 视图清单1.5. 序列清单名称 描述SHIRO_USER_ID_SEQ系统用户表主键序列SHIRO_ROLE_ID_SEQ系统角色表主键序列SHIRO_GROUO
7、P_ID_SEQ系统组表主键序列SHIRO_RESOURCE_ID_SEQ系统资源表主键序列SHIRO_PERMISSION_ID_SEQ系统权限表主键序列SHIRO_LINECESE_ID_SEQ系统许可证表主键序列SHIRO_RSA_KEYS_ID_SEQ系统非对称加密秘钥表主键序列SHIRO_MACHINE_BINDING_ID_SEQ系统机器绑定表主键序列2. 完全模型描述2.1. E-R图图2-1 整体E-R2.2. 表格清单2.2.1. 表格shiro_user(系统用户表)名称注释数据类型长度不能为空是否主键是否外键id项目编号NUMBER(10)10TRUETRUEFALSEd
8、ept_id部门编号VARCHAR2(64)64FALSEFALSETRUEusername用户名称VARCHAR2(32)32FALSEFALSEFALSEpassword密码VARCHAR2(255)255FALSEFALSEFALSEsalt秘钥VARCHAR2(255)255FALSEFALSEFALSEstatus状态VARCHAR2(16)16FALSEFALSEFALSEcreate_time账号创建时间DATEFALSEFALSEFALSEmodify_password_time最后一次修改密码的时间DATEFALSEFALSEFALSE2.2.2. 表格shiro_role(
9、系统角色表)名称注释数据类型长度不能为空是否主键是否外键id项目编号NUMBER(10)10TRUETRUEFALSEname角色名称VARCHAR2(32)32FALSEFALSEFALSEdescription描述VARCHAR2(255)255FALSEFALSEFALSEavailable是否可用NUMBER(10)10FALSEFALSEFALSEdept_id部门编号VARCHAR2(64)64FALSEFALSETRUE2.2.3. 表格shiro_dept(系统部门表)名称注释数据类型长度不能为空是否主键是否外键id项目编号VARCHAR2(64)64TRUETRUEFALSE
10、name名称VARCHAR2(64)64FALSEFALSEFALSEparent_id上级编号VARCHAR2(64)64FALSEFALSEFALSEbounds范围区域MDSYS.SDO_GEOMETRYFALSEFALSEFALSElevel单位等级NUMBER(10)10FALSEFALSEFALSE2.2.4. 表格shiro_resource(系统资源表)名称注释数据类型长度不能为空是否主键是否外键id项目编号NUMBER(6)6TRUETRUEFALSEtype类型VARCHAR2(20)20FALSEFALSEFALSEresource资源VARCHAR2(50)50FALS
11、EFALSEFALSEpriority优先级NUMBER(10)10FALSEFALSEFALSEicon图标VARCHAR2(50)50FALSEFALSEFALSEparentId上级编号NUMBER(10)10FALSEFALSEFALSEname名称VARCHAR2(50)50FALSEFALSEFALSEtarget目标地址VARCHAR2(50)50FALSEFALSEFALSEis_out是否站外NUMBER(10)10FALSEFALSEFALSEcss样式VARCHAR2(50)50FALSEFALSEFALSE2.2.5. 表格shiro_permission(系统权限表)
12、名称注释数据类型长度不能为空是否主键是否外键id项目编号NUMBER(10)10TRUETRUEFALSEname名称VARCHAR2(32)32FALSEFALSEFALSEtype类型VARCHAR2(16)16FALSEFALSEFALSEparent_id上级编号NUMBER(10)10FALSEFALSEFALSEpermission权限VARCHAR2(128)128FALSEFALSEFALSEpriority优先级NUMBER(10)10FALSEFALSEFALSE2.2.6. 表格shiro_group(系统组表)名称注释数据类型长度不能为空是否主键是否外键id项目编号NU
13、MBER(10)10TRUETRUEFALSEname名称VARCHAR2(50)50FALSEFALSEFALSEdescription描述VARCHAR2(100)100FALSEFALSEFALSEdept_id部门编号VARCHAR2(64)64FALSEFALSETRUE2.2.7. 表格shiro_user_role(系统用户与角色关系表)名称注释数据类型长度不能为空是否主键是否外键user_id用户编号NUMBER(10)10FALSEFALSETRUErole_id角色编号NUMBER(10)10FALSEFALSETRUE2.2.8. 表格shiro_role_resourc
14、e(系统角色与资源关系表)名称注释数据类型长度不能为空是否主键是否外键role_id角色编号NUMBER(10)10FALSEFALSETRUEresource_id资源编号NUMBER(10)10FALSEFALSETRUE2.2.9. 表格shiro_role_permission(系统角色与权限关系表)名称注释数据类型长度不能为空是否主键是否外键role_id角色编号NUMBER(10)10FALSEFALSETRUEpermission_id资源编号NUMBER(10)10FALSEFALSETRUE2.2.10. 表格shiro_group_user(系统组与用户关系表)名称注释数据
15、类型长度不能为空是否主键是否外键group_id组编号NUMBER(10)10FALSEFALSETRUEuser_id用户编号NUMBER(10)10FALSEFALSETRUE2.2.11. 表格shiro_reource_permission(系统资源与权限关系表)名称注释数据类型长度不能为空是否主键是否外键resource_id资源编号NUMBER(10)10FALSEFALSETRUEpermission_id权限编号NUMBER(10)10FALSEFALSETRUE2.2.12. 表格shiro_group_role(系统组与角色关系表)名称注释数据类型长度不能为空是否主键是否外
16、键group_id组编号NUMBER(10)10FALSEFALSETRUErole_id角色编号NUMBER(10)10FALSEFALSETRUE2.2.13. 表格shiro_linecese(系统许可证表)名称注释数据类型长度不能为空是否主键是否外键id项目编号NUMBER(6)6TRUETRUEFALSEis_used是否使用NUMBER(10)10FALSEFALSEFALSEsource序列号VARCHAR2(50)50FALSEFALSEFALSEvalidity_date有效时间DATEFALSEFALSEFALSE2.2.14. 表格shiro_machine_bindin
17、g(系统机器绑定表)名称注释数据类型长度不能为空是否主键是否外键id项目编号NUMBER(6)6TRUETRUEFALSEmachine_code机器码VARCHAR2(42)42FALSEFALSEFALSElinecese_id证书编号NUMBER(10)10FALSEFALSETRUEstatus状态VARCHAR2(10)10FALSEFALSEFALSEkey_idKey编号NUMBER(10)10FALSEFALSETRUE2.2.15. 表格shiro_ras_keys(系统非对称加密秘钥表)名称注释数据类型长度不能为空是否主键是否外键id项目编号NUMBER(6)6TRUETR
18、UEFALSEpublic_key公钥CLOBFALSEFALSEFALSEprivate_key私钥CLOBFALSEFALSEFALSE2.3. 外键清单2.3.1. 外键FK_SHIRO_GR_REFERENCE_SHIRO_DE2.3.1.1. 外键FK_SHIRO_GR_REFERENCE_SHIRO_DE的描述名称FK_SHIRO_GR_REFERENCE_SHIRO_DE子表格shiro_group父表格shiro_dept外键列dept_id2.3.1.2. 外键FK_SHIRO_GR_REFERENCE_SHIRO_DE的连接清单名称父表格列子表格列id = dept_idi
19、ddept_id2.3.2. 外键FK_SHIRO_GR_REFERENCE_SHIRO_GR2.3.2.1. 外键FK_SHIRO_GR_REFERENCE_SHIRO_GR的描述名称FK_SHIRO_GR_REFERENCE_SHIRO_GR子表格shiro_group_role父表格shiro_group外键列group_id2.3.2.2. 外键FK_SHIRO_GR_REFERENCE_SHIRO_GR的连接清单名称父表格列子表格列id = group_ididgroup_id2.3.3. 外键FK_SHIRO_GR_REFERENCE_SHIRO_RO2.3.3.1. 外键FK_S
20、HIRO_GR_REFERENCE_SHIRO_RO的描述名称FK_SHIRO_GR_REFERENCE_SHIRO_RO子表格shiro_group_role父表格shiro_role外键列role_id2.3.3.2. 外键FK_SHIRO_GR_REFERENCE_SHIRO_RO的连接清单名称父表格列子表格列id = role_ididrole_id2.3.4. 外键FK_SHIRO_GU_REFERENCE_SHIRO_GR2.3.4.1. 外键FK_SHIRO_GU_REFERENCE_SHIRO_GR的描述名称FK_SHIRO_GU_REFERENCE_SHIRO_GR子表格sh
21、iro_group_user父表格shiro_group外键列group_id2.3.4.2. 外键FK_SHIRO_GU_REFERENCE_SHIRO_GR的连接清单名称父表格列子表格列id = group_ididgroup_id2.3.5. 外键FK_SHIRO_GU_REFERENCE_SHIRO_US2.3.5.1. 外键FK_SHIRO_GU_REFERENCE_SHIRO_US的描述名称FK_SHIRO_GU_REFERENCE_SHIRO_US子表格shiro_group_user父表格shiro_user外键列user_id2.3.5.2. 外键FK_SHIRO_GU_RE
22、FERENCE_SHIRO_US的连接清单名称父表格列子表格列id = user_ididuser_id2.3.6. 外键FK_SHIRO_MB_REFERENCE_SHIRO_LI2.3.6.1. 外键FK_SHIRO_MB_REFERENCE_SHIRO_LI的描述名称FK_SHIRO_MB_REFERENCE_SHIRO_LI子表格shiro_machine_binding父表格shiro_linecese外键列linecese_id2.3.6.2. 外键FK_SHIRO_MB_REFERENCE_SHIRO_LI的连接清单名称父表格列子表格列id = linecese_ididline
23、cese_id2.3.7. 外键FK_SHIRO_MB_REFERENCE_SHIRO_RK2.3.7.1. 外键FK_SHIRO_MB_REFERENCE_SHIRO_RK的描述名称FK_SHIRO_MB_REFERENCE_SHIRO_RK子表格shiro_machine_binding父表格shiro_rsa_keys外键列key_id2.3.7.2. 外键FK_SHIRO_MB_REFERENCE_SHIRO_RK的连接清单名称父表格列子表格列id = key_ididkey_id2.3.8. 外键FK_SHIRO_RE_REFERENCE_SHIRO_PE2.3.8.1. 外键FK_
24、SHIRO_RE_REFERENCE_SHIRO_PE的描述名称FK_SHIRO_RE_REFERENCE_SHIRO_PE子表格shiro_resource_permission父表格shiro_permission外键列permission_id2.3.8.2. 外键FK_SHIRO_RE_REFERENCE_SHIRO_PE的连接清单名称父表格列子表格列id = permission_ididpermission_id2.3.9. 外键FK_SHIRO_RE_REFERENCE_SHIRO_RE2.3.9.1. 外键FK_SHIRO_RE_REFERENCE_SHIRO_RE的描述名称F
25、K_SHIRO_RE_REFERENCE_SHIRO_RE子表格shiro_resource_permission父表格shiro_resource外键列resource_id2.3.9.2. 外键FK_SHIRO_RE_REFERENCE_SHIRO_RE的连接清单名称父表格列子表格列id = resource_ididresource_id2.3.10. 外键FK_SHIRO_RO_REFERENCE_SHIRO_DE2.3.10.1. 外键FK_SHIRO_RO_REFERENCE_SHIRO_DE的描述名称FK_SHIRO_RO_REFERENCE_SHIRO_DE子表格shiro_r
26、ole父表格shiro_dept外键列dept_id2.3.10.2. 外键FK_SHIRO_RO_REFERENCE_SHIRO_DE的连接清单名称父表格列子表格列id = dept_ididdept_id2.3.11. 外键FK_SHIRO_RP_REFERENCE_SHIRO_PE2.3.11.1. 外键FK_SHIRO_RP_REFERENCE_SHIRO_PE的描述名称FK_SHIRO_RP_REFERENCE_SHIRO_PE子表格shiro_role_permission父表格shiro_permission外键列permission_id2.3.11.2. 外键FK_SHIRO
27、_RP_REFERENCE_SHIRO_PE的连接清单名称父表格列子表格列id = permission_ididpermission_id2.3.12. 外键FK_SHIRO_RP_REFERENCE_SHIRO_RO2.3.12.1. 外键FK_SHIRO_RP_REFERENCE_SHIRO_RO的描述名称FK_SHIRO_RP_REFERENCE_SHIRO_RO子表格shiro_role_permission父表格shiro_role外键列role_id2.3.12.2. 外键FK_SHIRO_RP_REFERENCE_SHIRO_RO的连接清单名称父表格列子表格列id = role
28、_ididrole_id2.3.13. 外键FK_SHIRO_RR_REFERENCE_SHIRO_RE2.3.13.1. 外键FK_SHIRO_RR_REFERENCE_SHIRO_RE的描述名称FK_SHIRO_RR_REFERENCE_SHIRO_RE子表格shiro_role_resource父表格shiro_resource外键列resource_id2.3.13.2. 外键FK_SHIRO_RR_REFERENCE_SHIRO_RE的连接清单名称父表格列子表格列Id = resource_ididresource_id2.3.14. 外键FK_SHIRO_RR_REFERENCE_
29、SHIRO_RO2.3.14.1. 外键FK_SHIRO_RR_REFERENCE_SHIRO_RO的描述名称FK_SHIRO_RR_REFERENCE_SHIRO_RO子表格shiro_role_resource父表格shiro_role外键列role_id2.3.14.2. 外键FK_SHIRO_RR_REFERENCE_SHIRO_RO的连接清单名称父表格列子表格列id = role_ididrole_id2.3.15. 外键FK_SHIRO_UR_REFERENCE_SHIRO_RO2.3.15.1. 外键FK_SHIRO_UR_REFERENCE_SHIRO_RO的描述名称FK_SH
30、IRO_UR_REFERENCE_SHIRO_RO子表格shiro_user_role父表格shiro_role外键列role_id2.3.15.2. 外键FK_SHIRO_UR_REFERENCE_SHIRO_RO的连接清单名称父表格列子表格列id = role_ididrole_id2.3.16. 外键FK_SHIRO_UR_REFERENCE_SHIRO_US2.3.16.1. 外键FK_SHIRO_UR_REFERENCE_SHIRO_US的描述名称FK_SHIRO_UR_REFERENCE_SHIRO_US子表格shiro_user_role父表格shiro_user外键列user_
31、id2.3.16.2. 外键FK_SHIRO_UR_REFERENCE_SHIRO_US的连接清单名称父表格列子表格列id = user_ididuser_id2.3.17. 外键FK_SHIRO_US_REFERENCE_SHIRO_DE2.3.17.1. 外键FK_SHIRO_US_REFERENCE_SHIRO_DE的描述名称FK_SHIRO_US_REFERENCE_SHIRO_DE子表格shiro_user父表格shiro_dept外键列dept_id2.3.17.2. 外键FK_SHIRO_US_REFERENCE_SHIRO_DE的连接清单名称父表格列子表格列id = dept_
32、ididdept_id2.4. 视图清单2.4.1. 视图view_shiro_user_resource2.4.1.1. 视图view_shiro_user_resource的描述名称view_shiro_user_resource 描述查询用户拥有的资源2.4.1.2. 视图view_shiro_user_resource的SQL查询SELECTr. ID, r. TYPE, r.resource, r.priority, r.icon, r.parentid, r. NAME,r.css, r.target, r.is_out, ur.user_id, NULL : INTEGER AS
33、 group_idFROM(shiro_resource rLEFT JOIN shiro_role_resource rr ON (rr.resource_id = r. ID)LEFT JOIN shiro_user_role ur ON (ur.role_id = rr.role_id)UNION ALLSELECTr. ID, r. TYPE, r.resource, r.priority, r.icon, r.parentid, r. NAME,r.css, r.target, r.is_out, gu.user_id, gr.group_idFROM(shiro_resource
34、rLEFT JOIN shiro_role_resource rr ON (rr.resource_id = r. ID)LEFT JOIN shiro_group_role gr ON (gr.role_id = rr.role_id)LEFT JOIN shiro_group_user gu ON (gu.group_id = gr.group_id);2.4.1.3. 视图view_shiro_user_resource的表格清单名称描述shiro_resource系统资源表shiro_role_resource系统角色与资源关系表shiro_user_role系统用户与角色关系表名称描
35、述ID资源编号TYPE资源类型resource系统资源priority优先级icon图标parentid父节点编号NAME资源名称css样式target打开方式is_out是否删除user_id用户编号group_id组编号2.4.1.4. 视图view_shiro_user_resource的视图列清单2.4.2. 视图view_shiro_user_role_permission2.4.2.1. 视图view_shiro_user_role_permission的描述名称view_shiro_user_role_permission描述查询用户所关联角色的权限2.4.2.2. 视图view
36、_shiro_user_role_permission的SQL查询SELECT pr.id, pr.name, pr.type, pr.parent_id,pr.permission, pr.priority,pr.role_id ,gsur.user_idFROM (SELECT p.id, p.name, p.type, p.parent_id,p.permission, p.priority,rp.role_id FROM shiro_permission p ,shiro_role_permission rp where p.id=rp.permission_idUNION allSE
37、LECT p.id, p.name, p.type, p.parent_id,p.permission,p.priority,srr.role_id FROM shiro_permission p , shiro_resource_permission srp,shiro_role_resource srrwhere srp.permission_id=p.id and srr.resource_id=srp.resource_id )pr ,(select gr.role_id,gu.user_id from shiro_group_role gr,shiro_group_user guwh
38、ere gr.group_id=gu.group_id UNION allSELECT ur.role_id,ur.user_id from shiro_user_role ur) gsur where pr.role_id=gsur.role_id2.4.2.3. 视图view_shiro_user_resource的表格清单名称描述shiro_permission系统权限表shiro_role_resource系统角色与资源关系表shiro_resource_permission系统资源与权限关系表shiro_group_role系统组与角色关系表shiro_group_user系统组与用
39、户关系表shiro_user_role系统用户与角色表2.4.2.4. 视图view_shiro_user_role_permission的视图列清单名称描述id权限编号name权限名称type权限类型parent_id父节点编号permission系统权限priority优先级role_id角色编号user_id用户编号2.5. 序列清单2.5.1. 序列SHIRO_USER_ID_SEQ描述:系统用户表主键序列。2.5.2. 序列SHIRO_ROLE_ID_SEQ描述:系统角色表主键序列。2.5.3. 序列SHIRO_GROUP_ID_SEQ描述:系统组表主键序列。2.5.4. 序列SHIRO_RESOURCE_ID_SEQ描述:系统资源表主键序列。2.5.5. 序列SHIRO_PERMISSION_ID_SEQ描述:系统权限表主键序列。2.5.6. 序列SHIRO_LINECESE_ID_SEQ描述:系统许可证表主键序列。2.5.7. 序列SHIRO_RSA_KEYS_ID_SEQ描述:系统非对称加密秘钥表主键序列。2.5.8. 序列SHIRO_MACHINE_BINDING_ID_SEQ描述:系统机器绑定表主键序列。3. 配置手册4. 系统引入工程模板
限制150内