如何保证数据库配置文件中的项目? [重复](How to secure database con

2019-07-20 03:44发布

这个问题已经在这里有一个答案:

  • 如何保证数据库的密码在PHP? 16个回答
  • 比配置文件中明文存储密码的MySQL更好的方法? 7个回答

我已经在PHP文件创建用于建立与数据库服务器的连接。 在这个文件中,我使用mysql_connect()函数参数的主机,用户名和我的数据库服务器的密码。

public class DatabaseConnect
{
function __construct()
{
    mysql_connect('localhost','username','password') or die('Could not connect to mysql server.');
    mysql_select_db('databasename');
}

}

现在,在这种情况下,用户名和密码给别人看到。

我发现固定值,即一种多方式mysql.default_usermysql.default_password 。 在这种情况下,我们要这样?

或者,我怎么能向别人保护我的价值观?

Answer 1:

你可以尝试把你的数据库凭据在单独的文件与适当的UNIX权限设置,例如644,然后包括你的脚本的顶部该文件。

configuration.php文件将是这样的:

<?php
define (DB_USER, "mysql_user");
define (DB_PASSWORD, "mysql_password");
define (DB_DATABASE, "database_name");
define (DB_HOST, "localhost");
?>

您的原始脚本将是这个样子:

require ("configuration.php");
public class DatabaseConnect
{
function __construct()
{
    mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die('Could not connect to MySQL server.');
    mysql_select_db(DB_DATABASE);
}

}


Answer 2:

现在,在这种情况下,用户名和密码给别人看到。

只有这些,那有你的源代码的访问权限。 这不应该是一个问题。 但是,如果你要分开代码和数据库的凭据,请确保配置文件位于Web根目录之外。



文章来源: How to secure database configuration file in project? [duplicate]