8

我正在开发一个使用基于角色的访问控制(RBAC)的通用用户管理系统,如果我无法区分操作表和权限表(在阅读了这么多文章之后)。

"一个主体可以有多个角色。一个角色可以有多个主体。一个角色可以有多个权限。一个权限可以分配给多个角色。一个操作可以分配多个权限。一个权限可以分配给多个操作。 "

en.wikipedia.org/wiki/Role-based_access_control

任何人都可以举一个简单的例子来区分它们吗?

4

3 回答 3

2

RBAC 标准不涉及操作,而仅涉及用户、角色和权限。我想您所指的操作是您正在使用的特定实现的一部分。它们可能是您的解决方案中实施资源的方式。

权限是执行/访问资源所需的。权限分配给角色,资源需要一组权限。

让我们以一个简单的收银管理系统为例。有许多用户(商店的员工)和许多角色,包括cashier operator. 该角色授予用户一项权限,scan items. 这种权限是操作所需要的item.scan(),也是操作所需要的item.cancel()

于 2012-12-10T11:17:47.947 回答
1

在 RBAC 中,权限是对象和操作之间的映射。

例如:

customer123 <--- 这是一个对象

读取、写入、更新、删除 <--- 这些是操作

这些是可能的权限:

customer123.read、customer123.write、customer123.update、customer123.delete

在 RBAC 中,权限随后被授予角色。所以一个角色可能是:

用户

并已被授予 customer123.read

另一个角色可能是:

管理员

已被授予权限 customer123.write、customer123.update

等等

于 2014-02-25T23:43:02.000 回答
0

权限 - 对资源访问模式的批准。
资源 - 需要受限访问的系统对象或操作。

于 2012-12-20T15:12:50.147 回答