我正在尝试为RBAC设计一个数据库架构,并且希望能够创建“部门”和“位置”。职位将扩展部门的一般特权。我是否应该只创建一个同时包含职位和部门的“角色”表?还是我应该创建3个表:职位,部门和角色,而职位和部门表具有角色表的外键?提前感谢您对大家的帮助!干杯。
最佳答案
我在尝试定制RBAC实现时的经验如下:
一旦有了RBAC实现,就可以将其建模为几乎任何业务领域,例如您提到的“部门”。
只是请记住,这还不是全部都是完美的……我已经从实际的RBAC文献中进行了增强/修改/派生,以便添加自定义功能,增强性能等。
我已经有一段时间没有对此进行研究了,所以我希望我在以下方面是正确的:
为了获得更大的功能,您可以实现约束以应用大量的各种约束。
使用此框架,您应该能够映射:
关于mysql - 具有多个角色级别的RBAC的数据库模式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7329150/