0

我正在寻找有关使用 cookie 为网站创建登录页面的简短教程。

每个用户都有一个username和一个password

我应该在 cookie 中同时保存 theusername和 the吗?password还是username可能就足够了?

恶意用户能否以某种方式窃取这些 cookie 并通过授权?

4

3 回答 3

2

将密码存储在 cookie 中不是一个好主意。如果您只存储一个用户名,那么您的系统基本上是完全不安全的。请记住,客户端可以完全控制它发送到服务器的 cookie 的内容。它可以发送它想要的任何用户名。您应该为特定会话创建一个授权令牌(可能具有与之关联的到期时间)并将其存储在 cookie 中。为防止 cookie 被篡改,您应该在服务器上对其进行签名(并加密)并验证签名。

也就是说,正确地做到这一点并不是一件容易的事。不要重新发明轮子。使用您的平台提供的身份验证机制。

于 2010-10-11T04:28:37.540 回答
0

在 PHP 中有很多方法可以进行身份​​验证。只需谷歌一个 http://www.developertutorials.com/scripts/script-details/307067.php

于 2010-10-11T04:47:51.850 回答
0

您将希望将用户的密码存储在数据库中,并以某种方式对其进行混淆。PHP 有一个名为 md5() 的内置函数。

这是 php.net 上的指南,可帮助您完成。

http://php.net/manual/en/features.http-auth.php

如果您在掌握这些概念时遇到困难,那么我建议您使用 php 框架。我选择的框架是 cakePHP,它使认证之类的东西变得轻而易举(另一个顶级框架是 Code Igniter)。

于 2010-10-11T04:57:32.310 回答