1

我在我的应用程序中使用 SQL,所以我创建了 php 站点来管理它。问题是所需mysqli_connect的密码是主服务器的密码(所有文件maneger,mysql等)。保护我的密码的最佳方法是什么(从应用程序发送或在 php 源文件中明确写下来)。其他建议?

4

2 回答 2

2

有很多方法,但一般来说:将其放在 webroot 之外的文件中,或者从外部无法读取的文件中。IE。一个被执行的 PHP 文件不会暴露它的源代码。

如果您使用的是 Apache,您可以将其存储在一个名为的文件中.htsomething,因为 Apache 默认阻止访问以.ht*

您可以将其存储在一个名为的文件中,并通过添加RewriteRulesecret.txt来阻止对它的访问。.htaccess

对于我的项目,我将设置存储在 webroot 之外的 JSON 文件中。这种方法的一个主要优点是其他应用程序,如部署或监控工具,可以读取并轻松生成此设置文件。而且它也很干净,你不能用 JSON 做任何编程。

于 2013-09-06T16:38:41.653 回答
0

首先:为您的应用程序创建一个新帐户,该帐户仅具有您的应用程序所需的权限!

第二:将文件放在系统上尽可能锁定的某个位置。你可以做一些事情来进一步混淆密码,但最终你会得到一个纯文本的东西,可以用来返回数据库凭据。所以要清楚:

  1. 使用具有运行应用程序所需的最低权限的数据库帐户。
  2. 尽可能管理保存密码的配置文件的安全性(只有运行服务的用户和管理员应该有权访问),将其保留在 webroot 之外。
  3. 刚刚刷新了另一个答案-@FritsVanCampen 的建议也已失效。
于 2013-09-06T16:43:51.800 回答