我创建了一个论坛,该论坛在登录时使用 PHP 会话来确定用户 ID,并使用 cookie 来进行日志登录。
我想我有两个问题:
- 这是最好/最安全的方法吗?
- 可以使用javascript通过地址栏手动添加cookie,这是一个巨大的安全风险。有没有办法解决?
Thanks!
首先,确保您使用的是 https 而不是 http。这将防止您的流量被嗅探和利用。
其次,生成尽可能随机的值以用作 cookie 中的标记。这就是许多大型网站进行用户跟踪的方式。在服务器端有一个用户的令牌映射来跟踪身份。请记住:来自客户端的任何内容都是不可信的并且可能被篡改。
第三,使用HMAC https://en.wikipedia.org/wiki/Hash-based_message_authentication_code使篡改变得更加困难。您不希望用户能够暴力破解其他令牌。
EDIT:
当您构建此系统时,您可能会发现这些其他问题/答案很有帮助:
有关创建和使用令牌的详细信息(不一定是适用的 REST 服务):REST Web 服务身份验证令牌实施 https://stackoverflow.com/questions/15490265/rest-web-service-authentication-token-implementation/15490642#15490642
创建好的令牌(不要使用 microtime):使用 microtime() 生成密码重置令牌是不好的做法 https://stackoverflow.com/questions/15527706/is-using-microtime-to-generate-password-reset-tokens-bad-practice/15530476#15530476
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)