【问题标题】:Where is the most secure place to put MySQL connection details for PHP在哪里放置 PHP 的 MySQL 连接详细信息最安全的地方
【发布时间】:2010-02-27 20:10:53
【问题描述】:

在通过 PHP 脚本连接时,将 MySQL 数据库连接详细信息放在哪里最安全?

$connection = mysql_connect($hostname, $username, $password);
if (!$connection) {die('Could not connect: ' . mysql_error());}
mysql_select_db($database, $connection);

我知道将它们直接放在查询数据库的脚本中不是一个好主意。但是,有人说您应该将连接详细信息放在单独的 PHP 脚本中,并包含该脚本以进行连接。

有没有更安全的地方放置连接细节?

【问题讨论】:

    标签: php mysql connection


    【解决方案1】:

    通常的做法是将它们放在一个单独的文件中,并将其放在 Web 根目录之外。详情请见this answer

    【讨论】:

      【解决方案2】:

      您可能希望将其放在不在 webapp 层次结构中的目录中,以防止浏览器有机会访问它。

      根据您的偏执程度,您可以编写一个位于防火墙后面的 Web 服务,并调用凭据,但这可能有点矫枉过正。

      如果我们了解您的架构会有所帮助,是否只是 php 脚本进入数据库,那么第一个建议是最好的,例如,如果您有防火墙,那么您将有更多选择。

      【讨论】:

        【解决方案3】:

        如果您的操作系统具有合理的安全功能,那么在哪里并不重要,只要文件属于具有最低可能权限的组即可。

        【讨论】:

          猜你喜欢
          • 2015-01-28
          • 2011-03-14
          • 2012-12-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-03-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多