“功能权限”已经有成熟的 RBAC(Role Based Access Contrl 基于角色的访问控制)方案。
那么 “数据权限” 这部分有什么成熟的方案可以套用嘛?
希望可以满足这样的需求:
1、一套系统可供多家不同的公司使用。每家公司只能看到自己公司的数据。但是有个“超级公司”(自己,即开发系统的公司)可以看到所用公司的数据。
2、每家公司有自己的一套 角色、用户 权限,可以自行添加 用户,角色。但是有个“超级用户” 可以看到所有用户和角色。
现在想到是 增加一个“域”的概念( domain ),每个公司就是一个“域”。通过 登录的用户 id 去找到 关联的 “域”,然后获取相应的数据。
但是这样有一个上面的需求不能满足,就是不能做到 “超级管理域” 可以管理所有的用户。
因为是通过登录后用户 id 去 关联 域,那么 用户 和 域 的关系应该是 多对一, 不能是多对多,否则无法判断当前用户属于哪个域。
而一个 “超级管理域” 管理所有用户,又需要一个用户同时要属于他自己公司的域,和 “超级管理域” 。
大家有遇到过这样的需求吗,也不知道这样有没有描述清楚,,,
或者说 “超级管理域” 其实就是一个相当于电商的后台系统, 单独做一个后台系统去管理所有的用户,所有的数据这样。
大家有什么更好的思路吗?谢谢 :)
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.