防止用户访问表中其他用户数据的最佳解决方案是什么?在系统授予用户访问表的情况下,什么阻止用户发送另一个行标识符并获取另一个用户数据?我认为我正在寻找的是行级身份验证。
如果我重新构想一个问题:系统如何知道它所属的行?
我可以想象一个解决方案,在其中命名数据,但是这意味着我必须在每个表中存储一个无法猜测的字符串,该字符串可以标识用户。
或者作为另一种选择,我可以用无法猜测的标识符替换id(主键),这也可能会带来问题。
有人可以引导我朝正确的方向吗?
答案 0 :(得分:0)
这实际上取决于您在做什么,应用程序中的身份验证起着重要作用,并且您提供身份验证的方式因情况而异。在客户端(前端)的后端体系结构中,只有后端才能与数据库竞争,因此您可以将客户端身份验证放在后端中。您还可以要求对数据库进行查询的某些特权,例如可以说普通用户只能执行读取查询。这里的链接知道如何在mysql mysql permissions中设置一些特权。您可以混合使用所有这些技术,因此开始考虑要管理什么以及敏感数据是什么。