【发布时间】:2015-11-02 17:46:46
【问题描述】:
假设我有一张这样的桌子:
itemID | PriceA | PriceB | PriceC | other columns...
1 | 8.0 | 6.95 | 0.5 | ...
2 | 5.9 | 6.97 | 4.1 | ...
3 | 0.2 | 1.12 | 3.5 | ...
我希望用户登录,但只能看到某些行和一个价格列。例如,用户 Susie 只能看到第 1 行和第 2 行,并且只能看到这些商品的价格 B。用户 Hanna 可以看到价格 A 的第 2 行和第 3 行。
也许它不需要是数据库级别的安全性。基本上,用户将在网站(Wordpress)上登录,并在登录后以特定价格看到某些产品。
同样,多个用户可以访问任何给定的行或列。这不是一对一的关系。我认为这与典型的行级 mysql 安全性不同。
我有两个问题:
这应该是数据库级别的安全性还是其他的? PHP代码?
关于如何实现此功能的任何建议?
【问题讨论】:
-
php 级别。如果您想要数据库内的安全性,那么您的每个用户都必须拥有一个数据库级别的登录帐户,这简直是危险/愚蠢/愚蠢。
-
如果用户数是20,还是不行吗?
-
没有。您永远不会授予最终用户直接访问数据库的权限。
-
check Dialect 一个 SQL 构建框架,支持可编程(软)自定义视图(ps 我是作者)
-
mysql 无论如何都没有行级权限支持,所以你必须在你的应用程序中至少实现一些安全性,所以为什么不在那里实现所有东西,而不是在多个应用程序中涂抹东西系统?
标签: php mysql database wordpress