我正在学习Apache Shiro,并发现了这篇文章:The New RBAC: Resource-Based Access Control。作者说:
“......如果您想的话,可以直接将行为(权限)分配给角色。从这个意义上说,您仍然拥有基于角色的访问控制安全策略 - 只是您会有一个明确的RBAC策略,而不是传统的隐式策略。”
“但这引出了一个问题 - 为什么要止步于角色?您可以直接将行为分配给用户,或组,或任何其他安全策略允许的对象。”
看起来作者更喜欢直接存储用户与权限之间的关系,而不是通过角色。
虽然这似乎简单明了,但我有一些问题:
“......如果您想的话,可以直接将行为(权限)分配给角色。从这个意义上说,您仍然拥有基于角色的访问控制安全策略 - 只是您会有一个明确的RBAC策略,而不是传统的隐式策略。”
“但这引出了一个问题 - 为什么要止步于角色?您可以直接将行为分配给用户,或组,或任何其他安全策略允许的对象。”
看起来作者更喜欢直接存储用户与权限之间的关系,而不是通过角色。
虽然这似乎简单明了,但我有一些问题:
- 它们之间有什么本质区别吗?
- 数据库模式。
user
role
user_role
如果我使用基于资源的访问控制,建立表格的正常做法是什么?