Web开发中关于权限管理设计的涉及到两个方面

Web开发中关于权限管理设计的涉及到两个方面

本公众号主要宣传Java技术、Web(html/js/ui)技术、数据库技术、Web项目开发经验、IT生活、IT热点,让有经验的人拥有更广的知识、更扎实的技能、更高的工资。 让一个零基础知识的人秒变大能手,让你的生活更加活跃和有趣。 点击上方蓝色字样,让您每天都能看到更多Java知识和资讯! 完全免费订阅,欢迎关注。

原来的

在Web开发中,权限管理的设计一般涉及两个方面:一是功能方面的权限设计;二是权限管理的设计。 二:资源方面的权限设计。 两者相比,权限在功能上的复用性更高。

1.关于权限:

阐明:

A。 user-用户角色-角色:可以构成用户角色权限管理子模块3D道具,即

b. Module-Module Permission-Permission:可以构成模块权限管理子模块。 注:这里的描述有些欠缺。 单独看模块部分,应该描述为模块-模块功能-功能更合适。

C。 将a、b与角色权限结合起来,可以形成按照功能模块粒度划分的用户-角色-权限的权限管理体系。

3、user-role-permission数据库中表关系说明:

角色权限表设计_角色权限表怎么设计_角色权限表设计方案

上述数据库表关系图中各表不涉及具体字段内容。 它具有的字段用于描述每个表之间的关系。

实体表:用户表、角色表、权限表、模块表;

中间表:用户角色、角色权限、模块权限表,用于解决多对多问题;

角色权限表:涉及角色的权限,这些权限源自模块权限,即与

关于角色权限表是用户-角色-权限系统的一个可扩展端口。 例如:角色权限可以和权限直接关联,也可以在两者之间添加其他针对特定场景的表。

4.数据库用例数据,使用用户-角色-权限系统

至此,用户、角色、权限的划分已经形成,可以根据实际需要对用户、角色、权限的管理程度进行简化或增加表格。

5、查询用户码400900500的权限

SELECT
    t_account.ACCCODE, t_account.ACCNAME,
    t_role.ROLECODE, t_role.ROLENAME,
    t_module_privilege.MODUELCODE,
  t_module.MODUELCODE, t_module.MODUELNAME,
    t_privilege.PRICODE, t_privilege.PRINAMEFROM
    t_account, t_account_role, t_role, t_role_privilege, t_module_privilege, t_module, t_privilegeWHERE
    t_account_role.ACCCODE=t_account.ACCCODE AND t_account_role.ROLECODE=t_role.ROLECODEAND
    t_account.ACCCODE="400900500"AND
    t_role_privilege.ROLECODE=t_role.ROLECODE   AND t_role_privilege.MPID=t_module_privilege.MPIDAND
    t_module_privilege.MODUELCODE=t_module.MODUELCODE AND t_module_privilege.PRICODE=t_privilege.PRICODE

通过上面的SQL语句可以查询到400900500个用户的权限。

角色权限表设计方案_角色权限表怎么设计_角色权限表设计

上面的查询只是解释了表之间的数据关联。 在实施和开发过程中避免使用此类查询。

用户、角色和权限的一个很好的参考例子是Oracle数据库的用户管理机制。 Web开发涉及到的问题较多,如管理用户、管理员、系统管理、模块访问权限、资源访问等。

关于具有用户角色权限管理程序的开发系统,请参见示例:。

点击底角阅读全文查看《hibernate关于Hibernate的一级和二级缓冲》

有人用微信聊天角色权限表设计游戏开发素材,有人在微信中学习、成长。 以下是2016年最热门的HOTIT公众号角色权限表设计,快来尝试以下新方法吧!


关注方式

★长按二维码,选择“识别图中二维码”进行关注。

角色权限表设计_角色权限表怎么设计_角色权限表设计方案

角色权限表怎么设计_角色权限表设计方案_角色权限表设计

文章来源:http://mp.weixin.qq.com/s?src=3×tamp=1695708765&ver=1&signature=-xukH61jqfHe9El8Nuc38C-sTTgtyeuXVn4ZpYD6DwqHY7AR7b4Vxl95rXQWZY1HLFiSFxppvDRnyjknUMLR1X-La0jF1YpNWHE9LsotekiIHpA-g*2EF*djUHbTcXbpE8yclIJYK9aAo7rzgCxHh5VTn-HK452ggDqG*b8ZKGA=