php - 非常精细的用户权限

时间:2013-02-25 08:37:34

标签: php privileges

我目前正在为多个用户构建一个应用程序,并且已经获得了用户权限部分。

该应用程序包含大约20个子菜单项,每个用户都应根据用户权限授予/拒绝每个用户访问权限。

这意味着用户A可以访问子菜单1,4和21,用户B可以访问子菜单2,3,9,11,20等

这意味着将每一个组合都变成用户角色是不可能的,所以我想到了一个简单的解决方案。

我的第一个想法是将访问级别保存为字符串。

这样,我可以在该字符串中使用一个字符串索引来测试每个子菜单。

虽然这可能有用,但我会说它会变得非常快,所以我的问题是。

解决此问题的最佳方法是什么?我正在寻找可维护和直观的东西,而不需要数据库上有数百万个新表。

提前致谢!

1 个答案:

答案 0 :(得分:1)

我可能在这里忽略了这一点,但是,每个子菜单都不能有ID,然后在ID和用户ID之间有一个连接表来确定访问权限,你可以和该连接表的另一列用于访问级别(读取 - 只有,编辑,管理员等)。

根据所需的性能,您可以在第一次访问请求后为用户缓存该响应,或者您可以在每个子菜单请求中查找它。

相关问题