2

我创建了一个论坛,它在登录时使用 PHP 会话来确定用户 ID,并使用 cookie 进行登录。

我想我有两个问题:

  1. 这是最好/最安全的方法吗?
  2. Cookies可以通过javascript的地址栏手动添加,存在巨大的安全隐患。有没有办法解决?

谢谢!

4

1 回答 1

3

首先,确保您使用的是 https 而不是 http。这将防止您的流量被嗅探和利用。

其次,生成尽可能随机的值以用作 cookie 中的标记。这就是有多少大型网站进行用户跟踪。在服务器端有一个令牌映射到用户,用于跟踪身份。请记住:来自客户端的任何内容都是不可信的,并且可能被篡改。

第三,使用HMAC使篡改更加困难。您不希望用户能够暴力破解其他令牌。

编辑:

在构建此系统时,您可能会发现这些其他 SO 问题/答案很有帮助:

  1. 关于创建和使用令牌的详细信息(不一定必须是适用的 REST 服务): REST Web 服务身份验证令牌实现

  2. 创建好的令牌(不要使用 microtime):使用 microtime() 生成密码重置令牌是不好的做法

于 2013-04-12T22:30:28.810 回答