是否安全检查用户是否使用cookie登录?

art*_*rou 0 php security

在我正在开发的网站上,我正在检查用户是否已登录,如果已设置cookie.问题是我正在将这些信息用于数据库上的某些请求,并允许他在网站上执行某些任务.虽然,我想到如果用户编辑其cookie,他可能能够成为其他人(编辑它的用户名/ id).那么,有没有办法保护它或我必须使用会话?

Que*_*tin 5

是的,你可以使用cookies.您只需确保cookie提供可用于对用户进行身份验证的数据,而不是表示用户已通过身份验证的令牌.

坏饼干:

username=foo,logged_in=true
Run Code Online (Sandbox Code Playgroud)

好饼干:

token=uifhjrjf4093jf3904j90j390kf934j8438j0493jf9034
Run Code Online (Sandbox Code Playgroud)

然后将身份验证数据与服务器上的数据存储区进行比较.

我必须使用会话吗?

会话是一种临时存储用户(可能会或可能不会通过身份验证)的方法.它们是一种快速简便的方法来解决部分问题,而不是应该导致必须做出反应的事情:(.

大多数会话库使用cookie来存储令牌,该令牌将与会话相关联的数据集合链接到会话所属的浏览器.