2

假设我正在建立一个像 stackoverflow 这样的问答网站。我的网站有以下主要特点:

帖子:帖子可以是问题或答案

个人资料:用户的个人资料

私信:存储用户的私信

……

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

在此处输入图像描述

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

(我已阅读Need some advice on my own Role Based Access Control (RBAC),但似乎无法解决我的问题)

4

1 回答 1

1

我已经在我当前的 struts2-project 中实现了 RBAC。RBAC包含 3 件事。用户、角色和权限。

关系如下:

Role-Permission: M-M
User-Role:M-M

看,关系是这样的,因为如果假设你定义了一个角色 ADMINISTRATOR,那么它将需要像 CAN_READ、CAN_WRITE、CAN_EXECUTE 等这样的 PERMISSIONS。您还想定义具有上述权限组合的角色,并且您还想创建具有某种角色组合的用户。前任:

    READER is role having permission CAN_READ.
    WRITER is role having permission CAN_WRITE.
    You can now have user with role READER & WRITER
于 2013-01-07T06:20:20.970 回答