如何安全地存储和访问用户会话数据

时间:2013-09-27 12:33:47

标签: javascript php security architecture

我目前正在学习Web应用程序中的安全方面。

我的应用程序用于通过成功登录时创建的cookie来识别当前用户。它包含用户的ID。每次用户向数据库发出请求时,我的应用程序都会使用该ID来仅选择与此ID相关联的结果。

但是,据我所知,简单地更改cookie的值并因此可以访问其他用户的数据完全没问题。

我现在的问题是:我如何安全地存储这些数据并使其可用于PHP和Javascript?

我想到了HTML5 sessionStorage,但这也很容易受到攻击。

我的第二个想法是仅将PHP存储在$ _SESSION变量中,但是我无法通过Javascript访问它的值。

我觉得我无法理解如何创建安全且功能强大的用户管理系统的基本概念。

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

我只会在会话中存储用户ID数据。你为什么需要饼干? 要在JS和PHP之间进行通信,请使用ajax。最好的图书馆是jQuery

答案 1 :(得分:0)

简单的解决方案:

  1. 将userKey字段添加到数据库中。
  2. 当用户登录时,生成随机唯一字符串并将其保存在DB
  3. 将此字符串保存在cookie中。将用户ID保存在cookie中。
  4. 在下次访问时,从具有相应userKey和ID的数据库用户中进行选择。

    它有点安全,因为字符串是随机的,所以只有暴力助力。

    绳子更长 - 更难以暴力。

    解决方案很简单,可以通过使用ID加密,检查IP等进行升级。