安全登录的最佳解决方案是什么?

时间:2013-01-30 14:11:13

标签: cookies login system

PHP 我的网站差不多完成了,但是我遇到了一些安全方面的问题。实际上,我还没有遇到问题,但我需要预防。例如,登录系统,我正在使用cookie / session。正如人们在这里回答的那样,饼干很容易被克服,而且它很有价值。

登录系统的最佳方式是什么,包括密码和数据安全性?

另外,我正在使用cookie来写帖子上的用户名。例如。 (假装登录成功)

$Cookie = $_COOKIE['username'];
$Cookie = $FetchUserNameFromDatabase;

//Then, on posts to write the name of the user, from the cookie.
$DoPost = "INSERT INTO posts (username, message) VALUES ($Cookie, $AnyMessage)";

这是从cookie值在帖子上写用户名的最佳方式(自登录后,用户名保存在cookie中)?

如果不,最好的方法是什么?

先谢谢。

@EDIT

我忘了问。另外,防止人们做出大量评论(群发垃圾邮件)的最佳方法是什么?例如,我做一个评论(或投票,或其他),并且工作正常。然后,我做了另一个评论,它阻止了我一段时间,我不能再次评论,直到这个时间到期。最好的方法是什么,或者至少是哪些主要网站/论坛用来阻止它?

再次感谢。

2 个答案:

答案 0 :(得分:0)

为什么不使用会话ID?我使用https连接实现登录,然后分配一个sessionid,用于根据您的数据库识别用户。如需进一步参考,您甚至不再需要安全连接。

如果您想要识别帖子,只需使用类似“SELECT username FROM users WHERE sessid =”的内容。 SESSION_ID()

答案 1 :(得分:0)

从观点来看,当您执行不会更改应用程序状态的操作时,您应该只使用cookie信息;比如在页面顶部显示用户名。

但是,在每个场景中,您的应用程序都在更改其状态,例如添加新的POST(在您的示例中),您肯定不能信任客户端cookie。

要回答“最好的方法”,这取决于您所依赖的技术。

编辑:

为了防止大量垃圾邮件,您应该使用cookie信息和请求信息,如IP地址。