-1

如果我将一组登录凭据存储在我的服务器根目录中,如果我只是将其存储在 PHP 文件中,那么不对其进行哈希处理是否存在任何安全风险?

$user = 'user';
$password = 'password';

我将登录凭据存储到我网站上具有锁定内容的页面,用户必须单击链接才能接收,以防您想知道。当用户登录时,我可以像这样授权登录,对吗?

include('../logininfo.php');
if ($_POST['user'] == $user) {
//...etc

这种方法有问题吗?

4

2 回答 2

8

是的,您应该避免这样做。有一种可能性(我根据经验说话)您的虚拟主机可能会搞砸并开始以纯文本形式提供 PHP 文件,而不是执行它们。

您应该将凭证文件放在您的 Web 根目录之外。您仍然可以包含它,但它不会通过浏览器提供。

如果您位于不允许您在 Web 根目录之外访问的共享虚拟主机上,请将凭证文件放在它自己的目录中,并使用.htaccess文件阻止对该目录的访问。有关执行此操作的步骤,请参见此处:拒绝直接访问 PHP 文件

您应该使用 MySQL 数据库来存储用户名和散列密码的事实超出了此答案的范围。我会假设你有充分的理由去做你正在做的事情。

于 2012-06-06T07:26:26.307 回答
2

只要没有人可以访问您的服务器,我认为没有任何风险。但我还是建议你散列你的密码!

于 2012-06-06T07:27:13.500 回答