0

我对 PHP 比较陌生,所以请多多包涵。我创建了一个使用基本身份验证和 SSL(Apache 服务器)保护的网站。但是,这种情况并不安全,因为用户名和密码是以纯文本形式传输的。我考虑过摘要身份验证,但由于不相关的原因,这并不完全可行。

因此,我现在正在考虑对整个站点进行 SSL 加密(已经是这种情况),并使用基于 cookie 的机制进行会话身份验证。我已阅读并(我相信)了解如何使用 PHP 设置和取消设置 cookie 的基础知识,但我找不到一个很好的示例来说明如何实现安全登录机制。然而,这一定是一个非常常见的登录场景,因此我认为一些预制的登录页面可能已经可以用于轻松定制。

如果有人能指导我学习如何实现基于 cookie 的安全登录的分步教程,我将不胜感激!提前谢谢了!

4

2 回答 2

1

如果您为整个站点使用 SSL,则用户名和密码不会以纯文本形式传输,而是作为加密连接的一部分。

对于大多数 Web 应用程序来说,基本身份验证与 SSL 相结合是一种足够安全的设置。

于 2012-08-13T19:55:51.673 回答
1

这里有一些术语混淆。首先,您说通过 SSL 发送密码不安全是不正确的。其次,您将身份验证与授权混淆了。身份验证证明用户就是他所说的那个人。用户名和密码就是这样做的,所以这部分就完成了。此时,您为用户创建一个会话,其中包含他的身份和他可能承担的角色。会话通过 cookie 跨请求保留。然后,当他访问站点的某些部分时,您必须检查他的角色以查看它们是否与您定义为访问该区域所需的角色匹配。您可以通过 Apache 配置完成所有这些工作,而无需编写任何代码。

于 2012-08-13T23:30:22.950 回答