【发布时间】:2011-08-16 16:55:52
【问题描述】:
有人告诉我,在 PHP 包含中建立数据库连接是不安全的。例如,如果我有一个登录页面并在具有数据库连接的页面顶部添加一个“include('process.php')”,这是不安全的吗?
【问题讨论】:
-
使用包含本身并没有什么不安全的地方,但如果代码本身不安全,也许您可以展示您的代码并获得答案。
标签: php mysql database login include
有人告诉我,在 PHP 包含中建立数据库连接是不安全的。例如,如果我有一个登录页面并在具有数据库连接的页面顶部添加一个“include('process.php')”,这是不安全的吗?
【问题讨论】:
标签: php mysql database login include
例如,如果我有一个登录页面并在具有数据库连接的页面顶部添加“include('process.php')”,这是不安全的吗?
没有。
也许告诉你这件事的人在谈论其他事情——比如使用来自 GET 参数的动态值包含文件,或者使用远程 http:// 包含,或者正如 @AlienWebguy 提到的那样,将密码包含在网络根。但是使用包含本身并不是不安全的。
【讨论】:
如果您将密码按字面意思存储在 PHP 文件中,这只是不安全的。它们应该在 Web 根目录之外声明。话虽如此,缺乏安全性并不是因为使用了include() 函数。
【讨论】:
就其本身而言,不,它不是不安全的。它是如何在 include 中实现的当然是另一回事了。
【讨论】:
这就是我一直这样做的方式。我确保包含在具有开放权限的不同目录中,并且您写入的目录具有锁定权限。希望这是有道理的。
【讨论】:
这个问题太宽泛了,无法从任何人那里得到好的答案。简短的回答是否定的,包含连接到数据库的文件本身并没有什么不安全的地方。但是,如果您编写的代码没有正确编写,那么是的,这样做可能是不安全的。
【讨论】:
由于使用“include('process.php')”与将“process.php”粘贴到另一个文件的代码中完全相同,因此这本身不应该是一个安全问题。不安全性可能存在于您的代码中,而不是您使用“包含”的事实。事实上,由于重用,它可能会提高代码的安全性。
【讨论】: