Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 需要关于基于用户角色的设计的建议吗_Java_Database Design_Struts2 - Fatal编程技术网

Java 需要关于基于用户角色的设计的建议吗

Java 需要关于基于用户角色的设计的建议吗,java,database-design,struts2,Java,Database Design,Struts2,比如说,我正在建立一个像stackoverflow这样的问答网站。我的网站具有以下主要功能: Post:Post可以是问题或答案 配置文件:用户的个人配置文件 私人消息:存储用户的私人消息 我试图弄清楚如何在我的系统中设计用户角色。 我想到了: (每个用户只属于一个角色) 这样设计用户角色可以吗?如果没有,谁能给我一些建议? 我正在使用MySQL,Struts 2。在Struts 2中,是否有用于基于角色的访问控制(RBAC)的可用库 (我读过,但似乎没有解决我的问题)我已经在我当前的str

比如说,我正在建立一个像stackoverflow这样的问答网站。我的网站具有以下主要功能:

Post:Post可以是问题或答案

配置文件:用户的个人配置文件

私人消息:存储用户的私人消息

我试图弄清楚如何在我的系统中设计用户角色。 我想到了: (每个用户只属于一个角色)

这样设计用户角色可以吗?如果没有,谁能给我一些建议? 我正在使用MySQL,Struts 2。在Struts 2中,是否有用于基于角色的访问控制(RBAC)的可用库


(我读过,但似乎没有解决我的问题)

我已经在我当前的struts2项目中实现了RBAC。
RBAC
包含三个方面。用户、角色和权限

关系如下:

Role-Permission: M-M
User-Role:M-M
请看,这种关系是这样的,因为如果您定义了一个角色管理员,那么它将需要诸如CAN_READ、CAN_WRITE、CAN_EXECUTE…等权限。您还希望定义具有上述权限组合的角色,并且还希望创建具有某些角色组合的用户。 例:


谢谢你的回答。但我认为,如果用户A属于具有编辑权限的角色模式,那么用户A将拥有整个系统的编辑权限。在我的系统中,用户A可能对功能A具有编辑权限,但只能对功能B具有读取权限。然后,您需要以这种方式定义您的权限:读取、写入、读取、写入,并相应地分配角色:)。请参阅上面更宽、可扩展的范围,关系拟合良好。我已经在我当前的项目中实现了它,这是一个企业系统,有许多基于角色的场景。
    READER is role having permission CAN_READ.
    WRITER is role having permission CAN_WRITE.
    You can now have user with role READER & WRITER