我正在开发一个允许版主编辑用户信息的应用程序。所以,目前,我有类似的 URL
http://xxx.xxx/user/1/edit
http://xxx.xxx/user/2/edit
我在这里有点担心,因为我直接从数据库中公开用户表主键(id)。我只是从 URL 中获取 id(例如:从上面的 URL 中获取 1 和 2),使用 ID 查询数据库并获取用户信息(当然,我清理了输入,即来自 URL 的 ID)。
请注意:
我正在验证每个请求以检查版主是否有权编辑该用户
这就是我正在做的事情。这安全吗?如果没有,我应该怎么做?
我可以想到一种替代方法,即为带有 25 个字符键的用户表设置一个单独的列,并使用 URL 中的键并使用这些键查询数据库
但,
- 它有什么区别?(因为密钥现在暴露了)
- 按主键查询比其他列更快产生结果