数据库连接密码加密?
DB connect password encryption?
愚蠢的问题,但我以前只在 Xampp 中编写过数据库,所以黑客攻击不是问题...
我想连接到我的数据库并在网页上显示其中的数据。
$username = "user";
$password = "password???";
$hostname = "host.name";
//db connection
$dbhandle = mysql_connect($hostname, $username, $password)
or die("Can't connect");
echo "Connected to MySQL<br>";
我不太确定是否要在线公布我的数据库密码;我猜我可以用一些东西加密它(我以前只用过 md5,现在我发现这不是一个有效的方法)。
有人可以在这里发光吗?我已经搜索了一个小时,但似乎找不到太多内容。
您可以使用环境变量或只包含一个 config/constants 文件来执行此操作,然后您可以将您的配置设置与您的主要来源隔离开来。
环境变量
http://php.net/manual/en/function.getenv.php
Config/Constrains
<?php
// require 'constants.php'
define("DB_USER", "user");
define("DB_PASS", "password");
define("DB_NAME", "database");
http://php.net/manual/en/function.define.php
我不会加密你的数据库值。
以纯文本形式存储密码确实没有问题,因为 PHP 代码对用户不可见。除非存在安全漏洞,否则未经授权的数据库访问将是最小的问题,您真的不需要打扰。
但是,我强烈建议 unset()
不再需要包含敏感数据的变量。这消除了潜在信息泄露的风险,例如,不安全的模板呈现。
愚蠢的问题,但我以前只在 Xampp 中编写过数据库,所以黑客攻击不是问题...
我想连接到我的数据库并在网页上显示其中的数据。
$username = "user";
$password = "password???";
$hostname = "host.name";
//db connection
$dbhandle = mysql_connect($hostname, $username, $password)
or die("Can't connect");
echo "Connected to MySQL<br>";
我不太确定是否要在线公布我的数据库密码;我猜我可以用一些东西加密它(我以前只用过 md5,现在我发现这不是一个有效的方法)。
有人可以在这里发光吗?我已经搜索了一个小时,但似乎找不到太多内容。
您可以使用环境变量或只包含一个 config/constants 文件来执行此操作,然后您可以将您的配置设置与您的主要来源隔离开来。
环境变量
http://php.net/manual/en/function.getenv.php
Config/Constrains
<?php
// require 'constants.php'
define("DB_USER", "user");
define("DB_PASS", "password");
define("DB_NAME", "database");
http://php.net/manual/en/function.define.php
我不会加密你的数据库值。
以纯文本形式存储密码确实没有问题,因为 PHP 代码对用户不可见。除非存在安全漏洞,否则未经授权的数据库访问将是最小的问题,您真的不需要打扰。
但是,我强烈建议 unset()
不再需要包含敏感数据的变量。这消除了潜在信息泄露的风险,例如,不安全的模板呈现。