为了账号安全,请及时绑定邮箱和手机立即绑定

编写用户发帖功能,如何避免伪造他人发帖的问题?

编写用户发帖功能,如何避免伪造他人发帖的问题?

慕婉清6462132 2019-04-23 15:18:49
初学web编程,有些问题不是很理解:假设用户已登录,然后发帖。在发帖表单中,我有一个隐藏的表单,value是当前登录用户的id,用户提交后该id将作为作者的字段写入数据库。但是,当用户将这段id改成其他用户的id,一样可以成功写入,这样帖子就变成别人发布的了。于是,我就想把当前用户的id保存在cookie里,不知道这种方法是否可行?如果按照上面的方法,假设用户修改了cookie的id,那岂不是也可以伪造他人发帖了?
查看完整描述

2 回答

?
繁花不似锦

TA贡献1851条经验 获得超4个赞

做登录就别用cookie了,用session吧,cookie存在客户端,可以被任意修改,session存在服务器端,相对安全。
web登录通常在用户登录后将userid写到session里面,在用户发帖提交后,直接从session取出userid存入数据库。
永远不要相信用户输入的数据。
                            
查看完整回答
反对 回复 2019-04-23
?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

登录成功后多存一个$token1到cookie中,这个$token1是根据用户信息(比如帐号、密码、useragent等)生成的加密字符串之后
根据cookie中的uid在数据库中查出用户生成$token2
用cookie中存的登陆时生成$token1与$token2对比,如果对比相等就证明可信了。
                            
查看完整回答
反对 回复 2019-04-23
  • 2 回答
  • 0 关注
  • 347 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信