首頁  >  文章  >  後端開發  >  在修改资料的模块中把用户 ID 放在 type="hidden" 的 input 里面是否不安全?

在修改资料的模块中把用户 ID 放在 type="hidden" 的 input 里面是否不安全?

WBOY
WBOY原創
2016-06-06 16:44:541107瀏覽

这样是不是特别不安全如果不放在这里面应该放在哪里,哪些大网站在做修改或删除的时候哪些where条件都放在哪里了?

回复内容:

那你后面修改数据时是不是依赖用户这次提交的这个 id?如果我作为用户随便填一个别人的 id 提交,那他的资料是不是被我改掉了?敏感数据用 session 机制会更好一点,用户端只存一个 session id 。 我一般都是靠cookie辨认用户。。。 根本不用传。

如果你系统当前用户是谁都不知道,系统怎么调出原来的资料放到表单中供用户修改的? 这不是 id 放哪里的问题,而是后端权限处理的问题,如果后端权限处理得当,即便前端如何伪造请求也没有问题。 像这种用session 非要隐藏,那就再再写一个,两者建立一个算法关系,服务器端把算法关系做比较,然后通过在做处理,但是也是不安全的,算法过于简单,很容易被攻破,总之,不要相信客户端的一切数据源 你们怎么看 永远不要相信客户端的输入…… 1. 你打算修改当前登录用户的资料,那么用户id不需要传递,一般考虑从session中获取,登录的时候将id保存到session,编辑的时候从session读取。
2. 当前用户是管理员?管理员修改其他用户的资料?这样的话,通过hidden input传递过来的ID,需要在后端进行权限判断,判断当前用户是否有权限修改传递过来的用户id。 可以用hashids
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn