在修改资料的模块中把用户 ID 放在 type=\"hidden\" 的 input 里面是否不安全
那你后面修改数据时是不是依赖用户这次提交的这个 id?如果我作为用户随便填一个别人的 id 提交,那他的资料是不是被我改掉了?敏感数据用 session 机制会更好一点,用户端只存一个 session id 。
■网友
我一般都是靠cookie辨认用户。。。
■网友
根本不用传。如果你系统当前用户是谁都不知道,系统怎么调出原来的资料放到表单中供用户修改的?
■网友
这不是 id 放哪里的问题,而是后端权限处理的问题,如果后端权限处理得当,即便前端如何伪造请求也没有问题。
■网友
像这种用session 非要隐藏,那就再再写一个,两者建立一个算法关系,服务器端把算法关系做比较,然后通过在做处理,但是也是不安全的,算法过于简单,很容易被攻破,总之,不要相信客户端的一切数据源 你们怎么看
■网友
永远不要相信客户端的输入……
■网友
显然不安全。我一般用加密Cookie。
■网友
1. 你打算修改当前登录用户的资料,那么用户id不需要传递,一般考虑从session中获取,登录的时候将id保存到session,编辑的时候从session读取。2. 当前用户是管理员?管理员修改其他用户的资料?这样的话,通过hidden input传递过来的ID,需要在后端进行权限判断,判断当前用户是否有权限修改传递过来的用户id。
■网友
可以用hashids
推荐阅读
- 怎样对别人的代码进行适当修改使他永远也找不到问题出在哪
- 为啥dropbox 分享占据所有分享人员的空间并让所有人拥有修改权限
- 姚安娜|任正非二女儿姚安娜个人资料照片 跳芭蕾近照曝光
- 哪些资料或者书籍能够帮助全面认识亚马逊公司的经营战略
- IPAD AIR的4G模块为啥这么大
- 银行存折在非户主本人的情况下怎样修改密码
- 为啥没有黑客修改支付宝余额
- 推荐一些商业模式、互联网商业模式相关的资料、书籍、网站
- 周星驰|赵本山最美女徒弟关婷娜资料介绍 关婷娜结婚了吗?
- 趣头条|有颜有料,面面俱到,让年轻人上头的CX-30